第4章8051單片機(jī)的中斷系統(tǒng)復(fù)習(xí)_第1頁
第4章8051單片機(jī)的中斷系統(tǒng)復(fù)習(xí)_第2頁
第4章8051單片機(jī)的中斷系統(tǒng)復(fù)習(xí)_第3頁
第4章8051單片機(jī)的中斷系統(tǒng)復(fù)習(xí)_第4頁
第4章8051單片機(jī)的中斷系統(tǒng)復(fù)習(xí)_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第四章

中斷系統(tǒng)復(fù)習(xí)4.1中斷的概念中斷過程: 程序執(zhí)行過程中,允許外部或內(nèi)部事件通過硬件打斷程序的執(zhí)行,使其轉(zhuǎn)向中斷服務(wù)程序中去;完成中斷服務(wù)程序后,CPU繼續(xù)原來被打斷的程序,這樣的過程稱為中斷。2中斷響應(yīng):CPU暫停當(dāng)前的工作轉(zhuǎn)去處理中斷源事件。中斷系統(tǒng):單片機(jī)中實(shí)現(xiàn)中斷功能的部件,也是中斷管理系統(tǒng)。中斷源:產(chǎn)生中斷的請求的外部或內(nèi)部事件。中斷申請:中斷源向CPU發(fā)出的請求。優(yōu)點(diǎn):中斷方式的一個重要應(yīng)用領(lǐng)域是實(shí)時控制。能將從現(xiàn)場采集到的數(shù)據(jù)及時傳送給CPU,經(jīng)過處理后就可立即作出響應(yīng),實(shí)現(xiàn)現(xiàn)場控制。中斷方式完全消除了CPU在查詢方式中的等待現(xiàn)象,大大提高了CPU的工作效率。32.中斷的排隊如果有若干個中斷申請同時發(fā)生,就需要決定先對哪一個中斷申請進(jìn)行響應(yīng)。3.中斷的響應(yīng)單片機(jī)在響應(yīng)了中斷源的申請時,應(yīng)使CPU從主程序轉(zhuǎn)去執(zhí)行中斷服務(wù)子程序,同時要把斷點(diǎn)地址送入堆棧進(jìn)行保護(hù),中斷系統(tǒng)還要能確定各個被響應(yīng)中斷源的中斷服務(wù)子程序的入口。4.中斷的撤除

8051單片機(jī)中斷系統(tǒng)的任務(wù):1.開中斷或關(guān)中斷中斷的開放或關(guān)閉可以通過指令對相關(guān)特殊功能寄存器的操作來實(shí)現(xiàn),只有在開中斷的情況下,才有可能接受中斷源的申請。4

8051中有5個中斷源:

兩個外部中斷源/INT0和/INT1;4.2中斷系統(tǒng)結(jié)構(gòu)與中斷控制三個內(nèi)部中斷源為:T0和T1的定時/計數(shù)溢出中斷源(2個);和串行口發(fā)送或接收中斷源(1個)。外部中斷請求信號可以是電平觸發(fā)方式和負(fù)邊沿觸發(fā)方式。若是電平觸發(fā)方式,只要在INT0或INT1引腳有低電平信號即為有效的中斷申請。5圖4.2中斷系統(tǒng)結(jié)構(gòu)定時器控制寄存器中斷允許寄存器中斷優(yōu)先級寄存器串行口控制寄存器6

INT0,INT1,T0及T1的中斷標(biāo)志存放在

TCON(定時器/計數(shù)器控制寄存器)中;

TCON字節(jié)地址為88H,其格式如下:

中斷控制系統(tǒng)INT0、INT1的中斷觸發(fā)方式控制位。為0選擇電位觸發(fā),為1選擇跳變觸發(fā)。由軟件設(shè)置。外部中斷0、1申請中斷標(biāo)志。為1表示有外部中斷申請。T0、T1計數(shù)溢出標(biāo)志;為1表示溢出,由硬件置位、響應(yīng)中斷硬件復(fù)位。不用中斷用軟件清0。1.中斷標(biāo)志7串行口的中斷標(biāo)志存放在

SCON(串行口控制寄存器)中。SCON字節(jié)地址為98H,其格式如下:串行口發(fā)送中斷標(biāo)志。發(fā)送完一幀,由硬件置位。響應(yīng)中斷后,必須用軟件清0。串行口接收中斷標(biāo)志。接收完一幀,由硬件置位。響應(yīng)中斷后,必須用軟件清0。8

中斷允許和禁止由中斷允許寄存器IE(A8H)控制。IE中各位設(shè)置:為0時,禁止中斷;為1時,允許中斷。中斷允許位。當(dāng)EA=1,允許所有中斷開放;當(dāng)EA=0時,屏蔽所有中斷。串行口中斷允許位。T0、T1中斷允許位。外部中斷0、外部中斷1中斷允許位。2.中斷允許控制9

