標(biāo)題:
單片機(jī)通過一個(gè)按鍵,進(jìn)入一個(gè)無限延時(shí)的中斷,能不能再通過這個(gè)按鍵,再恢復(fù)現(xiàn)場(chǎng)?
[打印本頁]
作者:
liu376105174
時(shí)間:
2018-1-16 18:21
標(biāo)題:
單片機(jī)通過一個(gè)按鍵,進(jìn)入一個(gè)無限延時(shí)的中斷,能不能再通過這個(gè)按鍵,再恢復(fù)現(xiàn)場(chǎng)?
問一個(gè)單片機(jī)問題:通過一個(gè)按鍵,進(jìn)入一個(gè)無限延時(shí)的中斷,能不能再通過這個(gè)按鍵,再恢復(fù)中斷?
按下按鍵 中斷 再次按下 恢復(fù)現(xiàn)場(chǎng)
作者:
qq1105424012
時(shí)間:
2018-1-16 21:58
外部中斷 優(yōu)先級(jí)最高
作者:
jizi
時(shí)間:
2018-1-17 07:42
可以啊在中斷里寫一個(gè)while()中間寫一個(gè)判斷
按鈕寫一個(gè)中斷優(yōu)先于上一個(gè)中斷
按鈕是用來寫一個(gè)while中的判斷
這樣就會(huì)出現(xiàn)你先要的結(jié)果
作者:
醇酒美人醉修禪
時(shí)間:
2018-1-17 09:38
本帖最后由 醇酒美人醉修禪 于 2018-1-17 17:05 編輯
#include "reg52.h"
sbit KEY=P1^0;
bit key_flag=0;
void main()
{
...
while(1)
{
...
if(KEY==0) key_flag=0;
while(key_flag==0)
{
if(KEY==0) {
delay_ms(10);
if(KEY==0)
{
key_flag=!key_flag;
}
}
delay_ms(200);
while(KEY==0);
}
...
}
}
作者:
滄海月明
時(shí)間:
2018-1-17 09:57
可以的,定義整形一個(gè)變量,初始值設(shè)為0.按鍵按一次,變量加一,在按一次再加一。通過查詢變量的值,來判斷執(zhí)行哪段程序
作者:
貪戀
時(shí)間:
2018-1-17 21:55
有一點(diǎn)你需要注意:中斷里面是不能延時(shí)的,這是寫程序的大忌
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1