sbit key4=P3^7;//key4是按键,按下S4键一次,利用定时器TO功能使数码管数值开始自动每秒加1,再次按下S4键,数值停止加1,保持显示原数 那么下面的函数是怎么执行的呢。 if(key4==0)//检测按键 { delayms(10);//按键消抖 if(key4==0) { while(!key4);//不明白while在这个地方的用意,当key4=0时,while(!key4)为真,反之? TR0=~TR0;//启动或停止定时器0 这个地方和key4按键有关系吗?为什么不直接是当按键按下,TR0=1;当松开按键key4 TR0=0; } } } 程序执行的逻辑关系不明白啊,请大神解惑,谢谢
|