中斷優(yōu)先級寄存器IP(B8H)的格式如下,IP中各位設(shè)置:為0時,為低優(yōu)先級;為1時,設(shè)為高優(yōu)先級。

在中斷執(zhí)行過程中,高中斷優(yōu)先級可以中斷低中斷優(yōu)先級的中斷過程(即中斷嵌套)。

當(dāng)CPU同時接收到兩個不同優(yōu)先級的中斷請求時,先響應(yīng)高優(yōu)先級的中斷串口定時器1外部中斷03.中斷優(yōu)先級10

在同一優(yōu)先級內(nèi)有一個由內(nèi)部查詢序列確定的優(yōu)先級結(jié)構(gòu)。其排列如下:

中斷源

中斷優(yōu)先級最高⒈外部中斷0 ⒉定時器T0中斷⒊外部中斷1⒋定時器T1中斷⒌串行口中斷 最低中斷嵌套: 優(yōu)先級高的事件可以中斷CPU正在處理的低級的中斷服務(wù)程序,待完成了高級中斷服務(wù)程序之后,再繼續(xù)被打斷的低級中斷服務(wù)程序。這是中斷嵌套問題。11表4.18051單片機(jī)的中斷源及中斷矢量1.單片機(jī)在接收到中斷申請以后,先把這些申請鎖定在各自的中斷標(biāo)志位中,然后在下一個機(jī)器周期按優(yōu)先級分別來查詢這些標(biāo)志。2.CPU在下一個機(jī)器周期響應(yīng)中斷,完成兩件工作:一是把當(dāng)前程序計數(shù)器PC的內(nèi)容送入堆棧保護(hù),另一個是根據(jù)中斷的不同來源把程序的執(zhí)行轉(zhuǎn)移到相應(yīng)的中斷服務(wù)子程序的入口。中斷響應(yīng)過程3.當(dāng)某個中斷請求得到響應(yīng)之后,相應(yīng)的中斷標(biāo)志位應(yīng)該予以清除(即復(fù)“0”)。12

1.必須沒有同級或更高級別的中斷正在得到響應(yīng),如果有的話,則必須等CPU為它們服務(wù)完畢,返回主程序并執(zhí)行一條指令之后才能響應(yīng)新的中斷申請。

2.必須要等當(dāng)前正在執(zhí)行的指令執(zhí)行完畢以后,CPU才能響應(yīng)新的中斷申請。

3.若正在執(zhí)行的指令是RETI(中斷返回),則必須要在執(zhí)行完該指令以及緊隨其后的另外一條指令之后才可以響應(yīng)新的中斷申請。中斷響應(yīng)的條件:中斷標(biāo)志的清除:1.由硬件自動使標(biāo)志位復(fù)“0”(即撤除),它們是:.定時器0或1的中斷請求標(biāo)志TF0或TF1;

.外部中斷0或1的中斷請求標(biāo)志IE0或IE1。2.中斷系統(tǒng)不予以自動撤除,它們是:.串行口的中斷請求標(biāo)志TI和RI。13

在8051中,實(shí)現(xiàn)中斷需要用軟件對以下5個內(nèi)容進(jìn)行初始化設(shè)置:⑴中斷服務(wù)程序入口地址的設(shè)定。⑵CPU開中斷與關(guān)中斷。

⑶某一中斷源中斷請求的允許與禁止。⑷各中斷源優(yōu)先級別的設(shè)定。⑸對于外部中斷請求,還需進(jìn)行觸發(fā)方式的設(shè)定。中斷服務(wù)程序的設(shè)計中斷程序一般包含中斷控制程序和中斷服務(wù)程序兩部分。

中斷控制程序即中斷初始化程序,一般不獨(dú)立編寫,而是包含在主程序中,根據(jù)上述的5點(diǎn)通過編寫幾條指令來實(shí)現(xiàn)。

中斷服務(wù)程序是一種為中斷源的特定事態(tài)要求服務(wù)的獨(dú)立程序段,以中斷返回指令RETI結(jié)束。14在編寫中斷服務(wù)程序時,要注意以下幾點(diǎn):

1.8051單片機(jī)各中斷源的入口地址之間僅相隔8個單元,如果中斷服務(wù)程序的長度超過8個地址單元時,應(yīng)在中斷入口地址處安排一條轉(zhuǎn)移指令,轉(zhuǎn)到其他有足夠空余存儲器單元的地址空間。2.若在執(zhí)行當(dāng)前中斷服務(wù)程序時需要禁止更高級中斷源,則要用軟件指令關(guān)閉中斷,在中斷返回之前再開放中斷。3.在保護(hù)和恢復(fù)現(xiàn)場時,為了不使現(xiàn)場信息受到破壞或造成混亂,保護(hù)現(xiàn)場之前應(yīng)關(guān)中斷,若需要允許高級中斷,則應(yīng)在保護(hù)現(xiàn)場之后再開中斷。同樣在恢復(fù)現(xiàn)場之前也應(yīng)先關(guān)中斷,恢復(fù)現(xiàn)場之后再開中斷。4.及時清除那些不能被硬件自動清“0”的中斷請求標(biāo)志,以免產(chǎn)生錯誤的中斷。最后,說明一下中斷的響應(yīng)時間問題,CPU并不是在任何情況下都對中斷請求立即響應(yīng),不同情況下中斷響應(yīng)的時間有所不同。若系統(tǒng)中只有一個中斷源,則中斷響應(yīng)時間為3-8個機(jī)器周期。15編程如下: ORG 0000H SJMP MAIN ORG 0003H;外部中斷/INT0中斷矢量

