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

編輯:admin 最后修改時(shí)間:2019-07-31