第5章1 80C51單片機的中斷系統(tǒng)_第1頁
第5章1 80C51單片機的中斷系統(tǒng)_第2頁
第5章1 80C51單片機的中斷系統(tǒng)_第3頁
第5章1 80C51單片機的中斷系統(tǒng)_第4頁
第5章1 80C51單片機的中斷系統(tǒng)_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、1 n教學內(nèi)容教學內(nèi)容 n中斷的概念中斷的概念 n80C5180C51單片機的中斷系統(tǒng)單片機的中斷系統(tǒng) n中斷源、中斷控制、中斷向量、中斷響應、中斷服務子程序中斷源、中斷控制、中斷向量、中斷響應、中斷服務子程序 n中斷系統(tǒng)編程應用舉例中斷系統(tǒng)編程應用舉例 n教學要求教學要求 2 3 執(zhí)行主 程序 主程序 繼續(xù)執(zhí)行 主程序 斷點 中斷請求 中斷響應 執(zhí)行 中斷 處理 程序 中斷返回 5 中中 斷斷 源源 n有有4 4個相關寄存器,包括個相關寄存器,包括 n定時器控制寄存器定時器控制寄存器TCONTCON n串行控制寄存器串行控制寄存器 SCONSCON n中斷允許寄存器中斷允許寄存器 IEIE

2、n中斷優(yōu)先級寄存器中斷優(yōu)先級寄存器IPIP 6 7 nTF0TF0和和TF1TF1定時器(定時器(T0T0和和T1T1)計數(shù)溢出標志位。)計數(shù)溢出標志位。 n當計數(shù)器產(chǎn)生計數(shù)溢出時,相應的溢出標志位由硬件當計數(shù)器產(chǎn)生計數(shù)溢出時,相應的溢出標志位由硬件 置置1 1,產(chǎn)生定時中斷請求。此外,這兩位也可以作為狀,產(chǎn)生定時中斷請求。此外,這兩位也可以作為狀 態(tài)位供查詢使用。態(tài)位供查詢使用。 nIE0IE0和和IE1IE1外部中斷請求標志位。外部中斷請求標志位。 n當當CPUCPU采樣到采樣到INT0INT0(或(或INT1INT1)端出現(xiàn)中斷請求信號時,)端出現(xiàn)中斷請求信號時, 對應位由硬件置對應位由

3、硬件置1 1,即保存外部中斷請求。在中斷響應,即保存外部中斷請求。在中斷響應 完成后轉向中斷服務時,再由硬件自動清完成后轉向中斷服務時,再由硬件自動清0 0。 nIT0IT0和和IT1IT1外中斷觸發(fā)方式控制位。外中斷觸發(fā)方式控制位。 n因為外中中斷請求有電平和脈沖兩種信號方式。因為外中中斷請求有電平和脈沖兩種信號方式。 8 包括了串行中斷標志位。包括了串行中斷標志位。 位于內(nèi)部位于內(nèi)部RAMRAM的的98H98H,位地址為,位地址為9FH-98H9FH-98H。 串行口控制寄存器串行口控制寄存器 SCON (Serial Port Control)SCON (Serial Port Cont

4、rol) 9 nTITI n發(fā)送中斷標志位。發(fā)送中斷標志位。 n當串行口發(fā)送完一幀數(shù)據(jù),該標志置當串行口發(fā)送完一幀數(shù)據(jù),該標志置“1 1”,CPUCPU響應響應 串行口中斷后內(nèi)部硬件不清除,必須通過軟件清串行口中斷后內(nèi)部硬件不清除,必須通過軟件清 “0 0”。 nRIRI n接收中斷標志位。接收中斷標志位。 n當串行口接收完一幀數(shù)據(jù),該標志置當串行口接收完一幀數(shù)據(jù),該標志置“1 1”,CPUCPU響應響應 串行口中斷后內(nèi)部硬件不清除,必須通過軟件清串行口中斷后內(nèi)部硬件不清除,必須通過軟件清 “0 0”。 10 11 12 用于控制是否允許使用中斷。用于控制是否允許使用中斷。 位于內(nèi)部位于內(nèi)部R

