我们知道了单片机控制小灯的用法,接下来我们开始加入按键的应用。

如果是几个按键我们可以直接接到IO口,如果按键很多我们就需要矩阵按键了,先了解一下3个按键,第一个控制关闭全部,第二个控制开启4个小灯,第三个控制全部打开小灯。

c51单片机菜单(C51单片机13按键)(1)

#include<reg52.h>

sbit kaig1=P1^0; // kaig = 开关

sbit kaig2=P1^1;

sbit kaig3=P1^2;

void main ()

{

while(1)

{

if(kaig1==0)

{

yanshi(); // yanshi=延时

if( kaig1==0)

{ P2=0xff; }

}

else if (kaig2==0)

{

yanshi();

if( kaig2==0)

{ P2=0xf0; }

}

else if (kaig2==0)

{

yanshi();

if( kaig2==0)

{ P2=0x00; }

}

}

}

void yanshi()

{

unsigned int i=1000;

while(i--) ;

}

这个程序的执行过程先判断P1.0口按下了吗?如果按下,我延时一会再看一下是不是按下,然后去执行操作,

,