單片機關斷
A. 判斷開關閉或斷的單片機源程序
估計你要匯編程序吧,我寫一個。
你的開關最好接個上拉電阻,這樣斷開就是高電專平,閉合就是低屬電平。依據這個下下面的程序,假設你的是用P2口的P2.0到P2.5接按鍵:
MOV A,p2
CJNE A,#3FH,TT
RET
TT:CJNE A,#1FH,L1
SJMP P1
L1:CJNE A,#2FH,L2
SJMP P2
L2:CJNE A,#37H,L3
SJMP P3
L3:CJNE A,#3BH,L4
SJMP P3
L4:CJNE A,#3DH,L5
SJMP P5
L5:CJNE A,#3EH,L6
SJMP P6
L6:
MOV A,#0FFH
RET
P1:MOV A,#1
RET
P2:MOV A,#2
RET
P3:MOV A,#3
RET
P4:MOV A,#5
RET
P5:MOV A,#5
RET
P6:MOV A,#6
RET
這個子程序,調用一下,如果返回值A是ffh,就是沒有鍵按下,如果為1就是一號鍵按下。
B. 單片機C語言如何滿足條件就立即退出中斷函數
舉例:
#include<reg51.h>
void main()
{
IE=0x81;
while(1);
}
void INT0 () interrupt 0
{
do
{if (P1=0x30)
return;}
while(1);
}
比如上例復:中斷0原本是制死循環,但當p1w為0x30,則跳出。跟別的函數一樣,可以用return返回。
C. 單片機可不可以直接控制三極體的導通和關斷求指點……謝謝。
是完全可以控制的,使單片機的對應的一個I/O口高電平或低電平,即可控制三極體的通與斷.
希望能幫助到您,謝謝!
D. 單片機中的開中斷,關中斷是什麼意思
開中抄斷就是當有中斷信號產生時,單片機會進入中程序
如P3^2口 有低電平信號或下降沿信號(由TCON寄存器控制),單片機會暫時放下當前工作,去執行中斷程序中的程序,當中斷程序中的工作結束後,再返回主程序繼續做。
關中斷的話,就是關閉中斷,讓P2^3口接收到低電平信號或下降沿信號(由TCON寄存器控制)後,不在進入中斷。
通俗點就是把尿意比作中斷信號,開中斷 就是在人群中必須馬上去上廁所,關中斷就是穿了尿不濕或者可以憋住,暫時不用去理會尿意,直接跳過這個命令進入下一個 執行命令。
E. 求一個單片機自關斷電源電路 : 開關按鍵,開按鍵給高電平,7805工作,單片機工作,關按鍵低電
在7805的電源輸入前加一個繼電器,但是需要手動復位。
F. 單片機進入中斷後,關閉中斷,這時如果已經進入中斷,中斷會繼續執行嗎
當然會繼續執行 一般程序開發時利用這樣的指令防止中斷的反復觸發 即進入中斷服務程序後關閉中斷 執行完中斷服務程序後打開並重新初始化中斷
G. 單片機如何開始中斷
單片機中斷產生條件:
1、EA=1
2、相應的外設中斷使能位有效,如串口則需ES=1
3、外設滿足中斷產生條件,如串口接收到一幀數據或發送完一幀數據
H. 單片機: 關閉所有中斷,最簡單的方法是用一條什麼指令
EA是總中斷。直接SETB 就是開了所有中斷,再開相關的位則可以開啟對應的中斷。
關閉時,不管你開了幾個中斷。直接將EA清零則關閉所有中斷。希望可以幫到你。
I. 關於單片機控制可控硅關斷的問題
不要用moc3021,用moc3061或者3081。
http://..com/question/1795762120910757707
3061內部有過零檢測電路,不需要程序處理過零信號回。輸入端發光管加上電流答信號,3061輸出不會立即開通,而是等到內部檢測到過零信號之後,輸出才會開通。過零的時候,電壓是零,這個時候輸出導通,電流應該也從零開始按正弦增加,不會劇烈變化。
J. 單片機開了中斷一定要關了中斷嗎。
這是你程復序編寫上的問題了制,主程序—中斷服務程序(鍵值判斷完成後返回斷點)再由主程序通過中斷返回的鍵值再調用對應的應用子程序,應用程序執行完後返回主程序再次等待中斷。如過有優先順序得解決好優先順序問題。中斷完成後必須返回斷點否則程序會死掉。