5、AMRAM的的A8HA8H,位地址為,位地址為AFH-A8HAFH-A8H。 13 nEAEA中斷允許總控制位中斷允許總控制位 nEA=0EA=0,中斷總禁止,禁止所中斷,中斷總禁止,禁止所中斷 nEA=1EA=1,中斷總允許,其后中斷的禁止或允許由各類中斷,中斷總允許,其后中斷的禁止或允許由各類中斷 自行設置。自行設置。 nEX0EX0和和EX1EX1外部中斷允許控制位外部中斷允許控制位 nEX0(EX1)=0EX0(EX1)=0,禁止外部中斷,禁止外部中斷0(1)0(1)。 nEX0(EX1)=1EX0(EX1)=1,允許外部中斷,允許外部中斷0(1)0(1)。 nET0ET0和和ET1E

6、T1定時器中斷允許控制位定時器中斷允許控制位 nET0(ET1)=0ET0(ET1)=0,禁止定時器中斷,禁止定時器中斷0(1)0(1)。 nET0(ET1)=1ET0(ET1)=1,允許定時器中斷,允許定時器中斷0(1)0(1)。 nESES串行中斷允許控制位串行中斷允許控制位 nES=0ES=0,禁止串行中斷。,禁止串行中斷。 nES=1ES=1,允許串行中斷。,允許串行中斷。 14 15 16 INT0 T0 INT1 T1 串行口中斷串行口中斷RI/TI 17 中斷響應過程中斷響應過程 18 中斷請求中斷請求( (中斷請求采樣中斷請求采樣S5P2S5P2中斷查詢中斷查詢S6S6) 中斷

7、響應中斷響應S1 S1 中斷服務中斷服務 外部中斷請求引入端:外部中斷請求引入端: 引腳引腳INT0/P3.2和和INT1/P3.3。 19 20 21 22 中斷允許實行兩級控制中斷允許實行兩級控制 23 24 25 ORG 0000HORG 0000H LJMP MAINLJMP MAIN ORG 0003HORG 0003H LJMP INT0LJMP INT0 ORG 0030HORG 0030H MAIN:MAIN: MOV SP,#30HMOV SP,#30H ; ;設置堆棧指針設置堆棧指針SPSP SETB IT0SETB IT0; ;外部中斷觸發(fā)方式外部中斷觸發(fā)方式 MOV T

8、CON,#01HMOV TCON,#01H SETB PX0SETB PX0; ;中斷優(yōu)先級設置中斷優(yōu)先級設置 MOV IP,#01HMOV IP,#01H SETB EX0SETB EX0; ;各中斷允許設置各中斷允許設置 MOV IE,#81HMOV IE,#81H SETB EASETB EA; ;中斷系統(tǒng)總開放中斷系統(tǒng)總開放 ORG 2000HORG 2000H INT0: INT0: ; ;外部中斷外部中斷0 0服務子程序服務子程序 RETIRETI 26 27 INT0 T0 INT1 T1 串行口中斷RI/TI 28 30 31 注意注意 n串行中斷請求由串行中斷請求由RIRI和

9、和TITI的邏輯或得到,也的邏輯或得到,也 就是說,無論是就是說,無論是發(fā)送標志還是接收標志,發(fā)送標志還是接收標志, 都會產(chǎn)生中斷請求都會產(chǎn)生中斷請求。 n RIRI和和TITI的的中斷入口都是中斷入口都是0023H0023H,所以,所以CPUCPU響響 應后轉入應后轉入0023H0023H開始執(zhí)行服務程序,首先必開始執(zhí)行服務程序,首先必 須判斷是須判斷是RIRI中斷還是中斷還是TITI中斷,然后進行相中斷,然后進行相 應服務。應服務。 32 33 34 35 36 37 ORG 2000HORG 2000H INT0: INT0: CLR EACLR EA; ;關中斷關中斷 PUSH PSW

10、PUSH PSW; ;保護現(xiàn)場保護現(xiàn)場 PUSH ACCPUSH ACC; ; SETB EASETB EA; ;開中斷開中斷 MOV A,#02HMOV A,#02H; ;中斷服務中斷服務 CLR EACLR EA; ;關中斷關中斷 POP ACCPOP ACC; ;恢復現(xiàn)場恢復現(xiàn)場 POP PSWPOP PSW SETB EASETB EA; ;開中斷開中斷 RETIRETI; ;中斷返回中斷返回 ENDEND 38 39 中斷編程舉例中斷編程舉例 例例 擴展外部中斷源。利用中斷實現(xiàn)多個故障的擴展外部中斷源。利用中斷實現(xiàn)多個故障的LEDLED報警顯示。報警顯示。 顯示:顯示: 無故障時,故

11、障信號源輸入端為低電平;出現(xiàn)故障時,相應的故障信號輸入無故障時,故障信號源輸入端為低電平;出現(xiàn)故障時,相應的故障信號輸入 端變?yōu)楦唠娖?。要求編程實現(xiàn):無故障時,對應指示燈熄滅;有故障時,對端變?yōu)楦唠娖健R缶幊虒崿F(xiàn):無故障時,對應指示燈熄滅;有故障時,對 應的指示燈點亮。應的指示燈點亮。 41 ORG 0000H;上電復位后,轉主程序上電復位后,轉主程序 AJMP MAIN ORG 0003H ;外部中斷外部中斷0的中斷向量的中斷向量 AJMP EXINT0 ;轉中斷服務子程序轉中斷服務子程序 ORG 0030H MAIN: SETB IT0;外部中斷外部中斷INT0為邊沿觸發(fā)方式為邊沿觸發(fā)方

