51单片机的按键控制小灯亮灭的问题(程序类型:c语言)怎么解决?
#include#defineuintunsignedintsbitLED=P1^0;sbitKEY1=P1^2;voiddelay(uint);voidmain(void){LED=1;//初始化LED关闭KEY1=1;//设置KEY1为高电平 while(1) { if (!KEY1)//按下检测键{LED=~LED;/*LED反转,此时LED=0,灯亮 手术。当松开按键时,KEY1=1。
如果不满足if语句,则不会进入循环,LED会继续保持当前状态,即此时检测到LED=0,会进入循环,LED会反转为让LED=0,灯亮。
*/delay(500);/*这里的延时保证了延时程序过程中有连续两次按键,不执行其他程序,这样小灯不受影响。
*/}}}voiddelay(uintz)//延迟函数{uintx,y;for(x=85;x>0;x--)for(y=z;y>0;y--);}可以是下载到单片机进行检查。