![]() |
發(fā)布時間: 2022-12-16 21:28
正文摘要:在外部中斷停止定時器后,后面代碼就沒有反應(yīng)了。不運行了,什么問題? 能停止,但在中斷代碼里再也不能啟動定時器了 單片機源程序如下: void Int4() interrupt 16 ... |
不要在中斷中,做這種耗時的活 Delayms(1000); |
下面主程序,我按一下按鈕,可以運行有動作的。上面是外部中斷和定時器不能在一起使用嗎? void main() { Timer0Init();// 初始化定時器中斷0 Int4Init(); // 初始化外部中斷4 EN=0; MS1=1; MS2=0; MS3=0; while(1) { if(KEY1==0) //判斷是否按下鍵盤 { Delayms(10); //延時,軟件去干擾 if(KEY1==0) //確認按鍵按下 { MS1=1; MS2=0; Dir=1;//反轉(zhuǎn) Delayms(3000); TR0=0;//停止 } while(KEY1==0);//按鍵鎖定,每按一次count只加1. } } } |
Powered by 單片機教程網(wǎng)