#include<reg52.h>
sbit key=P3^2;
sbit LED=P1^0;
unsigned int i,j;
void delay(unsigned int z)
{
for(i=10;i>0;i--)
for(j=z;j>0;j--);
}
void main()
{
key=1;
while(1)
{
LED=1;
if(!key)
{
delay(20);
if(!key)
LED=~LED;
while(1);
}
}
}
为啥独立按键按下后再释放时邓不熄灭了?
我的LED=1表示是熄灭状态,还有那个while(1)既然表示死循环,那么我按下后即使松开,它是不是在继续执行while循环啊?我觉得while循环它是跳不出去的。
追答void main()
{
key=1;
while(1)
{
LED=1;
if(!key)
{
delay(20);
if(!key)
LED=~LED;
while(1);//你的程序跑到这里 就卡在这里了 一直停在这里
}
}
}