普中开源电子分享网

 找回密码
 立即注册
搜索
查看: 5531|回复: 2

各位帮忙看看

 关闭 [复制链接]

3

主题

7

帖子

35

积分

新手上路

Rank: 1

积分
35
QQ
发表于 2016-1-31 23:10:29 | 显示全部楼层 |阅读模式
各位帮忙看看,为什么按键1的时候,不显示1,其他正常。
#include<reg51.h>
#define led P2
#define key P3
unsigned int i;
void delay(unsigned int n);
void main()
{
     led=0xff;
         while(1)
         {
            if(key==0xfe)
         {
                 delay(10);
                if(key==0xfe)
                {
                  led=0x9f;
                  while((i<50)&&(key==0xfe))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0xfd)
         {
                 delay(10);
                if(key==0xfd)
                {
                  led=0x25;
                  while((i<50)&&(key==0xfd))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0xfb)
         {
                 delay(10);
                if(key==0xfb)
                {
                  led=0x0d;
                  while((i<50)&&(key==0xfb))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0xf7)
         {
                 delay(10);
                if(key==0xf7)
                {
                  led=0x99;
                  while((i<50)&&(key==0xf7))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0xef)
         {
                 delay(10);
                if(key==0xef)
                {
                  led=0x49;
                  while((i<50)&&(key==0xef))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0xdf)
         {
                 delay(10);
                if(key==0xdf)
                {
                  led=0x41;
                  while((i<50)&&(key==0xdf))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0xbf)
         {
                 delay(10);
                if(key==0xbf)
                {
                  led=0x1f;
                  while((i<50)&&(key==0xbf))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0x7f)
         {
                 delay(10);
                if(key==0x7f)
                {
                  led=0x01;
                  while((i<50)&&(key==0x7f))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0xfe)
         {
                 delay(10);
                if(key==0xfe)
                {
                  led=0x60;
                  while((i<50)&&(key==0xfe))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0xfe)
         {
                 delay(10);
                if(key==0xfe)
                {
                  led=0x60;
                  while((i<50)&&(key==0xfe))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
         if(key==0xfe)
         {
                 delay(10);
                if(key==0xfe)
                {
                  led=0x60;
                  while((i<50)&&(key==0xfe))
                  {
                          delay(10);
                        i++;
                  }
                  i=0;
                }
         }
        }   
}
void delay(unsigned int n)
{
  unsigned char j;
  unsigned int i;
  for(i=0;i<n;i++)
  {
          for(j=0;j<200;j++);
        for(j=0;j<102;j++);
  }
}
回复

使用道具 举报

0

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2016-2-13 14:46:41 | 显示全部楼层
首先确认按键有没有坏!是不是接触良好!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|普中开源电子分享网 粤ICP备16123577号-2

GMT+8, 2024-5-10 14:38 , Processed in 0.100726 second(s), 31 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表