怎么用51单片机实现用一个键盘控制3个LED灯

2019-07-15 20:36发布

按第一次,第一个亮,第二次第二个亮,第三次第三个亮,第四次又第一个亮。用c语言实现p1.0接键盘,1,2,3接三个led灯,共阳接法。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
零度浪子
1楼-- · 2019-07-16 15:22
HXHNTTXLLA 发表于 2014-3-16 22:47
sbit KEY=P1^0;
sbit LED0= P1^1;
sbit LED1= P1^2;

了然,我试试,不过程序最后变成控制两个灯了
ST_Lover
2楼-- · 2019-07-16 17:17
你是相当得水啊

零度浪子
3楼-- · 2019-07-16 18:41
 精彩回答 2  元偷偷看……
蓝色的树叶
4楼-- · 2019-07-16 23:55
零度浪子 发表于 2014-3-17 07:36
了然,我试试,不过程序最后变成控制两个灯了

if(led_flag==3)
                led_flag=1;
        }
这段程序中,将ed_flag==3改成flag==4。
小菜头9
5楼-- · 2019-07-17 02:39
hao   taihaole         
学中
6楼-- · 2019-07-17 03:07

#include<reg52.h>     
#define uchar unsigned char
sbit key1=P3^4;
uchar num;
void delay(uchar a)
{
        uchar i,j;
    for(i=a;i>0;i++)
       for(j=110;j>0;j++);
}

void led_display()
{
        if(key1==0)
      {  
         delay(5);
         if(key1==0)
                   {
                                 while(!key1);
             delay(5);
             while(!key1);
                  num++;
                              if(num==4)
                  num=1;  
          }         
          switch(num)
                         {
                                 case 1:P1=0xfe;break;
                                 case 2:P1=0xfd;break;
                                 case 3:P1=0xfb;break;
             default:break;
                         }
      }       
}

void main()
{
    num=0;
    while(1)
     {
       led_display();
     }
}

一周热门 更多>