LJMP INT0INT ORG 0013H;外部中斷/INT1中斷矢量

LJMP INT1INTMAIN:MOVIP,#00000100B;設(shè)INT1為高優(yōu)先級

SETB IT0;設(shè)INT0下降沿有效

MOVIE,#10000101B;允許INT0、INT1中斷,

… ;開放CPU中斷

INT0INT:…;中斷服務(wù)程序

PUSHPSW;保護(hù)現(xiàn)場

PUSHACC…POPACC;恢復(fù)現(xiàn)場

POPPSWRETI中斷入口中斷控制中斷服務(wù)164.5復(fù)習(xí)思考題

1.什么叫中斷?常見的中斷類型有哪幾種?單片機(jī)的中斷系統(tǒng)要完成哪些任務(wù)?2.8051單片機(jī)的中斷系統(tǒng)由哪幾個特殊功能寄存器組成?答:當(dāng)CPU正在處理某件事情的時候,某一事件請求CPU迅速去處理,于是CPU暫時中斷當(dāng)前的工作,轉(zhuǎn)去處理所發(fā)生的事件。處理完該事件以后,再回到原來被中斷的地方,繼續(xù)原來的工作,這樣的過程稱為中斷。常見的中斷類型有兩種:外部和內(nèi)部。中斷系統(tǒng)要完成哪些任務(wù):(1).開中斷或關(guān)中斷,(2).中斷的排隊,(3).中斷的響應(yīng),(4).中斷的撤除。答:定時器控制寄存器TCON;

中斷允許寄存器IE;

中斷優(yōu)先級寄存器IP;

串行口控制寄存器SCON。173.8051單片機(jī)有幾個中斷源?試寫出它們的內(nèi)部優(yōu)先級順序以及各自的中斷服務(wù)子程序入口地址。4.8051單片機(jī)有哪些中斷標(biāo)志位?它們位于哪些特殊功能寄存器中?各中斷標(biāo)志是怎樣產(chǎn)生的?答:8051單片機(jī)有5個中斷源,即2個外部中斷,2個定時器/計數(shù)器中斷源,1個串行口中斷源。TCONSCON185.簡述8051單片機(jī)中斷響應(yīng)全過程。6.用適當(dāng)指令實(shí)現(xiàn)將INT1設(shè)為脈沖下降沿觸發(fā)的高優(yōu)先級中斷源。答:1).單片機(jī)接收到中斷申請后,先把這些申請鎖定在各自的中斷標(biāo)志位中,然后在下一個機(jī)器周期按優(yōu)先級分別查詢這些標(biāo)志。2).CPU在下一個機(jī)器周期響應(yīng)中斷,完成兩件工作:一是把當(dāng)前程序計數(shù)器PC的內(nèi)容送入堆棧保護(hù),另一個是根據(jù)中斷的不同來源把程序的執(zhí)行轉(zhuǎn)移到相應(yīng)的中斷服務(wù)子程序的入口。3).當(dāng)某個中斷請求得到響應(yīng)之后,相應(yīng)的中斷標(biāo)志位應(yīng)該予以清除(即復(fù)“0”)。答:SETBIT1SETBPX119

7.試編程實(shí)現(xiàn)將INT1設(shè)為高優(yōu)先級中斷,且為電平觸發(fā)方式,T0設(shè)為低優(yōu)先級中斷計數(shù)器,串行口中斷為高優(yōu)先級中斷,其余中斷源設(shè)為禁止?fàn)顟B(tài)。8.8051單片機(jī)中,哪些中斷標(biāo)志可以在響應(yīng)后自動撤除?哪些需要用戶撤除?如何撤除?SETBEX0;允許INT0中斷SETBEX1;允許INT1中斷SETBET0;允許T0中斷SETBEX0;允許串行口中斷CLRET1;禁止T1中斷CLRIT1;INT1電平觸發(fā)方式MOVIP,00011100BSETBEA;開中斷答:1).由硬件自動使標(biāo)志位復(fù)“0”(即撤除),它們是:定時器0或1,外部中斷0或12).中斷系統(tǒng)不予以自動撤除,是串行口的中斷請求標(biāo)志。20實(shí)驗三電路如下,用中斷方法實(shí)現(xiàn)LED1和LED2閃亮。LED1LED2B1B221

ORG0000H SJMPMAIN ORG0003H AJMPINT0 ORG0013H AJMPINT1MAIN:SETBEASET

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論