第五章MCS-51中斷系統(tǒng)_第1頁
第五章MCS-51中斷系統(tǒng)_第2頁
第五章MCS-51中斷系統(tǒng)_第3頁
第五章MCS-51中斷系統(tǒng)_第4頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第五章MCS-51中斷系統(tǒng)5.1中斷的概念5.2MCS-51中斷系統(tǒng)的結(jié)構(gòu)5.3中斷請求源5.4中斷控制5.5中斷響應(yīng)5.6外部中斷的觸發(fā)方式5.7中斷服務(wù)程序設(shè)計5.8多外部中斷源系統(tǒng)設(shè)計中斷定義:

當機器正在執(zhí)行程序的過程中,一旦遇到一些異?;蛱厥庹埱髸r,就停止正在執(zhí)行的程序,而轉(zhuǎn)入必要的處理,并在處理完畢后,立即返回斷點繼續(xù)執(zhí)行。圖5.1中斷響應(yīng)過程

中斷術(shù)語:中斷系統(tǒng):能夠?qū)崿F(xiàn)中斷處理功能的部件稱中斷系統(tǒng).中斷請求源(中斷源):發(fā)出中斷請求的來源。保護現(xiàn)場恢復現(xiàn)場中斷處理過程1)保護現(xiàn)場PUSHPSWPUSHAPUSHR02)中斷服務(wù)相應(yīng)的中斷源服務(wù)3)恢復現(xiàn)場POPR0POPAPOPPSW4)開中斷和中斷返回RETI5.2MCS-51中斷系統(tǒng)的結(jié)構(gòu)5.3中斷請求MCS-51中斷系統(tǒng)有5個中斷源(見5.2圖)1)--外部中斷請求源0,中斷請求標志IE0.2)--外部中斷請求源1,中斷請求標志IE1.3)T0--定時器/計數(shù)器T0溢出中斷請求,中斷請求標志TF0.4)T1--定時器/計數(shù)器T1溢出中斷請求,中斷請求標志TF1.5)串行口中斷請求,中斷請求標志為TI或RIINT0INT1TCON、SCON、IE、IP對5個中斷源:T0、T1、串行口中斷(TI/RI)、INT0、INT1、的控制的片內(nèi)特殊功能寄存器為:定時器/計數(shù)器控制寄存器TCON、串行口控制寄存器SCON、中斷優(yōu)先級控制寄存器IP和中斷允許寄存器IE。TCON、SCON、IE、IP

T0T1串行口中斷(TI/RI)INT0INT15個中斷請求源對5個中斷源控制的片內(nèi)特殊功能寄存器為:定時器/計數(shù)器控制寄存器TCON串行口控制寄存器SCON中斷優(yōu)先級控制寄存器IP中斷允許寄存器IE定時/計數(shù)器的控制寄存器TCON字節(jié)地址:88HTCONTF1TR1TF0TR0IE1IT1IE0IT0位地址8FH8EH8DH8CH8BH8AH89H88HTCONTF1TR1TF0TR0IE1IT1IE0IT0IT0:INT0的觸發(fā)方式控制位。若IT=0,電平觸發(fā)若IT=1,下降沿觸發(fā)IE0:外部中斷0的中斷請求標志若IE=0,無中斷請求若IE=1,有中斷請求IT1:INT1的觸發(fā)方式控制位IE1:外部中斷1的中斷請求標志TF0:定時/計數(shù)器(T0)溢出中斷請求標志計數(shù)器計滿產(chǎn)生溢出,由硬件置位,TF0=1有中斷請求,否則TF0=0(硬件會自動清0,也可由軟件清0.)TF1:

定時/計數(shù)器(T1)溢出中斷請求標志若TF1=0,無中斷請求;若TF1=1,有中斷請求。TCONTF1TR1TF0TR0IE1IT1IE0IT0串行口控制寄存器SCON字節(jié)地址:98HSCONTIRI位地址99H98HTI:串行口發(fā)送中斷標志

TI=1,中斷請求向串口的數(shù)據(jù)緩沖器SBUF寫入一個數(shù)據(jù)

TI=0,無請求(軟件清0)RI:串行口接收中斷標志

RI=1串行口接收器請求中斷

RI=0軟件清0SCON

TIRI注:復位后(SCON)=00H5.4中斷控制1.

