資源描述:
《MCS-51 單片機(jī)的中斷系統(tǒng)ppt課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第5章MCS-51單片機(jī)的中斷系統(tǒng)及定時(shí)器本章主要介紹51系列單片機(jī)中斷系統(tǒng)和定時(shí)器問題,本章將介紹以下具體內(nèi)容:定時(shí)/計(jì)數(shù)器----定時(shí)/計(jì)數(shù)器的定時(shí)和計(jì)數(shù)功能、定時(shí)器/計(jì)數(shù)器的控制寄存器、定時(shí)器/計(jì)數(shù)器的工作方式、定時(shí)/計(jì)數(shù)器用作外部中斷擴(kuò)展、定時(shí)中斷聯(lián)合舉例。中斷系統(tǒng)----中斷源、中斷方式、中斷控制寄存器、中斷響應(yīng)、中斷請(qǐng)求的撤除。CPU與外設(shè)之間傳送數(shù)據(jù)的方式可以有以下幾種:無條件傳送方式查詢方式中斷傳送方式DMA方式§5.1輸入/輸出的控制方式預(yù)備內(nèi)容§5.2MCS-51單片機(jī)的中斷
2、系統(tǒng)5.2.1.MCS-51單片機(jī)的中斷系統(tǒng)結(jié)構(gòu)一、中斷的概念執(zhí)行主程序主程序繼續(xù)執(zhí)行主程序斷點(diǎn)中斷請(qǐng)求中斷響應(yīng)執(zhí)行中斷處理程序中斷返回IE0TF0IE1TF1TIRI中斷請(qǐng)求標(biāo)志EX0ET0EX1ET1ES≥1PX0PT0PX1PT1PS高級(jí)低級(jí)二、MCS-51單片機(jī)的中斷系統(tǒng)(圖5-2)內(nèi)部查詢內(nèi)部查詢?nèi)肟诘刂啡肟诘刂稩NT0INT1T0T1TIRI中斷允許控制中斷優(yōu)先級(jí)EA中斷源一、中斷源共有五個(gè)中斷源,分別是外部中斷兩個(gè)、定時(shí)中斷兩個(gè)和串行中斷一個(gè),它們是:外部中斷0--INT0,由P3
3、.2提供,外部中斷1—INT1,由P3.3提供,外部中斷有兩種信號(hào)方式,即電平方式和脈沖方式。T0溢出中斷;由片內(nèi)定時(shí)/計(jì)數(shù)器0提供T1溢出中斷;由片內(nèi)定時(shí)/計(jì)數(shù)器1提供串行口中斷RI/TI;由片內(nèi)串行口提供5.2.2.MCS-51中斷源二、中斷方式單片機(jī)的中斷為固定入口式中斷,即一響應(yīng)中斷就轉(zhuǎn)入固定入口地址執(zhí)行中斷服務(wù)程序。具體入口如下:中斷源入口地址INT00003HT0000BHINT10013HT1001BHRI/TI0023H在這些單元中往往是一些跳轉(zhuǎn)指令,跳到真正的中斷服務(wù)程序,這是
4、因?yàn)榻o每個(gè)中斷源安排的空間只有8個(gè)單元。三、中斷控制的寄存器與中斷控制有關(guān)的控制寄存器有四個(gè):TCON----定時(shí)控制寄存器,IE----中斷允許控制寄存器,IP----中斷優(yōu)先級(jí)控制寄存器,SCON----及串行口控制寄存器。1.定時(shí)控制寄存器TCOND7D6D5D4D3D2D1D0TF1TF0IE1IT1IE0IT0中斷請(qǐng)求標(biāo)志觸發(fā)方式選擇0低電平1下降沿2.串行口控制寄存器SCOND7D6D5D4D3D2D1D0TIRI串行中斷請(qǐng)求標(biāo)志3.中斷允許控制寄存器IED7D6D5D4D3D2D1
5、D0EAESET1EX1ET0EX04.中斷優(yōu)先級(jí)控制寄存器(IP)D7D6D5D4D3D2D1D0PSPT1PX1PT0PX00禁止,1允許0低級(jí)別,1高級(jí)別四、中斷響應(yīng)響應(yīng)條件----CPU要響應(yīng)中斷需滿足下列條件:①無同級(jí)或高級(jí)中斷正在服務(wù);②當(dāng)前指令周期結(jié)束,如果查詢中斷請(qǐng)求的機(jī)器周期不是當(dāng)前指令的最后一個(gè)周期,則不行;③若現(xiàn)行指令是RETI、RET或訪問IE、IP指令,則需要執(zhí)行到當(dāng)前指令及下一條指令方可響應(yīng)。響應(yīng)過程--單片機(jī)響應(yīng)中斷后,自動(dòng)執(zhí)行下列操作:①置位中斷優(yōu)先級(jí)有效觸發(fā)器,
6、即關(guān)閉同級(jí)和低級(jí)中斷:②調(diào)用入口地址,斷點(diǎn)入棧,相當(dāng)于LCALL指令;③進(jìn)入中斷服務(wù)程序。響應(yīng)時(shí)間--從查詢中斷請(qǐng)求標(biāo)志位到轉(zhuǎn)向中斷服務(wù)入口地址所需的機(jī)器周期數(shù)。(1)最快響應(yīng)時(shí)間以外部中斷的電平觸發(fā)為最快。從查詢中斷請(qǐng)求信號(hào)到中斷服務(wù)程序需要三個(gè)機(jī)器周期:1個(gè)周期(查詢)+2個(gè)周期(長(zhǎng)調(diào)用LCALL)(2)最長(zhǎng)時(shí)間若當(dāng)前指令是RET、RETI和IP、IE指令,緊接著下一條是乘除指令發(fā)生,則最長(zhǎng)為8個(gè)周期:2個(gè)周期執(zhí)行當(dāng)前指令(其中含有1個(gè)周期查詢)+4個(gè)周期乘除指令+2個(gè)周期長(zhǎng)調(diào)用=8個(gè)周期。
7、中斷返回—中斷處理程序的最后一條指令是RETI,它使CPU結(jié)束中斷處理程序的執(zhí)行,返回到斷點(diǎn)處,繼續(xù)執(zhí)行主程序。5.2.3.中斷程序舉例p83圖5-4圖5-4為單片機(jī)數(shù)據(jù)傳輸示意圖。外設(shè)數(shù)據(jù)經(jīng)P1口輸入單片機(jī),每準(zhǔn)備好一個(gè)數(shù)據(jù),外設(shè)發(fā)出選通信號(hào),經(jīng)觸發(fā)器和非門至INT0。P1口P3.0QDCLKCLR選通信號(hào)+5V1INT0數(shù)據(jù)8031數(shù)據(jù)傳送過程:外設(shè)每準(zhǔn)備好一個(gè)數(shù)據(jù)后,發(fā)出選通信號(hào),使觸發(fā)器輸出1再經(jīng)非門得0至INT0,向CPU發(fā)出中斷請(qǐng)求,CPU響應(yīng)這個(gè)中斷請(qǐng)求后,在中斷處理程序中先撤除中
8、斷請(qǐng)求信號(hào),(通過P3.0=0,使INT0=1)再由P1口輸入數(shù)據(jù)到單片機(jī)內(nèi)部。P1口P3.0QDCLKCLR選通信號(hào)+5V1INT0數(shù)據(jù)8031程序清單:ORG0000HSTART:LJMPMAINORG0003HLJMPIINT0ORG0030H;主程序MAIN:CLRIT0;低電平觸發(fā)SETBEASETBEX0;開中斷MOVDPTR,#1000H...ORG0100HIINT0:PUSHPSW;中斷處理程序PUSHACCCLRP3.0NOPNOPSETBP3.0;撤除INT0MOVA,P1