![單片機MCS-51的中斷系統(tǒng)課件_第1頁](http://file4.renrendoc.com/view/ba310fa3a47f2568e0d63f9c9bb71a2f/ba310fa3a47f2568e0d63f9c9bb71a2f1.gif)
![單片機MCS-51的中斷系統(tǒng)課件_第2頁](http://file4.renrendoc.com/view/ba310fa3a47f2568e0d63f9c9bb71a2f/ba310fa3a47f2568e0d63f9c9bb71a2f2.gif)
![單片機MCS-51的中斷系統(tǒng)課件_第3頁](http://file4.renrendoc.com/view/ba310fa3a47f2568e0d63f9c9bb71a2f/ba310fa3a47f2568e0d63f9c9bb71a2f3.gif)
![單片機MCS-51的中斷系統(tǒng)課件_第4頁](http://file4.renrendoc.com/view/ba310fa3a47f2568e0d63f9c9bb71a2f/ba310fa3a47f2568e0d63f9c9bb71a2f4.gif)
![單片機MCS-51的中斷系統(tǒng)課件_第5頁](http://file4.renrendoc.com/view/ba310fa3a47f2568e0d63f9c9bb71a2f/ba310fa3a47f2568e0d63f9c9bb71a2f5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第四章MCS-51的中斷系統(tǒng)4.1中斷的概念4.2MCS-51中斷系統(tǒng)的結(jié)構(gòu)4.3中斷請求源4.4中斷控制4.5中斷響應(yīng)4.6外部中斷的響應(yīng)時間4.7外部中斷的觸發(fā)方式選擇4.8中斷請求的撤銷4.9中斷服務(wù)程序的設(shè)計4.10多外部中斷源系統(tǒng)設(shè)計第四章MCS-51的中斷系統(tǒng)4.1中斷的概念教學目標
1.介紹MCS-51中斷系統(tǒng)及中斷控制;2.介紹中斷處理的過程;3.介紹中斷應(yīng)用程序的編程。重點難點1.熟悉中斷、中斷源、中斷服務(wù)程序、保護現(xiàn)場、恢復現(xiàn)場、中斷優(yōu)先級、中斷處理等概念;2.掌握51中斷入口地址和各中斷控制寄存器含義及應(yīng)用:包括TCON、SCON、IE和IP;3.掌握中斷初始化和中斷服務(wù)程序的編制。教學目標
MCS-51有很強的I/O接口擴展能力,I/O外設(shè)擴展后,單片機要與各種形式的外設(shè)相連,這些外設(shè)的結(jié)構(gòu)形式、信號種類與大小、工作速度的快慢相差很大,這就需要研究單片機與外設(shè)交換數(shù)據(jù)的方法。目前CPU與外設(shè)交換信息通常有以下幾種形式:輸入/輸出的控制方式MCS-51有很強的I/O接口擴展能力,I/O外設(shè)擴一、無條件傳送方式CPU總是認為外設(shè)在任何時刻都處于“準備好”的狀態(tài)。這種傳送方式不需要交換狀態(tài)信息,只需在程序中加入訪問外設(shè)的指令,數(shù)據(jù)傳送便可以實現(xiàn)。此種方法很少使用。一、無條件傳送方式CPU總是認為外設(shè)在任何時刻都處于“準備好二、查詢方式傳送
也稱程序控制法,先查詢I/O設(shè)備當前狀態(tài),若準備就緒,則交換數(shù)據(jù),否則循環(huán)查詢狀態(tài)。優(yōu)點:通用性好,可以用于各類外設(shè)和CPU間的數(shù)據(jù)傳送。缺點:CPU在完成一次數(shù)據(jù)傳送后要等待很長時間才能進行下一次的傳送。在等待過程中,CPU不能進行其他操作,所以效率比較低。 二、查詢方式傳送優(yōu)點:通用性好,可以用于各類外設(shè)和CPU間的三、中斷方式傳送
大多數(shù)時間計算機與外設(shè)并行工作,計算機不必因等待而浪費資源。當外設(shè)準備就緒,向CPU發(fā)出中斷請求信號。CPU暫停當前程序,執(zhí)行I/O操作。當I/O操作結(jié)束,CPU仍繼續(xù)被中斷的工作。三、中斷方式傳送4.1中斷的概念執(zhí)行主程序主程序繼續(xù)執(zhí)行主程序斷點中斷請求中斷響應(yīng)執(zhí)行中斷處理程序中斷返回4.1中斷的概念執(zhí)行主程序繼續(xù)執(zhí)行主程序斷點中斷請求中斷響中斷系統(tǒng):實現(xiàn)中斷功能的部件。中斷服務(wù)程序:中斷之后所執(zhí)行的處理程序,原來運行的程序稱為主程序。斷點:主程序被斷開的位置(地址)。中斷源:向CPU發(fā)出中斷請求的來源。中斷請求:中斷源向CPU提出的處理請求,又稱中斷申請。
中斷的相關(guān)概念中斷系統(tǒng):實現(xiàn)中斷功能的部件。中斷的相關(guān)概念實現(xiàn)實時控制處理。提高處理故障的能力;解決CPU和外設(shè)之間的速度匹配問題,提高CPU的效率;實現(xiàn)人機對話。一般由鍵盤、按鈕等發(fā)出中斷請求,當CPU響應(yīng)中斷后,在中斷服務(wù)程序中實現(xiàn)人機對話。中斷方式的特點實現(xiàn)實時控制處理。提高處理故障的能力;中斷方式的特點4.2MCS-51中斷系統(tǒng)的結(jié)構(gòu)5個中斷源;2個中斷優(yōu)先級,可實現(xiàn)兩級中斷嵌套;中斷使能可編程控制;中斷優(yōu)先級可編程控制;復位后,所有中斷被禁止,且為低優(yōu)先級。4.2MCS-51中斷系統(tǒng)的結(jié)構(gòu)5個中斷源;MCS-51的中斷系統(tǒng)結(jié)構(gòu)框圖MCS-51的中斷系統(tǒng)結(jié)構(gòu)框圖4.3中斷請求源1.外部中斷類
由外部原因引起的:/INT0——外部中斷0請求信號。由P3.2引腳輸入,中斷請求標志為IE0。/INT1——外部中斷1請求信號。由P3.3引腳輸入,中斷請求標志為IE1。
MCS-51的中斷源可分為三類:外部中斷、定時/計數(shù)器溢出中斷和串行口中斷。
4.3中斷請求源1.外部中斷類MCS-51的中2.定時/計數(shù)中斷類
定時/計數(shù)中斷是為滿足定時或計數(shù)溢出處理的需要而設(shè)置的。在定時方式下,脈沖信號在單片機芯片內(nèi)部發(fā)生,無需在芯片上設(shè)置引入端;但在計數(shù)方式時,中斷源由單片機芯片外部引入。
定時器/計數(shù)器T0溢出中斷請求:中斷請求標志為TF0。
定時器/計數(shù)器T1溢出中斷請求:中斷請求標志為TF1。
2.定時/計數(shù)中斷類3.串行口中斷類
串行口中斷為串行通信的需要而設(shè)置的。
RI或TI——串行口中斷請求標志。各中斷源對應(yīng)的中斷服務(wù)程序入口地址:
中斷源入口地址
外部中斷00003H
定時器T0中斷 000BH
外部中斷1 0013H 定時器T1中斷 001BH 串行口中斷 0023H
3.串行口中斷類中斷請求標志中斷源申請中斷時,要將相應(yīng)的中斷請求標志置位。CPU查詢這些中斷標志位狀態(tài),以決定是否響應(yīng)中斷。MCS-51中斷標志位鎖存在定時器控制寄存器TCON和串行口控制寄存器SCON中。1.定時器控制寄存器TCONTF1TR1TF0TR0IE1IT1IE0IT08FH8EH8DH8CH8BH8AH89H88HD7D6D5D4D3D2D1D0TCON位地址字節(jié)地址:88H中斷請求標志中斷源申請中斷時,要將相應(yīng)的中斷請求標志IT0和IT1:外部中斷請求信號觸發(fā)方式控制位IT0(或IT1)=0:電平觸發(fā),INT0(或INT1)低電平有效;IT0(或IT1)=1:邊沿觸發(fā),引腳INT0(或INT1)上的電平由高到低負跳變有效;IT0(或IT1)位可由用戶軟件置1或清0。各控制位的含義IT0和IT1:外部中斷請求信號觸發(fā)方式控制位各控制位的含義IE0和IE1:外部中斷請求標志位若IT0=0(或IT1=0),每個機器周期的S5P2采樣INT0(或INT1),若INT0=0則IE0(或IE1)由片內(nèi)硬件自動置1;當IT0=1(或IT1=1)時,第一個機器周期采樣到INT0(或INT1)為高電平,第二個機器周期為低電平,則IE0(或IE1)=1。IE0(或IE1)=1表示外部中斷正在向CPU申請中斷,當CPU響應(yīng)中斷,轉(zhuǎn)向中斷服務(wù)程序時,由硬件自動清“0”IE0(或IE1)。IE0和IE1:外部中斷請求標志位TF0和TF1:定時器/計數(shù)器溢出中斷請求標志位T0(或T1)啟動計數(shù)后,加1計數(shù),當最高位發(fā)生計數(shù)溢出時,TF0(或TF1)由片內(nèi)硬件自動置1,向CPU請求中斷;當完成中斷響應(yīng),并轉(zhuǎn)向中斷服務(wù)程序時,由片內(nèi)硬件自動清0。該標志位也可用于查詢方式(非中斷方式),即用戶程序查詢該位狀態(tài),判斷是否應(yīng)轉(zhuǎn)向?qū)?yīng)的處理程序段。待轉(zhuǎn)入處理程序后,必須由軟件清0。注意:MCS-51復位后,TCON被清0。TF0和TF1:定時器/計數(shù)器溢出中斷請求標志位注意:MCS2.串行口控制寄存器SCONSCON的字節(jié)地址為98H,可以位尋址:位地址是9FH~98H。位序D7D6D5D4D3D2D1D0位地址9FH9EH9DH9CH9BH9AH99H98H位符號SM0SM1SM2RENTB8RB8TIRISCON為串行口控制寄存器,其低2位鎖存串行口的接收中斷和發(fā)送中斷標志RI和TI。2.串行口控制寄存器SCONSCON的字節(jié)地址為9TI(SCON.1):串行口發(fā)送中斷請求標志位。當CPU通過串行口每發(fā)送完一幀數(shù)據(jù),TI由硬件自動置1。CPU響應(yīng)中斷時,不能自動清除TI,在轉(zhuǎn)向中斷服務(wù)程序后必須由軟件清0。RI(SCON.0):串行口接收中斷請求標志位。當允許串行口接收數(shù)據(jù)時,每接收完一幀數(shù)據(jù),RI由硬件自動置1。同樣,RI必須在中斷服務(wù)程序中用軟件清0。TI(SCON.1):串行口發(fā)送中斷請求標志位。TI和RI為何必須軟件清0?
因為串行口無論是發(fā)送中斷還是接收中斷,中斷向量地址是惟一的,即0023H。待轉(zhuǎn)向中斷服務(wù)程序后,必須用軟件查詢TI或RI的狀態(tài),方可判斷是串行發(fā)送中斷還是串行接收中斷,從而轉(zhuǎn)向不同的處理程序段。這就是TI和RI不能由片內(nèi)硬件自動清0,而必須由軟件清0的原因。TI和RI為何必須軟件清0?因為串行4.4中斷控制1.中斷允許寄存器IECPU對中斷系統(tǒng)所有中斷以及某個中斷源的開放和屏蔽是由中斷允許寄存器IE控制的。IE的字節(jié)地址是A8H,可位尋址,位地址為AFH~A8H。位序D7D6D5D4D3D2D1D0位地址AFHAEHADHACHABHAAHA9HA8H位符號EA——ESET1EX1ET0EX0中斷允許寄存器IE的格式4.4中斷控制1.中斷允許寄存器IECPU對中斷EA(IE.7):中斷允許總控制位。EA=1,CPU開放所有中斷。對各中斷源的中斷請求是否允許,還要取決于各中斷源的中斷允許控制位的狀態(tài)。這就是所謂的兩級控制;EA=0,屏蔽所有的中斷請求。ES(IE.4):串行口中斷允許位。ES=1,允許串行口中斷;ES=0,禁止串行口中斷。ET1(IE.3):定時器1中斷允許位。ET1=1,允許定時器1中斷;ET1=0,禁止定時器1中斷。
中斷允許寄存器IE各位含義:EA(IE.7):中斷允許總控制位。中斷允許寄存器IE各位含EX1(IE.2):外部中斷1中斷允許位。EX1=1,允許外部中斷1中斷;EX1=0,禁止外部中斷1中斷。ET0(IE.1):定時器0中斷允許位。
ET0=1,允許定時器0中斷;ET0=0,禁止定時器0中斷。EX0(IE.0):外部中斷0中斷允許位。
EX0=1,允許外部中斷0中斷;EX0=0,禁止外部中斷0中斷。單片機響應(yīng)中斷后不會自動關(guān)中斷,因此在轉(zhuǎn)到中斷服務(wù)程序后,應(yīng)用軟件完成關(guān)閉或打開中斷操作。8051單片機系統(tǒng)復位后,IE中各中斷允許位均被清0,即禁止所有中斷。EX1(IE.2):外部中斷1中斷允許位。單片機響應(yīng)中斷后不IE寄存器的設(shè)置位操作指令:
SETBBIT CLRBIT字節(jié)操作指令:
MOVIE,#DATA ANLIE,#DATAORLIE,#DATAMOVIE,AIE寄存器的設(shè)置位操作指令:SETBBIT例:假設(shè)允許片內(nèi)定時器/計數(shù)器中斷,禁止其他中斷。試根據(jù)假設(shè)條件設(shè)置IE的相應(yīng)值。解:(IE)=10001010B=8AH(a)用字節(jié)操作指令 MOVIE,#8AH或MOVA8H,#8AH
(b)用位操作指令 SETBET0
;定時器/計數(shù)器0允許中斷 SETBET1
;定時器/計數(shù)器1允許中斷 SETBEA
;CPU開中斷例:假設(shè)允許片內(nèi)定時器/計數(shù)器中斷,禁止其他中斷。試根據(jù)假設(shè)2.中斷優(yōu)先級控制寄存器IPMCS-51單片機具有高、低兩個中斷優(yōu)先級。各中斷源優(yōu)先級由IP寄存器有關(guān)位設(shè)置。每個中斷請求源均可編程為高優(yōu)先級中斷或低優(yōu)先級中斷。IP寄存器的字節(jié)地址為B8H,可以位尋址,位地址為BFH~B8H。位序D7D6D5D4D3D2D1D0位地址BFHBEHBDHBCHBBHBAHB9HB8H位符號———PSPT1PX1PT0PX0中斷優(yōu)先級控制寄存器IP的格式2.中斷優(yōu)先級控制寄存器IPMCS-51單片機具有高、低兩中斷優(yōu)先級寄存器IP各控制位的含義①PS—串行口中斷優(yōu)先級控制位②PT1—定時器/計數(shù)器T1中斷優(yōu)先級控制位③PX1—外部中斷1中斷優(yōu)先級控制位④PT0—定時器/計數(shù)器T0中斷優(yōu)先級控制位⑤PX0—外部中斷0中斷優(yōu)先級控制位若某控制位為1,則相應(yīng)的中斷源規(guī)定為高級中斷;反之為0,則相應(yīng)的中斷源規(guī)定為低級中斷。當系統(tǒng)復位后,IP低5位全部清“0”,將所有中斷源設(shè)置為低優(yōu)先級中斷。中斷優(yōu)先級寄存器IP各控制位的含義①PS—串行口中斷優(yōu)先級控中斷優(yōu)先級控制中的特殊情況(1)自然優(yōu)先級(2)中斷嵌套中斷優(yōu)先級控制中的特殊情況(1)自然優(yōu)先級(1)自然優(yōu)先級當同時接收到幾個同一優(yōu)先級的中斷請求時,響應(yīng)哪個中斷源則取決于內(nèi)部硬件查詢順序。其優(yōu)先級順序排列如下圖
所示。(1)自然優(yōu)先級當同時接收到幾個同一優(yōu)先級的中斷請求時,響應(yīng)中斷優(yōu)先級排列順序中斷源
同級內(nèi)的中斷優(yōu)先級外部中斷0中斷高級定時器/計數(shù)器T0溢出中斷外部中斷1定時器/計數(shù)器T1溢出中斷串行口中斷低級中斷優(yōu)先級排列順序中斷源 同級內(nèi)的中斷優(yōu)先級CPU在執(zhí)行主程序低級中斷請求響應(yīng)低級中斷請求CPU執(zhí)行低級中斷服務(wù)程序高級中斷請求響應(yīng)高級中斷請求CPU執(zhí)行高級中斷服務(wù)程序返回低級中斷程序返回主程序(2)兩級中斷嵌套CPU在執(zhí)行主程序低級中響應(yīng)低級中斷請求CPU執(zhí)行低級高級中不同級中斷源同時申請中斷時:先高后低同一級的中斷源同時申請中斷時:事先規(guī)定處理低級中斷又收到高級中斷申請時:停低轉(zhuǎn)高處理高級中斷又收到低級中斷申請時:高不睬低MCS-51對中斷的處理原則為了實現(xiàn)上述原則,中斷系統(tǒng)內(nèi)部設(shè)有兩個用戶不能尋址的優(yōu)先級生效觸發(fā)器:高優(yōu)先級生效觸發(fā)器和低優(yōu)先級生效觸發(fā)器。不同級中斷源同時申請中斷時:先高后低MCS-51對中斷的處理例:設(shè)置IP初值,使8031的2個外部中斷源為高優(yōu)先級,其它中斷源為低優(yōu)先級。解:(IP)=00000101B=05H (a)用字節(jié)操作指令
MOVIP,#05H或MOV0B8H,#05H(b)用位操作指令
SETBPX0 SETBPX1 CLRPS CLRPT0 CLRPT1例:設(shè)置IP初值,使8031的2個外部中斷源為高優(yōu)先4.5中斷響應(yīng)及處理過程中止現(xiàn)行程序,保護斷點轉(zhuǎn)入中斷服務(wù)程序入口保護現(xiàn)場中斷服務(wù)恢復現(xiàn)場中斷返回(RETI)中斷處理流程圖中斷響應(yīng)中斷返回中斷處理中斷請求CPU響應(yīng)中斷中斷請求一個完整的中斷處理的基本過程應(yīng)該包括:中斷請求、中斷響應(yīng)、中斷處理以及中斷返回。4.5中斷響應(yīng)及處理過程中止現(xiàn)行程序,保護斷點轉(zhuǎn)入中中斷請求是中斷源向CPU發(fā)出請求中斷的信號。
一般單片機提供有多條中斷請求線,當中斷源有服務(wù)要求時,可通過中斷請求線,向CPU發(fā)出信號,請求CPU中斷。一、中斷請求中斷請求是中斷源向CPU發(fā)出請求中斷的信號。一、中斷請求1.CPU的中斷響應(yīng)條件
有中斷源發(fā)出中斷申請;CPU開中斷,即中斷總允許位EA=1;申請中斷的中斷源的中斷允許位為1,即此中斷源可以向CPU申請中斷;無同級或更高級中斷正在被服務(wù)。
二、中斷響應(yīng)
中斷響應(yīng)是在滿足CPU的中斷響應(yīng)條件之后,CPU對中斷源中斷請求的回答。1.CPU的中斷響應(yīng)條件二、中斷響應(yīng)中斷響應(yīng)是在滿2.中斷標志位的查詢單片機在每個機器周期的S5P2狀態(tài)根據(jù)中斷請求信號的狀態(tài)置位各自的中斷請求標志。在下一個機器周期的S6狀態(tài)下,按中斷優(yōu)先級順序?qū)χ袛嗾埱髽酥疚贿M行查詢。如果查詢到有的標志位為1,則表明有中斷請求發(fā)生,因此緊接著的下一個機器周期的S1狀態(tài)開始進入中斷響應(yīng)周期。2.中斷標志位的查詢單片機在每個機器周期的S5P2狀態(tài)根據(jù)中中斷查詢在每個機器周期都要重復執(zhí)行,但如果遇到下列條件之一,雖然中斷標志位為1,也不能立即產(chǎn)生中斷:CPU正在處理同級或高一級的中斷;查詢周期不處于執(zhí)行當前指令的最后一個機器周期。這樣是為了使當前指令執(zhí)行完畢后才響應(yīng)中斷,以確保當前指令的完整執(zhí)行;當前正在執(zhí)行返回(RETI)指令或訪問寄存器IE或IP的指令。因為按中斷系統(tǒng)的特性規(guī)定,在執(zhí)行完這些指令之后,還應(yīng)再繼續(xù)執(zhí)行一條指令,方可響應(yīng)中斷。
由于存在中斷阻斷的情況而未被及時響應(yīng),待上述封鎖中斷的條件被撤消之后,由于中斷標志還存在,仍會響應(yīng)。
中斷查詢在每個機器周期都要重復執(zhí)行,但如果遇到下列條中斷響應(yīng)操作CPU響應(yīng)周期完成如下操作:將相應(yīng)的優(yōu)先級生效觸發(fā)器置1;硬件清除相應(yīng)的中斷請求標志(串行口中斷標志需要用軟件清除);執(zhí)行一條硬件自動生成子程序調(diào)用指令:執(zhí)行中斷服務(wù)程序LCALLaddr16
;addr16:中斷向量地址中斷響應(yīng)操作CPU響應(yīng)周期完成如下操作:LCALLadd中斷處理程序(又稱中斷服務(wù))從入口地址開始執(zhí)行,直到返回指令“RETI”為止,這個過程稱為中斷處理。三、中斷處理一般包括保護現(xiàn)場和處理中斷源的請求及恢復現(xiàn)場三部分內(nèi)容。一般累加器A、PSW寄存器和其它一些特殊功能寄存器的內(nèi)容需要保護。中斷處理程序(又稱中斷服務(wù))從入口地址開始執(zhí)行,直到將優(yōu)先級生效觸發(fā)器清0;從堆棧中彈出棧頂?shù)膬蓚€字節(jié)內(nèi)容送PC——恢復斷點;CPU轉(zhuǎn)到斷點處繼續(xù)執(zhí)行原程序。四、中斷返回(RETI執(zhí)行后)將優(yōu)先級生效觸發(fā)器清0;四、中斷返回(RETI執(zhí)行后)4.6中斷響應(yīng)時間
中斷響應(yīng)時間是從查詢中斷標志位的那個機器周期到轉(zhuǎn)向中斷入口地址所需要的機器周期數(shù)。不同的情況下對中斷響應(yīng)的時間是不同的:對于順利的中斷響應(yīng),其最短響應(yīng)時間為3個機器周期。若中斷系統(tǒng)只有一個中斷源,則響應(yīng)時間為3~8個機器周期之間。對于受阻的中斷響應(yīng),則響應(yīng)時間會更長一些。一般情況下,可不考慮響應(yīng)時間,只在精確定時控制的場合需要考慮此問題。4.6中斷響應(yīng)時間中斷響應(yīng)時間是從查詢中斷標志位的4.7外部中斷的觸發(fā)方式選擇外部中斷的觸發(fā)方式:電平觸發(fā)和邊沿觸發(fā)。1.電平觸發(fā)方式特點:中斷標志位的狀態(tài)隨CPU在每個機器周期采樣到的外部中斷輸入引腳的電平變化而變化,這樣能提高CPU對外部中斷請求的響應(yīng)速度。要求:外部中斷源若有請求,必須把有效的低電平保持到請求獲得響應(yīng)時為止,不然就會漏掉;而在中斷服務(wù)程序結(jié)束之前,中斷源又必須撤消其有效的低電平,否則中斷返回之后將再次產(chǎn)生中斷。電平觸發(fā)方式適合于外部中斷請求信號以低電平輸入且中斷服務(wù)程序能清除外部中斷請求源的情況。4.7外部中斷的觸發(fā)方式選擇外部中斷的觸發(fā)方式:電平觸發(fā)和2.邊沿觸發(fā)方式特點:CPU采樣到下降沿,則在IE0或IE1中將鎖存一個邏輯1。即便是CPU暫時不能響應(yīng),中斷申請標志也不會丟失,直到CPU響應(yīng)此中斷時才清零。要求:為保證下降沿能被可靠地采樣到,外部中斷引腳上的高低電平(負脈沖的寬度)均至少要保持一個機器周期(若晶振為12MHz時,為1微秒)。邊沿觸發(fā)方式適合于以負脈沖形式輸入的外部中斷請求。2.邊沿觸發(fā)方式特點:CPU采樣到下降沿,則在IE0或IE1(1)定時器0或1溢出中斷。CPU在響應(yīng)中斷后,中斷請求自動撤消。(2)邊沿觸發(fā)的外部中斷。CPU在響應(yīng)中斷后,硬件自動清除有關(guān)的中斷請求。(3)串行口中斷。CPU響應(yīng)中斷后,靠軟件來清除相應(yīng)的標志。4.8中斷請求的撤消
CPU響應(yīng)某中斷請求后,在中斷返回前,應(yīng)撤消該中斷請求,避免重復響應(yīng)。
CLRTI;清TI標志位CLRRI;清RI標志位(1)定時器0或1溢出中斷。CPU在響應(yīng)中斷后,中斷請求自動電平方式外部中斷請求的撤除方法較復雜。
圖4.8是撤除電平方式的中斷請求的可行方案之一:用P1.0接在觸發(fā)器的直接置位端S端作為應(yīng)答線。
當CPU響應(yīng)中斷后可使用如下兩條指令:
SETBP1.0
;將P1.0置1
CLRP1.0
;將P1.0清0電平方式外部中斷請求的撤除方法較復雜。圖4.8是撤除圖4.8電平方式外部中斷請求的撤消電路圖4.8電平方式外部中斷請求的撤消電路4.9中斷程序的設(shè)計包含中斷初始化程序和中斷服務(wù)程序兩部分。
一、中斷初始化程序
中斷初始化程序?qū)嵸|(zhì)上就是對TCON、SCON、IE和IP寄存器的管理和控制。中斷初始化程序一般不獨立編寫,而是包含在主程序中,中斷初始化程序需完成以下操作:
1.IE設(shè)置。CPU開中斷;2.某一中斷源中斷請求的允許與禁止(屏蔽);
3.IP設(shè)置。確定各中斷源的優(yōu)先級;4.若是外部中斷請求,則要設(shè)定觸發(fā)方式是電平觸發(fā)還是邊沿觸發(fā)。
4.9中斷程序的設(shè)計包含中斷初始化程序和中斷服務(wù)程序兩部分例:假設(shè)規(guī)定外部中斷0為電平觸發(fā)方式,高優(yōu)先級,試寫出有關(guān)的初始化程序。
解:可用兩種方法完成。①方法1,用位操作指令完成:
SETBEA ;開中斷允許總控制位
SETBEX0 ;外中斷0開中斷
SETBPX0 ;外中斷0高優(yōu)先級CLRIT0 ;電平觸發(fā)②方法2,用其它指令也可完成同樣功能:
MOVIE,#81H
;同時置位EA和EX0ORLIP,#01H
;置位PX0ANLTCON,#0FEH
;使IT0為0
例:假設(shè)規(guī)定外部中斷0為電平觸發(fā)方式,高優(yōu)先級,試寫出有關(guān)的二、采用中斷時的主程序結(jié)構(gòu)
ORG0000H
LJMP MAIN
ORG0003H
LJMPINT0SER
ORG000BH LJMPT0SER ……
ORG 0030HMAIN:
主程序INT0SER:
外部中斷0中斷服務(wù)程序T0SER:
定時器0中斷服務(wù)程序二、采用中斷時的主程序結(jié)構(gòu) ORG0000H三、中斷服務(wù)程序
中斷服務(wù)程序是為中斷源的特定要求服務(wù)的獨立程序段,以中斷返回指令RETI結(jié)束。
中斷服務(wù)程序流程:關(guān)中斷保護現(xiàn)場開中斷中斷服務(wù)關(guān)中斷恢復現(xiàn)場開中斷返回三、中斷服務(wù)程序中斷服務(wù)程序是為中斷源的特定要求服務(wù)工作寄存器的現(xiàn)場保護和恢復壓棧和出棧使用直接尋址方式。寄存器組的切換。設(shè)置PSW的RS1、RS0位,便可起到現(xiàn)場保護的目的。例:原程序運行中使用0組,即RS1RS0=00,中斷服務(wù)程序使用1組。
PUSHPSW;保護0組CLRRS1;使用1組SETBRS0…POPPSW;恢復0組RETI;中斷返回工作寄存器的現(xiàn)場保護和恢復壓棧和出棧使用直接尋址方式。中斷服務(wù)程序編制中的注意事項①視需要確定是否保護現(xiàn)場。②及時清除那些不能被硬件自動清除的中斷請求標志,以免產(chǎn)生錯誤的中斷。③中斷服務(wù)程序中的壓棧與彈棧指令必須成對使用,以確保中斷服務(wù)程序的正確返回。④主程序和中斷服務(wù)程序之間的參數(shù)傳遞與主程序和子程序的參數(shù)傳遞方式相同。中斷服務(wù)程序編制中的注意事項①視需要確定是否保護現(xiàn)場。典型中斷服務(wù)程序INT:CLREA;CPU關(guān)中斷
PUSHPSW
;現(xiàn)場保護
PUSHACC
; SETBEA ;CPU開中斷
中斷服務(wù)程序 CLREA;CPU關(guān)中斷
POPACC
;現(xiàn)場恢復
POPPSW
;SETBEA;CPU開中斷
RETI
;中斷返回,恢復斷點典型中斷服務(wù)程序INT:CLREA;CMCS-51單片機有兩個外部中斷請求輸入端(INT0和INT1)。實際應(yīng)用中,若外部中斷源有兩個以上,則需要擴展外部中斷源。
利用定時器擴展外部中斷源
中斷加查詢擴展外部中斷源
用優(yōu)先權(quán)編碼器擴展外部中斷源4.10多外部中斷源系統(tǒng)設(shè)計MCS-51單片機有兩個外部中斷請求輸入端(利用定時器擴展外部中斷源MCS-51單片機有兩個定時器,具有兩個內(nèi)部中斷標志和外部計數(shù)輸入引腳。當定時器設(shè)置為計數(shù)方式時,計數(shù)初值設(shè)置為滿量程FFH。一旦外部信號從計數(shù)器引腳輸入一個負跳變信號,計數(shù)器加1產(chǎn)生溢出中斷,從而轉(zhuǎn)去處理該外部中斷源的請求。方法:(1)定時器/計數(shù)器輸入信號端T0、T1作外部中斷輸入。(2)選擇計數(shù)方式,設(shè)置為工作方式2,初值0FFH,允許T0、T1中斷,CPU開放中斷,啟動計數(shù)。數(shù)據(jù)自動加載方式:TL:計數(shù)器TH:預置計數(shù)器利用定時器擴展外部中斷源MCS-51單片機有兩個定時器,具有例:T0設(shè)置為外部計數(shù)模式,工作在方式2(初值自動重裝)。計數(shù)器TH0、TL0初值均為0FFH,并允許T0中斷,CPU開放中斷。
ORG0000HAJMPIINI;跳到T0初始化程序
ORG000BHLJMPT0IR……IINI:MOVTMOD,#06H;設(shè)置T0的工作方式寄存器MOVTL0,#0FFH;T0置初值MOVTH0,#0FFHSETBETO;允許T0中斷SETBEA;CPU開中斷
SETBTRO;啟動T0,開始計數(shù)……T0IR:外部中斷服務(wù)程序例:T0設(shè)置為外部計數(shù)模式,工作在方式2(初值自動重裝)。計中斷加查詢擴展外部中斷源方法:用一個中斷入口接受多個外部中斷源,并加入中斷查詢電路。中斷源由硬件產(chǎn)生,中斷源的識別由程序查詢處理。具體線路如圖5-11所示。有關(guān)中斷服務(wù)程序的片段中斷加查詢擴展外部中斷源方法:用一個中斷入口接受多個外部中斷多個外部中斷源連接法INT0INT1P1.0P1.1P1.2P1.38051裝置1裝置2裝置3裝置4+5V多個外部中斷源連接法INT08051裝置1裝置2裝置3裝置4DV1:…
裝置1的中斷服務(wù)程序AJMPEXITDV2:…
裝置2的中斷服務(wù)程序AJMPEXITDV3:…
裝置3的中斷服務(wù)程序AJMPEXITDV4:…
裝置4的中斷服務(wù)程序AJMPEXIT
ORG0003HLJMPINTRP
;INT0中斷服務(wù)程序入口
ORG 1000HINTRP:CLREA;INT0中斷服務(wù)程序是一個中斷查詢程序服務(wù)程序PUSHPSW PUSHACCJB P1.0,DV1JB P1.1,DV2JB P1.2,DV3JB P1.3,DV4EXIT:POP ACCPOPPSWSETBEARETIDV1:…ORG用優(yōu)先權(quán)編碼器擴展外部中斷源74LS148(優(yōu)先權(quán)編碼器)真值表輸入輸出/EI01234567A2A1A0/GSHXXXXXXXXHHHHLHHHHHHHHHHHHLXXXXXXXLLLLLLXXXXXXLHLLHLLXXXXXLHHLHLLLXXXXLHHHLHHLLXXXLHHHHHLLLLXXLHHHHHHLHLLXLHHHHHHHHLLLLHHHHHHHHHHL用優(yōu)先權(quán)編碼器擴展外部中斷源74LS148(優(yōu)先權(quán)編碼器)真INT1P1.3P1.2P1.18051IR0IR1IR2IR3+5VGS74LS148A2A1A0○76543210IR4IR5IR6IR7EI○硬件電路INT18051IR0IR1IR2IR3+5VGS
ORG00
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 業(yè)主物業(yè)申請書
- 怎樣寫調(diào)休申請書
- 2024-2025年高中化學1.1第1課時化學實驗安全過濾和蒸發(fā)講義+練習新人教版必修1
- 2024-2025學年高中地理課時作業(yè)8城市化過程對地理環(huán)境的影響湘教版必修2
- 2024-2025學年高中數(shù)學第三章概率3.1隨機事件的概率3.1.1頻率與概率學案北師大版必修3
- 2024-2025學年高中數(shù)學第三章概率3.2.1古典概型練習含解析新人教A版必修3
- 2024-2025年新教材高中生物第3章第1節(jié)細胞膜的結(jié)構(gòu)和功能教案新人教版必修1
- 現(xiàn)代企業(yè)營銷策略與市場開拓方法研究
- 環(huán)保技術(shù)在辦公設(shè)備中的應(yīng)用實例
- 2025年度物流企業(yè)信息化安全防護合同
- 2023三年級語文下冊 第八單元 語文園地配套教案 新人教版
- DZ∕T 0215-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 煤(正式版)
- 外出檢查病人突發(fā)呼吸心跳驟停應(yīng)急預案演練
- 《火力發(fā)電廠汽水管道設(shè)計規(guī)范+DLT+5054-2016》詳細解讀
- 幕墻施工成品及半成品保護措施
- 基于單片機的交通燈控制系統(tǒng)設(shè)計畢業(yè)論文
- 威圖電柜空調(diào)SK3304500使用說書
- 2024年執(zhí)業(yè)醫(yī)師考試-醫(yī)師定期考核(口腔)筆試參考題庫含答案
- 中國律師學 課件 陳衛(wèi)東 第10-17章 律師收費制度-律師非訴訟業(yè)務(wù)(二)
- (高清版)TDT 1040-2013 土地整治項目制圖規(guī)范
- 中國移動行測測評題及答案
評論
0/150
提交評論