中斷允許寄存器IE字節(jié)地址:A8HIETIRI位地址99H98HIE--中斷允許寄存器EA:中斷開放標志位

EA=1,CPU開放中斷

EA=0,CPU屏蔽所有的中斷ES:串行中斷允許位

ES=1,允許串行中斷

ES=0,禁止串行中斷ET1:T1的溢出中斷允許位

ET1=1,允許T1中斷

ET1=0,禁止T1中斷IE--中斷允許寄存器EX1:INT1中斷允許位。

EX1=1,允許INT1中斷

EX1=0,禁止INT1中斷ET0:T0的溢出中斷允許位.

ET0=1,允許T0中斷

ET0=0,禁止T0中斷EX0:INT0中斷允許位.

EX0=1,允許INT0中斷

EX0=0,禁止INT0中斷.IP--中斷優(yōu)先級寄存器

MCS-51中斷源有2個中斷優(yōu)先級,每個中斷源可由軟件設(shè)定為高級或低級.可實現(xiàn)2級中斷嵌套,2級中斷嵌套的過程如下圖5.4中斷嵌套實現(xiàn)過程:IP—中斷優(yōu)先級寄存器格式

字節(jié)地址為B8HIP───PSPT1PX1PT0PX0位地址───BCHBBHBAHB9HB8HIP--中斷優(yōu)先級寄存器各個位含義PS—串行口中斷優(yōu)先級控制位

PS=1,串行口中斷定義為高優(yōu)先級中斷

PS=0,串行口中斷定義為低優(yōu)先級中斷PT1—定時器T1中斷優(yōu)先級控制位

PT1=1,定時器T1定義為高優(yōu)先級中斷

PT1=0,定時器T1定義為低優(yōu)先級中斷IP--中斷優(yōu)先級寄存器各個位含義PX1—外部中斷1中斷優(yōu)先級控制位

PX1=1,外部中斷1定義為高優(yōu)先級中斷

PX1=0,外部中斷1定義為低優(yōu)先級中斷PT0—定時器T0中斷優(yōu)先級控制位

PT0=1,定時器T0定義為高優(yōu)先級中斷

PT0=0,定時器T0定義為低優(yōu)先級中斷PX0—外部中斷0中斷優(yōu)先級控制位

PX0=1,外部中斷0定義為高優(yōu)先級中斷

PX0=0,外部中斷0定義為低優(yōu)先級中斷同一級優(yōu)先級中斷請求的優(yōu)先級結(jié)構(gòu)中斷源入口地址中斷級別外部中斷00003H最高最低T0溢出中斷000BH外部中斷10013HT1溢出中斷001BH串行口中斷0023H5.5中斷響應(yīng)

響應(yīng)中斷請求的必要條件:1)CPU開中斷,即EA=1.2)該中斷源對應(yīng)的中斷請求標志為1.3)該中斷源的中斷允許位=14)無同級或更高級中斷正在被服務(wù).響應(yīng)中斷后:1)先置位相應(yīng)的優(yōu)先級狀態(tài)觸發(fā)器.2)執(zhí)行一個硬件子程序(中斷隱指令)調(diào)用.

清中斷標志、PC內(nèi)容壓棧、中斷入口地址裝入PC

注意:串行口中斷標志TI和RI必須軟件清零.中斷響應(yīng)被禁止的情況除下述條件所阻止,在機器周期S6采樣并按優(yōu)先級處理所激活的中斷請求,將在下一個機器周期的狀態(tài)(S1)響應(yīng)激活的最高級中斷。①CPU正在處理相同的或更高級的中斷。②現(xiàn)行的機器周期不是所執(zhí)行指令的最后一個機器周期。③正在執(zhí)行指令為RETI或訪問IP則至少需要再執(zhí)行一條指令,才會響應(yīng)的中斷請求。外部中斷的響應(yīng)時間:

在一個單一中斷系統(tǒng)里,MCS-51單片機對外部中斷請求的響應(yīng)時間是在3~8個機器周期之間.5.6外部中斷的觸發(fā)方式一、觸發(fā)方式:電平觸發(fā)和邊沿觸發(fā)方式.

