MCS-51單片機(jī)的中斷系統(tǒng)_第1頁(yè)
MCS-51單片機(jī)的中斷系統(tǒng)_第2頁(yè)
MCS-51單片機(jī)的中斷系統(tǒng)_第3頁(yè)
MCS-51單片機(jī)的中斷系統(tǒng)_第4頁(yè)
MCS-51單片機(jī)的中斷系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

5.3MCS-51單片機(jī)中斷系統(tǒng)下頁(yè)回目錄中斷的概念:中斷是計(jì)算機(jī)工作過(guò)程的隨機(jī)事件中斷源:引起中斷的事件或設(shè)備稱(chēng)為中斷源采用中斷的優(yōu)點(diǎn):良好的中斷系統(tǒng)使處理機(jī)具有隨機(jī)應(yīng)變的能力,從而擴(kuò)大應(yīng)用范圍,提高CPU效率51中斷系統(tǒng)的特點(diǎn):內(nèi)容豐富,結(jié)構(gòu)合理,邏輯性強(qiáng),高效實(shí)用中斷請(qǐng)求中斷請(qǐng)求CPU1一、中斷的一般功能1、中斷的屏蔽與開(kāi)放中斷屏蔽:稱(chēng)為關(guān)中斷,CPU不響應(yīng)中斷請(qǐng)求稱(chēng)為開(kāi)中斷,CPU可響應(yīng)中斷請(qǐng)求中斷開(kāi)放:2、中斷響應(yīng)與中斷返回中斷請(qǐng)求RETI主程序響應(yīng)中斷中斷服務(wù)子程序返主程序繼續(xù)執(zhí)行主程序上頁(yè)下頁(yè)回目錄圖5-18(a)中斷的響應(yīng)與返回中斷請(qǐng)求PC斷點(diǎn)PC斷點(diǎn)中斷允許中斷禁止23、中斷優(yōu)先中斷開(kāi)放的情況下,如果有幾個(gè)中斷請(qǐng)求同時(shí)發(fā)生,應(yīng)首先響應(yīng)中斷優(yōu)先級(jí)較高的中斷4、中斷嵌套低級(jí)中斷請(qǐng)求RETI主程序響應(yīng)低級(jí)中斷高級(jí)中斷服務(wù)子程序返主程序繼續(xù)執(zhí)行主程序高級(jí)中斷請(qǐng)求響應(yīng)高級(jí)中斷返低級(jí)中斷上頁(yè)下頁(yè)回目錄圖5-18(b)中斷的嵌套示意圖RETI低級(jí)中斷服務(wù)子程序低級(jí)中斷服務(wù)子程序掛起低級(jí)中斷掛起低級(jí)中斷低級(jí)中斷低級(jí)中斷3二、MCS-51中斷請(qǐng)求源5個(gè)中斷源2個(gè)優(yōu)先級(jí)2個(gè)外部中斷3個(gè)內(nèi)部中斷INT0(P3.2)INT1(P3.3)T0T1UART上頁(yè)下頁(yè)回目錄與中斷有關(guān)的特殊功能寄存器:IP:中斷優(yōu)先控制寄存器IE:中斷允許控制寄存器TCON:定時(shí)/計(jì)數(shù)控制寄存器SCON:UART控制寄存器中斷請(qǐng)求標(biāo)志寄存器可編程,可控MCS–51中斷要點(diǎn)MCS–51中斷要點(diǎn)41、定時(shí)/計(jì)數(shù)器控制寄存器TCONTCON(88H)TF1

TF0

IE1

IT1

IE0IT0

INT1

INT0觸發(fā)方式控制位0

低電平觸發(fā)1邊沿↓觸發(fā)

INT1

INT0外部中斷請(qǐng)求標(biāo)志1有有效觸發(fā)時(shí)0當(dāng)CPU響應(yīng)中斷時(shí)T1T0溢出標(biāo)志1計(jì)數(shù)器“+1”有溢出時(shí),并向CPU請(qǐng)求中斷0當(dāng)CPU響應(yīng)中斷時(shí),也可由指令清除TR1TR0由硬件自動(dòng)由硬件自動(dòng)上頁(yè)下頁(yè)回目錄中斷請(qǐng)求標(biāo)志可編程控制位TR1TR0由硬件自動(dòng)由硬件自動(dòng)在每個(gè)機(jī)器周期S5P2都采樣引腳P3.3P3.2引腳00記錄有無(wú)中斷記錄有無(wú)中斷52、串行口控制寄存器SCONTI:串行口發(fā)送中斷標(biāo)志在方式0,串行發(fā)送到第8位結(jié)束時(shí),由硬件置“1”;或在其他方式中,串行發(fā)送到停止位的開(kāi)始時(shí),由硬件置“1”,并向CPU發(fā)送中斷請(qǐng)求RI:串行口接收中斷標(biāo)志上頁(yè)下頁(yè)回目錄在方式0,串行接收到第8位結(jié)束時(shí),由硬件置“1”;或在其他方式中,串行接收到停止位的開(kāi)始時(shí),由硬件置“1”,并向CPU發(fā)送中斷請(qǐng)求“1”發(fā)送完一幀數(shù)據(jù)后“1”接收完一幀數(shù)據(jù)后必須由軟件清“0”必須由軟件清“0”SCON(98H)

