單片機中斷系統(tǒng)
概念:引起CPU中斷的根源,稱為中斷源。中斷源向CPU提出的中斷請求。CPU暫時中斷原來的事務A,轉(zhuǎn)去處理事件B。對事件B處理完畢后,再回到原來被中斷的地方(即斷點),稱為中斷返回。實現(xiàn)上述中斷功能的部件稱為中斷系統(tǒng)(中斷機構(gòu))。
80C51的中斷系統(tǒng)有5個中斷源 ,2個優(yōu)先級,可實現(xiàn)二級中斷嵌套(就是可以在嵌套過程中再次響應嵌套) 。
中斷源1、INT0(P3.2),外部中斷1。可由IT0(TCON.0)選擇其為低電平有效還是下降沿有效。當CPU檢測到P3.2引腳上出現(xiàn)有效的中斷信號時,中斷標志IE0(TCON.1)置1,向CPU申請中斷。
2、INT1(P3.3),外部中斷2。可由IT1(TCON.2)選擇其為低電平有效還是下降沿有效。當CPU檢測到P3.3引腳上出現(xiàn)有效的中斷信號時,中斷標志IE1(TCON.3)置1,向CPU申請中斷。
3、TF0(TCON.5),片內(nèi)定時/計數(shù)器T0溢出中斷請求標志。當定時/計數(shù)器T0發(fā)生溢出時,置位TF0,并向CPU申請中斷。
4、TF1(TCON.7),片內(nèi)定時/計數(shù)器T1溢出中斷請求標志。當定時/計數(shù)器T1發(fā)生溢出時,置位TF1,并向CPU申請中斷。
5、RI(SCON.0)或TI(SCON.1),串行口中斷請求標志。當串行口接收完一幀串行數(shù)據(jù)時置位RI或當串行口發(fā)送完一幀串行數(shù)據(jù)時置位TI,向CPU申請中斷。
中斷請求標志1、TCON的中斷標志
IT0(TCON.0):外部中斷0觸發(fā)方式控制位。
當IT0=0時:為電平觸發(fā)方式。
當IT0=1時:為邊沿觸發(fā)方式(下降沿有效)。
IE0(TCON.1):外部中斷0中斷請求標志位。
IT1(TCON.2):外部中斷1觸發(fā)方式控制位。
IE1(TCON.3):外部中斷1中斷請求標志位。
TF0(TCON.5):定時/計數(shù)器T0溢出中斷請求標志位。
TF1(TCON.7):定時/計數(shù)器T1溢出中斷請求標志位。
2、SCON的中斷標志
RI(SCON.0),串行口接收中斷標志位。當允許串行口接收數(shù)據(jù)時,每接收完一個串行幀,由硬件置位RI。同樣,RI必須由軟件清除。
TI(SCON.1),串行口發(fā)送中斷標志位。當CPU將一個發(fā)送數(shù)據(jù)寫入串行口發(fā)送緩沖器時,就啟動了發(fā)送過程。每發(fā)送完一個串行幀,由硬件置位TI。CPU響應中斷時,不能自動清除TI,TI必須由軟件清除。
80C51中斷的控制
中斷允許控制
CPU對中斷系統(tǒng)所有中斷以及某個中斷源的開放和屏蔽是由中斷允許寄存器IE控制的。
EX0(IE.0):外部中斷0允許位;
ET0(IE.1):定時/計數(shù)器T0中斷允許位;
EX1(IE.2):外部中斷0允許位;
ET1(IE.3):定時/計數(shù)器T1中斷允許位;
ES(IE.4):串行口中斷允許位;
EA (IE.7): CPU中斷允許(總允許)位。
中斷優(yōu)先級控制
80C51單片機有兩個中斷優(yōu)先級,即可實現(xiàn)二級中斷服務嵌套。每個中斷源的中斷優(yōu)先級都是由中斷優(yōu)先級寄存器IP中的相應位的狀態(tài)來規(guī)定的 。
PX0(IP.0),外部中斷0優(yōu)先級設(shè)定位;
PT0(IP.1),定時/計數(shù)器T0優(yōu)先級設(shè)定位;
PX1(IP.2),外部中斷0優(yōu)先級設(shè)定位;
PT1(IP.3),定時/計數(shù)器T1優(yōu)先級設(shè)定位;
PS? (IP.4),串行口優(yōu)先級設(shè)定位;
PT2(IP.5),定時/計數(shù)器T2優(yōu)先級設(shè)定位。
中斷優(yōu)先級規(guī)則:
CPU同時接收到幾個中斷時,首先響應優(yōu)先級別最高的中斷請求。
正在進行的中斷過程不能被新的同級或低優(yōu)先級的中斷請求所中斷。
正在進行的低優(yōu)先級中斷服務,能被高優(yōu)先級中斷請求所中斷。
中斷系統(tǒng)總結(jié):TCON和SCON是中斷請求,以及控制外部中斷的有效方式。IE控制是否允許CPU響應中斷,是否允許響應某一個中斷。IP控制中斷的優(yōu)先級。
編輯:admin 最后修改時間:2019-07-31