12、式 SETB EX0;允許允許INT0中斷中斷 SETB EA;CPU開中斷開中斷 HERE:SJMP $;等待中斷等待中斷 42 EXINT0: MOV P1,#0FFH ;全部指示燈滅全部指示燈滅,并為讀入故障信號作準備并為讀入故障信號作準備 JNB P1.0,L1 ;P1.0無故障無故障 CLR P1.1;P1.0為為1,表明有故障,表明有故障,p1.1亮亮 SJMP L2 L1:SETB P1.1;p1.1滅滅 L2:JNB P1.2,L3 CLR P1.3 ;實現(xiàn)故障顯示,實現(xiàn)故障顯示,p1.3亮亮 SJMP L4 L3:SETB P1.3;p1.3滅滅 L4:JNB P1.4,L5

13、 CLR P1.5;實現(xiàn)故障顯示,實現(xiàn)故障顯示,p1.5亮亮 SJMP L6 L5:SETB P1.5;p1.3滅滅 L6:JNB P1.6,L7 CLR P1.7;實現(xiàn)故障顯示,實現(xiàn)故障顯示,p1.7亮亮 SJMP L8 L7:SETB P1.7;p1.7滅滅 L8:RETI 43 【例】單片機數(shù)據(jù)傳輸。 外設數(shù)據(jù)經(jīng)P1口輸入單片機,每準備好一個數(shù)據(jù), 外設發(fā)出選通信號,經(jīng)觸發(fā)器和非門至INT0。 P1口 P3.0 Q D CLK CLR 選通信號 +5V 1INT0 數(shù)據(jù) 8031 44 數(shù)據(jù)傳送過程: 外設每準備好一個數(shù)據(jù)后,發(fā)出選通信號,使觸 發(fā)器輸出1再經(jīng)非門得0至INT0,向CPU

14、發(fā)出中斷 請求, CPU 響應這個中斷請求后,在中斷處理 程序中先撤除 中斷請求信號, (通過P3.0=0, 使INT0=1) 再由P1口輸入 數(shù)據(jù)到單片機 內(nèi)部。 P1口 P3.0 Q D CLK CLR 選通信號 +5V 1INT0 數(shù)據(jù) 8031 45 程序清單: ORG 0000H START:LJMP MAIN ORG 0003H LJMP IINT0 ORG 0030H ;主程序 MAIN: CLR IT0 ;低電平觸發(fā) SETB EA SETB EX0 ;開中斷 MOV DPTR,#1000H . ORG 0100H IINT0:PUSH PSW ;中斷處理程序 PUSH ACC

15、 CLR P3.0 46 NOP NOP SETB P3.0 ;撤除INT0 MOV A,P1 ;輸入數(shù)據(jù) MOVX DPTR,A ;保存數(shù)據(jù) INC DPTR . POP ACC ;恢復現(xiàn)場 POP PSW RETI ;返回主程序 47 1 1、80518051單片機有單片機有 5 5 個中斷源,分個中斷源,分2 2個中斷優(yōu)先等級,個中斷優(yōu)先等級, 允許實現(xiàn)允許實現(xiàn)兩層兩層中斷嵌套。中斷嵌套。 2 2、80518051單片機中斷是由特殊功能寄存器單片機中斷是由特殊功能寄存器 TCONTCON、SCONSCON、 IPIP、IEIE及內(nèi)部查詢電路組成和控制的。這及內(nèi)部查詢電路組成和控制的。這4 4個個 特殊功能寄存器在特殊功能寄存器在CPUCPU復位后為復位后為00H00H。 3 3、中斷入口地址也稱為、中斷入口地址也稱為中斷向量中斷向量,外部中斷,外部中斷INT0INT0為為 0003

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論