電平觸發(fā)(低電平):當外部中斷源被設(shè)定為電平觸發(fā)方式時,在中斷服務(wù)程序返回之前,外部中斷請求輸入必須無效(即變?yōu)楦唠娖?,否則CPU返回主程序后會再次響應(yīng)中斷.注意:該方式適合于外部中斷以低電平輸入而且中斷服務(wù)程序能清除外部中斷請求源情況.邊沿觸發(fā)(下降沿):外部中斷請求觸發(fā)器能鎖存外部中斷輸入線上的負跳變,即便是CPU暫時不能響應(yīng),中斷請求標志也不會丟失.但輸入的負脈沖寬度至少保持12個時鐘周期,才能被CPU采樣到.

注意:該方式適合于以負脈沖形式輸入的外部中斷請求.定時器/計數(shù)器中斷請求的撤消該中斷響應(yīng)后,硬件會自動把中斷請求標志位(TF0或TF1)清0.串行口中斷請求的撤消串行口中斷請求的撤消只有標志位(TI或RI))清0問題.該中斷響應(yīng)后,硬件不會自動清中斷請求標志位.需軟件清0.用指令:

CLR TICLR RI二、中斷請求的撤消外部中斷請求的撤消邊沿方式外部中斷請求的撤消

①中斷標志位清0②外部中斷信號的撤消

由于邊沿信號出現(xiàn)后會消失,所以邊沿方式外部中斷請求也是自動撤消.中斷標志位(IE0或IE1)的清0是在中斷響應(yīng)后,硬件自動完成.電平方式外部中斷請求的撤消①中斷請求標志位(IE0或IE1)撤消硬件自動完成.②中斷請求信號的低電平可能繼續(xù)存在,將會重新把已清0的IE0或IE1置位.所以對電平方式外部中斷請求的撤消,除清標志位外,還必須在中斷響應(yīng)后把中斷請求信號引腳從低電平強制變?yōu)楦唠娖?方法如圖.電平方式外部中斷請求的撤消電路外部中斷請求信號在中斷服務(wù)程序中,增加:ORL P1,#01HANL P1,#FEHCPSDQINT0P1.0MCS-511。5.7中斷服務(wù)程序設(shè)計中斷服務(wù)程序設(shè)計任務(wù)采用中斷時的主程序結(jié)構(gòu)中斷服務(wù)程序流程中斷服務(wù)程序設(shè)計任務(wù)1)設(shè)置IE2)設(shè)置IP3)若為外部中斷,需設(shè)置觸發(fā)方式4)編寫中斷服務(wù)程序,處理中斷請求采用中斷時的主程序結(jié)構(gòu)

ORG 0000HLJMP MAINORG 中斷入口地址

LJMP INTMAIN:INT:主程序中斷服務(wù)程序中斷服務(wù)程序流程關(guān)中斷現(xiàn)場保護開中斷中斷處理關(guān)中斷現(xiàn)場恢復開中斷中斷返回CLREAPUSHPSWPUSHASETBEA中斷處理任務(wù)CLREAPOPAPOPPSWSETBEARETI例題1:如圖1.邊沿觸發(fā)式外部中斷輸入:P1.0~P1.3

輸出:P1.7~P1.42.逐級開放中斷

SETBEX0SETBEA3.中斷服務(wù)程序的位置外部中斷0的入口地址:0003H

中斷服務(wù)子程序最后一條指令:RETI返回程序清單:

ORG0000HAJMPMAIN;上電自動轉(zhuǎn)向主程序

ORG0003H;外部中斷0入口地址

AJMPWBINT;指向中斷服務(wù)子程序

ORG4100H;主程序MAIN:SETBIT0;選擇邊沿觸發(fā)方式

SETBEX0;允許外部中斷0

SETBEA;CPU允許中斷HERE:AJMPHERE;主程序踏步中斷服務(wù)子程序:

ORG4110HWBINT:MOVA,#0FFHMOVP1,A;設(shè)輸入態(tài)

MOVA,P1;取開關(guān)數(shù)

SWAPA;換位

MOVP1,A;輸出驅(qū)動燈泡發(fā)光

RETI;中斷返回

END5.8多外部中斷源系統(tǒng)設(shè)計5.8.1定時器/計數(shù)器作為外部中斷的使用方法定時器/計數(shù)器內(nèi)容,下章講解.5.8.2中斷和查詢結(jié)合的方法5個外部中斷源:DVT0--DVT4。其均為高電平有效DVT0為最高級中斷,為外部中斷0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論