TIRI601/01/01/011/01/01/01/01/01/01/01/01/01/001串行通信的數(shù)據(jù)格式:一幀數(shù)據(jù):一個(gè)字符在異步傳送中稱(chēng)為一幀數(shù)據(jù)一幀數(shù)據(jù)由4部分組成:

起始位、數(shù)據(jù)位、奇偶位、停止位一幀數(shù)據(jù)起始位數(shù)據(jù)位奇偶位停止位起始位數(shù)據(jù)位停止位第n個(gè)字符第n+1個(gè)字符上頁(yè)下頁(yè)回目錄LSBMSB附加位n-1奇偶位通信協(xié)議7三、中斷控制1、中斷允許寄存器IEEA/

/

ES

ET1

EX1

ET0

EX0INT0INT1T1T0UARTCPU0

禁止1

允許0

禁止1

允許總中斷總中斷中斷中斷IE(A8)中斷的開(kāi)放和禁止是可控,可編程的ET2T2CPUIE的相應(yīng)位被置“0”或“1”

該相應(yīng)中斷即被“禁止”或“開(kāi)放”上頁(yè)下頁(yè)回目錄82、中斷優(yōu)先級(jí)寄存器IP//

/

PS

PT1

PX1

PT0

PX0IP(B8)ET2INT0INT1T1T0UART0

低級(jí)1高級(jí)中斷中斷T2中斷優(yōu)先級(jí)是可控,可編程的上頁(yè)下頁(yè)回目錄3、優(yōu)先級(jí)結(jié)構(gòu)中斷優(yōu)先級(jí)控制遵循的兩個(gè)基本原則:⑴一個(gè)正在執(zhí)行的低級(jí)中斷服務(wù)程序,能被高優(yōu)先級(jí)中斷請(qǐng)求所中斷,但不能被同優(yōu)先級(jí)中斷請(qǐng)求所中斷。⑵一個(gè)正在執(zhí)行的高級(jí)中斷服務(wù)程序,不能被任何中斷請(qǐng)求所中斷,直到返回。9實(shí)現(xiàn)這兩個(gè)原則的方法:上頁(yè)下頁(yè)回目錄中斷系統(tǒng)內(nèi)部設(shè)置了兩個(gè)不可尋址的優(yōu)先級(jí)狀態(tài)觸發(fā)器。一個(gè)指出正在處理的是:高優(yōu)先級(jí)中斷,并阻止所有其他中斷;另一個(gè)指出正在處理的是:低優(yōu)先級(jí)中斷,并阻止了除高優(yōu)先級(jí)中斷外的其他任何中斷。高優(yōu)先級(jí)狀態(tài)觸發(fā)器低優(yōu)先級(jí)狀態(tài)觸發(fā)器是不可尋址的當(dāng)CPU響應(yīng)高級(jí)中斷,并進(jìn)入中斷服務(wù)時(shí)“1”“1”RETI“0”當(dāng)CPU響應(yīng)低級(jí)中斷,并進(jìn)入中斷服務(wù)時(shí)“1”RETI“0”無(wú)條件的10在同級(jí)的幾個(gè)中斷源中同時(shí)發(fā)生請(qǐng)求時(shí),內(nèi)部對(duì)同級(jí)的各中斷源的優(yōu)先級(jí)別有一個(gè)規(guī)定的查詢(xún)順序:外部中斷請(qǐng)求

INT0定時(shí)/計(jì)數(shù)器T0定時(shí)/計(jì)數(shù)器T1串行口UART定時(shí)/計(jì)數(shù)器T2外部中斷請(qǐng)求

INT1最高最低上頁(yè)下頁(yè)回目錄自然優(yōu)先級(jí)自然優(yōu)先級(jí)由硬件查詢(xún)邏輯完成11上頁(yè)下頁(yè)回目錄源允許圖5-19中斷系統(tǒng)總體邏輯結(jié)構(gòu)總允許優(yōu)先級(jí)自然優(yōu)先級(jí)中斷源自然優(yōu)先級(jí)中斷源查詢(xún)硬件查詢(xún)硬件低級(jí)中斷請(qǐng)求送CPU矢量地址送PCIPIETCONSCONEX0ET0EX1ET1ESEAINT0INT1T0T1RXTXRITIIE0IE1TF0TF1IT1011010101010矢量地址送PC高級(jí)中斷請(qǐng)求送CPUIT001中斷標(biāo)志中斷標(biāo)志INT01IE0自然優(yōu)先級(jí)矢量地址送PC“+1”TF10自然優(yōu)先級(jí)矢量地址送PCEA“+1”“+1”EX0ET11PX0PT0PX1PT1PS“+1”“+1”12四、中斷響應(yīng)過(guò)程中斷響應(yīng)的三個(gè)條件:⑴CPU不是正在處理同級(jí)或高級(jí)中斷請(qǐng)求⑵現(xiàn)行機(jī)器周期不是所執(zhí)行指令的最后一個(gè)機(jī)器周期⑶正在執(zhí)行的指令不是RETI,或不在訪問(wèn)IE或IP外部中斷請(qǐng)求INT0定時(shí)/計(jì)數(shù)器T0溢出定時(shí)/計(jì)數(shù)器T1溢出串行口UART定時(shí)/計(jì)數(shù)器T2溢出外部中斷請(qǐng)求INT1中斷入口地址:0003H000BH0013H001BH0023H002BH上頁(yè)下頁(yè)回目錄中斷源矢量地址排除法13

