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

下載本文檔

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

文檔簡(jiǎn)介

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

當(dāng)機(jī)器正在執(zhí)行程序的過程中,一旦遇到一些異?;蛱厥庹?qǐng)求時(shí),就停止正在執(zhí)行的程序,而轉(zhuǎn)入必要的處理,并在處理完畢后,立即返回?cái)帱c(diǎn)繼續(xù)執(zhí)行。圖5.1中斷響應(yīng)過程

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

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

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

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

TI=0,無(wú)請(qǐng)求(軟件清0)RI:串行口接收中斷標(biāo)志

RI=1串行口接收器請(qǐng)求中斷

RI=0軟件清0SCON

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

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

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)先級(jí)寄存器

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

CLR TICLR RI二、中斷請(qǐng)求的撤消外部中斷請(qǐng)求的撤消邊沿方式外部中斷請(qǐng)求的撤消

①中斷標(biāo)志位清0②外部中斷信號(hào)的撤消

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

ORG 0000HLJMP MAINORG 中斷入口地址

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

輸出:P1.7~P1.42.逐級(jí)開放中斷

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

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

ORG0000HAJMPMAIN;上電自動(dòng)轉(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ū)動(dòng)燈泡發(fā)光

RETI;中斷返回

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

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論