版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、5.1 中斷概念 5.2 5.2 STC89C52單片機中斷系統(tǒng) 5.2.1中斷系統(tǒng)結構 5.2.2 中斷源 5.2.3 中斷請求標志 5.2.4 中斷控制寄存器 5.3 中斷響應 5.3.1 中斷響應條件 5.3.2 外部中斷響應時間 5.3.3 中斷請求的撤銷 5.4中斷程序的設計,本章主要內(nèi)容:敘述中斷概念和基本的中斷術語,介紹STC89C52單片機中斷系統(tǒng)的組成,詳細敘述與中斷有關的特殊功能寄存器各位功能和作用,敘述中斷響應的硬件處理過程、中斷響應的條件、外部中斷響應時間、中斷請求撤銷的方法,敘述中斷服務子程序設計要考慮的幾個問題、采用中斷時的主程序結構、中斷服務子程序的流程,最后以邊
2、沿觸發(fā)的外部中斷仿真示例結束,中斷定義:,當機器正在執(zhí)行程序的過程中,一旦遇到一些異?;蛱厥庹埱髸r,就停止正在執(zhí)行的程序,而轉入必要的處理,并在處理完畢后,立即返回斷點繼續(xù)執(zhí)行。,中斷響應過程,圖5-1,關于中斷有如下術語: 中斷源:發(fā)出中斷請求的設備稱為中斷請求源,簡稱中斷源。 中斷向量:所謂中斷向量就是中斷服務程序的入口地址。 中斷響應:對于中斷請求給出的處理。 中斷嵌套:在中斷服務程序中又響應了其它中斷請求,該過程稱為中斷嵌套。,高優(yōu)先級中斷請求可以打斷低優(yōu)先級中斷,反之,低優(yōu)先級中斷請求不可以打斷高優(yōu)先級及同優(yōu)先級中斷。當兩個相同優(yōu)先級中斷同時產(chǎn)生時,將由查詢次序來決定系統(tǒng)先響應哪個中
3、斷。,中斷嵌套實現(xiàn)過程:,圖5-2,5.2 STC89C52單片機中斷系統(tǒng),5.2.1中斷系統(tǒng)結構 STC89C51RC/RD+ 系列單片機的中斷系統(tǒng)結構示意圖如圖5-2所示,該中斷系統(tǒng)由中斷源、中斷標志、中斷允許控制寄存器和中斷優(yōu)先級控制寄存器等構成。,5.2.2 中斷源,傳統(tǒng)的51系列單片機5個基本中斷源為: 外部中斷0( ),中斷服務程序入口地址為0003H,中斷請求標志為IE0。 定時器 0,中斷服務程序入口地址為000BH,中斷請求標志為TF0。 外部中斷1( ),中斷服務程序入口地址為0013H,中斷請求標志為IE1 定時器 1,中斷服務程序入口地址為001BH,中斷請求標志為TF
4、1。 串行口中斷(UART),中斷服務程序入口地址為0023H,中斷請求標志為TI和RI,,STC89C52單片機在5個中斷源基礎上增加三個中斷源為: 定時器 2,中斷服務程序入口地址為002BH,中斷請求標志為TF2和EXF2。 外部中斷2( ),中斷服務程序入口地址為0033H,中斷請求標志為IE2。 外部中斷3( ),中斷服務程序入口地址為003BH,中斷請求標志為IE3。 注意:此處INTi(i=0,1,2,3),低電平有效。當外部有中斷觸發(fā)信號時,硬件自動將標志IEi(i=0,1,2,3)置1,定時器i(i=0,1,2)當定時時間到時,硬件自動將標志TFi(i=0,1,2)置1。,表
5、5-1 中斷源、中斷向量地址和中斷請求標志表,返回,5.2.3 中斷請求標志,STC89C52單片機中斷請求標志由TCON 、SCON、T2CON、XICON特殊功能寄存器相應位來鎖定。,IT1: 外部中斷1的中斷觸發(fā)方式控制位 IE1:外部中斷1的中斷請求標志 IT1,IE1含義類同外部中斷0,IT0: 外部中斷0的中斷觸發(fā)方式控制位。,若IT0=0,電平觸發(fā),若IT01,下降沿觸發(fā),IE0:外部中斷0的中斷請求標志,若IE0=0,無中斷請求,若IE0=1,有中斷請求,1. TCON,方式寄存器TCON(定時/計數(shù)器的控制寄存器) 字節(jié)地址:88H,若TF1=1,有中斷請求;若TF1=0無中
6、斷請求,TF0:定時/計數(shù)器0 溢出中斷請求標志,計數(shù)器滿產(chǎn)生溢出,它由硬件置位,若TF0=1有中斷請求;若TF0=0無中斷請求,注意:中斷響應時,硬件會自動清標志位,也可由軟件清0. TR1、TR0這2位與中斷系統(tǒng)無關,將在第6章定時器/計數(shù)器中介紹,TF1: 定時/計數(shù)器1 溢出中斷請求標志,2. SCON,串行口控制寄存器SCON 字節(jié)地址:98H,可位尋址,TI:串行口發(fā)送中斷請求標志位 TI=1,CPU向串口的發(fā)送緩沖器SBUF寫入1B的數(shù)據(jù),就啟動1幀串行數(shù)據(jù)的發(fā)送,送完后,硬件自動置位TI. TI=0,無發(fā)送中斷請求 RI:串行口接收中斷請求標志位 RI=1串行口接收完1個串行數(shù)
7、據(jù)幀,硬件自動置位RI. RI0,無接收中斷請求 注:響應串口中斷時,硬件并不清中斷標志位,由軟件清0.復位后(SCON)=00H,3. T2CON,方式寄存器T2CON(定時/計數(shù)器2的控制寄存器)字節(jié)地址:C8H,可位尋址,D7位為定時器/計數(shù)器2的溢出中斷請求標志位TF2, 若TF2=1有中斷請求;若TF2=0無中斷請求 D6-D0 這7位與中斷系統(tǒng)無關,將在第6章定時器/計數(shù)器中介紹,4. XICON,XICON寄存器為附加的控制寄存器,字節(jié)地址為C0H,可位尋址,IT3:外部中斷3的中斷觸發(fā)方式控制位 IE3:外部中斷3的中斷請求標志 IT3和 IE3含義類同外部中斷2.,IT2:外
8、部中斷2的中斷觸發(fā)方式控制位。,若IT2=0,電平觸發(fā),若IT21,下降沿觸發(fā),IE2:外部中斷2的中斷請求標志,若IE2=0,無中斷請求,若IE2=1,有中斷請求,注意:對于D2、D3、D6、D7位功能將在本章5.2.4節(jié)講解,5.2.4 中斷控制寄存器,STC89C52單片機中斷控制寄存器由IE、XICON、IP、IPH組成,各中斷源的中斷控制寄存器見表5-6所示。,表5.6,表5-6 RC/RD+ 系列8051單片機中斷特殊功能寄存器,一、 中斷允許控制寄存器,1. IE寄存器 IE寄存器的字節(jié)地址為A8H,可位尋址,,ET1:定時/計數(shù)器1的溢出中斷允許位。,EX1:外部中斷1中斷允許
9、位,ET0:定時/計數(shù)器0的溢出中斷允許位.,EX0:外部中斷0中斷允許位.,注意:各位都是:“1”允許中斷,“0”禁止中斷,ES;串行口中斷允許位,ET2:定時/計數(shù)器2的溢出/外部觸發(fā)中斷允許位.,EA:中斷允許總開關,若(IE)=85H問:那些中斷源打開,那些被屏蔽?,(IE)=1000 0101,外部中斷0和外部中斷1打開,定時中斷0、1、2和串行口中斷被屏蔽。,若(IE)=05H問:那些中斷源打開,那些被屏蔽?,(IE)=0000 0101,因總中斷允許為0,所有中斷都被屏蔽。,【例1】 若允許片內(nèi)3個定時器/計數(shù)器中斷,并禁止其他中斷源的中斷請求,請編寫設置IE的相應程序段。 (1
10、)用位操作指令 CLRES CLREX0 CLREX1 SETBET0 SETBET1 SETBET2 SETBEA (2)用字節(jié)操作指令 MOV IE,#AAH;10101010B 上述兩段程序對IE的設置是相同的。,27,2. XICON寄存器 XICON寄存器的字節(jié)地址為C0H,可位尋址,,注意: XICON寄存器中D7、D3功能在本章本節(jié)中斷優(yōu)先級控制寄存器敘述. XICON寄存器中D0、D1、D4、D5位功能在本章5.2.3節(jié)已有介紹,此處不重復敘述。,(1)EX2附加的外部中斷2中斷允許位, EX2=1中斷允許,EX2=0中斷禁止。 (2)EX3附加的外部中斷3中斷允許位, EX3
11、=1中斷允許,EX3=0中斷禁止。,二、中斷優(yōu)先級控制寄存器,STC89C52單片機8個中斷源硬件自動配置了相同優(yōu)先級別的中斷查詢次序見表5-1,外部中斷0最優(yōu)先,依次是定時/計數(shù)器0、外部中斷1、定時/計數(shù)器1、串行口中斷、定時/計數(shù)器2、外部中斷2、外部中斷3為最低。STC89C52單片機有四級中斷,通過軟件來配置,由中斷控制寄存器IP、IPH、XICON來設置。,表5-1,IP寄存器 IP寄存器是中斷優(yōu)先級低位寄存器,字節(jié)地址為B8H,可位尋址,返回,(D0)PX0外部中斷0中斷優(yōu)先級控制位低位 (D1)PT0定時器0中斷優(yōu)先級控制位 低位 (D2)PX1外部中斷1中斷優(yōu)先級控制位 低位
12、 (D3)PT1定時器1中斷優(yōu)先級控制位 低位 (D4)PS串行口中斷優(yōu)先級控制位 低位 (D5)PT2定時器2中斷優(yōu)先級控制位 低位 注意:IP為各中斷源中斷優(yōu)先級低位寄存器與各中斷源中斷優(yōu)先級高位寄存器IPH配合來配置各個中斷源的中斷優(yōu)先級,共有4級。,2. IPH寄存器 IPH寄存器是中斷優(yōu)先級高位寄存器,字節(jié)地址為B7H,不能進行位尋址,返回,(D0)PX0H外部中斷0中斷優(yōu)先級控制位高位 (D1)PT0H定時器0中斷優(yōu)先級控制位高位 (D2)PX1H外部中斷1中斷優(yōu)先級控制位高位 (D3)PT1H定時器1中斷優(yōu)先級控制位高位 (D4)PSH串行口中斷優(yōu)先級控制位高位 (D5)PT2H
13、定時器2中斷優(yōu)先級控制位高位 (D6)PX2H外部中斷2中斷優(yōu)先級控制位高位 (D7)PX3H外部中斷3中斷優(yōu)先級控制位高位 注意:IP為各中斷源中斷優(yōu)先級低位寄存器與各中斷源中斷優(yōu)先級高位寄存器IPH配合來配置各個中斷源的中斷優(yōu)先級,共有4級。,注意: STC89C52單片機4級中斷優(yōu)先級由軟件配置,它是由各個中斷源的優(yōu)先級高位和低位一起來配置,例如:外部中斷2優(yōu)先級高位PX2H和低位PX2配置,PX2H PX2=00,01,10,11,分別配置外部中斷2為優(yōu)先級0(最低),優(yōu)先級1,優(yōu)先級2,優(yōu)先級3(最高),同理知8個中斷源各優(yōu)先級配置方法見表5-1中斷優(yōu)先級設置。,PX2位對應附加外部
14、中斷2優(yōu)先級配置的低位, PX3位對應附加外部中斷3優(yōu)先級配置的低位。,例如:將定時/計數(shù)器2設置為最高中斷優(yōu)先級3級,則有: MOVIP,#20H MOVIPH,#20H,返回,36,IP,【例2】 IP、IPH寄存器初始化,STC89C52的兩個外部中斷0和1請求為最高優(yōu)先級即3級,定時/計數(shù)器0和1為中斷優(yōu)先級2級,其他中斷請求為最低優(yōu)先級。編寫初始化程序。,根據(jù)題意知:PX0HPX0=11,PX1HPX1=11,PT0HPT0=10, PT1HPT1=10,PT2HPT2=00,PSHPS=00,PX2HPX2=00,PX3HPX3=00 MOVIP,#05H;00000101 MOV
15、IPH,#0FH;00001111 MOVXICON,#55H;外部中斷2和3下降沿觸發(fā),中斷允許,IPH,XICON,5.3 中斷響應 中斷響應的過程: 首先由硬件自動生成一條長調(diào)用指令“LCALL addr16”。就是程序存儲區(qū)中相應的中斷入口地址。 例如,對于外部中斷0的響應,硬件自動生成的長調(diào)用指令為LCALL 0003H 首先將程序計數(shù)器PC的內(nèi)容壓入堆棧以保護斷點,再將中斷入口地址裝入PC,使程序轉向響應中斷請求的中斷入口地址。 各中斷源服務程序的入口地址,如表5-1所示。,37,表5-1,1. 響應中斷請求的條件: 必要條件: 1)CPU開中斷,即EA=1. 2)該中斷源對應的中
16、斷請求標志為1. 3)該中斷源的中斷允許位=1 4)無同級或更高級中斷正在被服務.,5.3.1 中斷響應條件,中斷響應是有條件的,當遇到下列三種情況之一時,中斷響應被封鎖: (1)CPU正在處理同級或更高優(yōu)先級的中斷。 (2)所查詢的機器周期不是當前正在執(zhí)行指令的最后一個機器周期。只有在當前指令執(zhí)行完畢后,才能進行中斷響應,以確保當前指令執(zhí)行的完整性。 (3)正在執(zhí)行的指令是RETI或是訪問IE或IP的指令。因為按照AT89S51中斷系統(tǒng)的規(guī)定,在執(zhí)行完這些指令后,需要再執(zhí)行完一條指令,才能響應新的中斷請求。 如果存在上述三種情況之一,CPU將丟棄中斷查詢結果,不能對中斷進行響應。,39,5.
17、5 外部中斷的響應時間 使用外部中斷時,需考慮從外部中斷請求到轉向中斷入口地址所需的時間。 外部中斷的最短響應時間為3個機器周期。其中中斷請求標志位查詢占1個機器周期,而這個機器周期恰好處于指令的最后一個機器周期。在這個機器周期結束后,中斷即被響應,CPU接著執(zhí)行一條硬件子程序調(diào)用指令LCALL到相中斷服務程序入口,需要2個機器周期。 外部中斷響應的最長時間為8個機器周期。在CPU進行中斷標志查詢時,剛好才開始執(zhí)行RETI或訪問IE或IP的指令,需執(zhí)行完指令再繼續(xù)執(zhí)行一條指令后,才響應中斷。,40,執(zhí)行RETI或訪問IE或IP的指令,最長需要2個機器周期 接著再執(zhí)行一條指令,最長指令(乘法指令
18、MUL和除法指令DIV)來算,也只有4個機器周期。再加上硬件子程序調(diào)用指令LCALL的執(zhí)行,需要2個機器周期,所以,外部中斷響應的最長時間為8個機器周期。 如果已經(jīng)在處理同級或更高級中斷,外部中斷請求的響應時間取決于正在執(zhí)行的中斷服務程序的處理時間,這種情況下,響應時間就無法計算了。 這樣,在一個單一中斷的系統(tǒng)里,STC89C52單片機對外部中斷請求的響應時間總是在38個機器周期之間,5.3.3 中斷請求的撤銷 某個中斷請求被響應后,就存在著一個中斷請求的撤銷問題。 1定時器/計數(shù)器中斷請求的撤銷 在中斷響應后,硬件會自動把中斷請求標志位(TF0、TF1)清0,自動撤銷,TF2或EXF2使用軟
19、件清零。如CLR TF2 或CLR EXF2 2外部中斷請求的撤銷 (1)跳沿方式外部中斷請求的撤銷 包括兩項:中斷標志位清0和外中斷信號的撤銷。 中斷標志位清0是在中斷響應后由硬件自動完成的。 外中斷請求信號的撤銷,由于跳沿信號過后也就消失了,自動撤銷。,(2)電平方式外部中斷請求的撤銷 電平方式外中斷請求的撤銷,其中中斷請求標志自動撤銷,但中斷請求信號的低電平可能繼續(xù)存在,為此,除了標志位清“0”之外,還需在中斷響應后把中斷請求信號輸入引腳從低電平強制改變?yōu)楦唠娖?,如圖5-3所示。,43,圖5-3 電平方式的外部中斷請求的撤銷電路,由圖5-3,用D觸發(fā)器鎖存外來的中斷請求低電平,并通過D觸
20、發(fā)器的輸出端Q接到 (或 )。所以,增加的D觸發(fā)器不影響中斷請求。 中斷響應后,利用D觸發(fā)器的SD端接AT89S51的P1.0端。因此,只要P1.0端輸出一個負脈沖就可以使D觸發(fā)器置“1”,撤銷低電平的中斷請求信號。 負脈沖可在中斷服務程序中增加如下指令: ORL P1,#01H;P1.0為“1” ANL P1,#0FEH;P1.0為“0” ORL P1,#01H;P1.0為“1”,44,3串行口中斷請求的撤銷 響應串行口的中斷后,CPU無法知道是接收中斷還是發(fā)送中斷,還需測試這兩個中斷標志位,以判定是接收操作還是發(fā)送操作,然后才清除。所以串行口中斷請求的撤銷只能使用軟件的方法,在中斷服務程序
21、中進行,即用如下指令在中斷服務程序中對串行口中斷標志位進行清除: CLR TI ;清TI標志位 CLR RI ;清RI標志位,45,匯編語言:中斷程序的設計,一、中斷程序設計任務 1)設置IE 2)設置IP 3)若為外部中斷,需設置觸發(fā)方式. 4)編寫中斷服務程序,處理中斷請求.,二、采用中斷時的程序結構:,ORG0000H LJMPMAIN ORG中斷入口地址 LJMPINT MAIN: INT:,主程序,中斷服務程序,三、中斷服務程序流程,關中斷 現(xiàn)場保護 開中斷 中斷處理 關中斷 現(xiàn)場恢復 開中斷 中斷返回,根據(jù)中斷服務程序流程,編寫中斷服務程序。設現(xiàn)場保護只將PSW寄存器和累加器A的內(nèi)容壓入堆棧中保護。一個典型的中斷服務子程序如下: INT:CLR EA;CPU關中斷 PUSH PSW;現(xiàn)場保護 PUSH Acc SETB EA;總中斷允許 中斷處理段 CLR EA;關中斷 POP Acc;現(xiàn)場恢復 POP PSW SETBEA;總中斷允許 RETI;中斷返回,恢復斷點,49,【例5-3】根據(jù)圖5-3.DSN所示,外部中斷1為邊沿觸發(fā)的外部中斷源,當按下按鍵K1,產(chǎn)生外部中斷1信號,單片機讀取輸入信號P1.0-P1.3引腳,將采樣到信號轉換為輸出信號去驅動相應發(fā)光二極管的亮滅,單片機的工作頻率為11.05
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《古樸的音韻》課件
- 《以變革迎接未來》課件
- 2024高鐵車站建筑分包商協(xié)議范例
- 《公司KPI提取》課件
- 浙江經(jīng)貿(mào)職業(yè)技術學院《計算機高級語言程序設計(C++)》2023-2024學年第一學期期末試卷
- 2025年度售樓處物業(yè)設施設備維護保養(yǎng)合同2篇
- 科研設計行業(yè)安全管理工作總結
- 2024年魚塘承包養(yǎng)殖產(chǎn)業(yè)鏈并購合同3篇
- 漁業(yè)養(yǎng)殖行業(yè)技術提升策略
- 《直流穩(wěn)壓》課件
- 2024年度吉林省國家電網(wǎng)招聘之法學類典型題匯編及答案
- 山東省臨沂市2023-2024學年高一上學期1月期末考試 物理 含答案
- 2024年世界職業(yè)院校技能大賽中職組“嬰幼兒保育組”賽項考試題庫-下(多選、判斷題)
- 2023年福建公務員錄用考試《行測》真題卷及答案解析
- 中華人民共和國學前教育法
- 辯論英文課件教學課件
- 村里干零工協(xié)議書
- 光伏電站環(huán)境保護施工方案
- 足浴技師與店內(nèi)禁止黃賭毒協(xié)議書范文
- 銑工高級工測試題(含答案)
- 送貨員崗位勞動合同模板
評論
0/150
提交評論