void main() { init(); while(1) { if(tt0!=2) //此处为显示秒表///////其实这里是很冒险的也是很容易出问题的,初学者很容易将可以“片”判断条件不用,而用“点”判断条件,如这里,如果tt0>=2呢?这也不是不可能,如tt0刚刚加到2,而这时按键1动作(按键除抖延时还是很长的,在这段时间tt0会在T0中断里不断增加),这样,显示一直在运行,而tt0迟迟回不到“0”,就会陷入死循环了 ,将这里改成if(tt0<2)看看
{ display(num); } else { tt0=0; num++; }
[此贴子已经被作者于2010-9-11 19:58:54编辑过]
|