一個(gè)完整的中斷處理過(guò)程包括中斷請(qǐng)求、中斷響應(yīng)、中斷處理和中斷返回部分,前面已經(jīng)介紹了中斷請(qǐng)求與控制,下面將介紹其他幾部分內(nèi)容。當(dāng)有中斷請(qǐng)求且滿(mǎn)足中斷響應(yīng)條件時(shí),CPU便會(huì)響應(yīng)中斷,其響應(yīng)過(guò)程如下:①將相應(yīng)的優(yōu)先級(jí)狀態(tài)觸發(fā)器置1,以禁止同級(jí)或低級(jí)的中斷嵌套;②將當(dāng)前程序計(jì)數(shù)器PC的內(nèi)容壓入堆棧保存,并將相應(yīng)的中斷服務(wù)程序入口地址送入PC,以實(shí)現(xiàn)程序的轉(zhuǎn)移;③執(zhí)行中斷服務(wù)程序。響應(yīng)過(guò)程的前兩步由硬件自動(dòng)完成的,中斷服務(wù)程序需要用戶(hù)編寫(xiě)。中斷處理過(guò)程14例:電路結(jié)構(gòu)如下圖所示,欲使與P1.0引腳相連的LED以2秒為周期閃爍,試編程實(shí)現(xiàn)。

五、中斷的應(yīng)用15功能實(shí)現(xiàn)分析如下:由電路圖可知,欲使LED按2秒為周期閃爍,實(shí)際上就是控制LED以1秒的頻率改變其亮、滅的狀態(tài)。要使LED亮,則P1.0輸出“1”,否則輸出“0”。1秒的延時(shí)時(shí)間利用定時(shí)器/計(jì)數(shù)器來(lái)實(shí)現(xiàn),設(shè)單片機(jī)的振蕩頻率為6MHz,則其機(jī)器周期為2us,根據(jù)前面所學(xué)知識(shí)可知,僅僅只利用定時(shí)器T0或T1無(wú)法實(shí)現(xiàn)1秒的定時(shí),要定時(shí)1秒需定時(shí)器T0和T1共同配合使用來(lái)達(dá)到目的??赏ㄟ^(guò)使T0定時(shí)50ms,在P1.3引腳上輸出一個(gè)周期為100ms的方波,計(jì)數(shù)器T1對(duì)該脈沖進(jìn)行計(jì)數(shù),計(jì)滿(mǎn)10個(gè),便達(dá)到定時(shí)1秒的目的。以1秒為周期對(duì)P1.0引腳狀態(tài)求反,便能實(shí)現(xiàn)題目的要求。16T0作為定時(shí)器,工作在方式1下,由TR0來(lái)控制啟停;T1作為計(jì)數(shù)器,工作在方式2下,由TR1來(lái)控制啟停;T0的初值:N=216-50000/2=40536=9E58HT1的初值:N=28-10=246=F6;GATEC/TM1M0GATEC/TM1M001100001=61HTH0=9EH;TL0=58H;TL0=F6H17匯編語(yǔ)言參考程序:ORG0000H;LJMPMAIN;ORG000BH;LJMPINTT0;ORG001BH;LJMPINTT1;ORG0010H;MAIN:CLRP1.0;SETBP1.3;MOVTMOD,#61H;MOVTH1,#F6H;MOVTL1,#F6H;MOVTH0,#9E;MOVTL0,#58;SETBTR0;SETBTR1;SETBPT0;CLRPT1;SETBET0;SETBET1;SETEA;SJMP$;ORG0400H;INTT0:MOVTH0,#9EH;MOVTL0,#58H;CPLP1.3;RETI;ORG0500H;INTT1:CPLP1.0;RETI;18C51參考程序如下:#include“reg51.h”SbitP1_0=P1^0;SbitP1_3=P1^3;VoidINT_timer0(void)interrupt1;{TH0=0x9E;TL0=0x58;P1_3=~P1_3;Return;}VoidINT_timer1(void)interrupt3;{P1_0=~P1_0;Return;}Voidmain(){P1_0=0;P1_3=1;TMOD=0x61;TH1=0xF6;TL1=0xF6;TH0=0x9E;TL0=0x58;TR0=1;TR1=1;PT0=1;PT1=0;ET0=1;ET1=1;EA=1;While(1);Return;}19例:利用中斷實(shí)現(xiàn)例5.5測(cè)量INT0引腳上的正脈沖寬度的功能。設(shè)待測(cè)脈沖的寬度為N,且有0<N<65

溫馨提示

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

評(píng)論

0/150

提交評(píng)論