|
發(fā)布時間: 2019-10-6 10:36
正文摘要:我用兩個按鍵控制LED,一個K1控制亮滅,一個按鍵K2接外部中斷2控制啟動閃爍,當K1控制燈亮時打開外部中斷2,關閉外部中斷2,燈時滅的,但是再按一下燈還是滅的,因為我控制的是低電平,燈亮,我量過引腳電壓,中斷結 ... |
zhlf200212 發(fā)表于 2019-10-9 09:36 好像是我自己的思路錯了,我想著按一下進中斷觸發(fā)燈不斷閃爍,再按一下退出,這種思路是錯的,中斷按一下進去,處理結束就出來了,沒有循環(huán),那個循環(huán)亮燈也是主程序中的一部分,所以我所以為的退出中斷后,那個引腳的電平會和閃爍最后的電平一樣,也會受到主程序按鍵的影響 |
| 中斷觸發(fā)方式中把低電平觸發(fā)改為下降沿觸發(fā)。你用低電平觸發(fā)可能會使中斷多次發(fā)生。 |
csmyldl 發(fā)表于 2019-10-7 11:04 寫錯了 不是外部中斷2,是外部中斷1,標號是2,還有低電平觸發(fā)方式也是,IT1.可是這現(xiàn)象還是保持,燈亮,進中斷閃爍之后就不亮了,在按一下還是滅的 說明循環(huán)沒錯,回到主程序了,進中斷之前引腳低電平,進中斷之后,引腳自動拉高, |
| 51單片機有外部中斷2沒有?K2接在P30應該不是外部中斷,K3接在P33應該是外部中斷1,中斷程序SHANSHUO()只有在按下K3時才進去,在該中斷程序中又判斷K3,邏輯混亂.主程序中IT0=0是控制外部中斷0下降沿觸發(fā),這樣外部中斷1默認是低電平觸發(fā),當按下K3時是不斷產生中斷,但一旦松開,進入中斷后,修改的EA=0可能無法回到EA=1,從而關閉了所有中斷 |
一泓秋 發(fā)表于 2019-10-7 09:58 好的 謝謝你的建議 我會改正的,剛學沒多久 ,有點省時間了,本來以為邏輯沒問題就搞定了,,沒想到結果出了問題 忘記修改了 |
| 版主這樣的程序令人看著就頭疼,我們定義的時候不僅要讓自己看明白,還得讓別人看明白 |
Powered by 單片機教程網(wǎng)