void onesecond()
{
uint8 counter=0,k=2;
TMOD=0x10;TH1=0xFF;TL1=0xFC;
TCON=0x40;
while(k==2)
{ if(TF1==1){TF1=0;TH1=0xFF;TL1=0xFC;counter++; if(counter==20){k=1;} }
} m=2;
}上面是个延迟程序,为什么会陷入死循环?且检测窗口的变量值(counter,k)都是0
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
if(counter==20)
改成
if(counter>=20)
试试吧。我没仔细看程序。扫一眼。。。
一周热门 更多>