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

下載本文檔

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

文檔簡介

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

TF0

IE1

IT1

IE0IT0

INT1

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

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

INT1

INT0外部中斷請求標志1有有效觸發(fā)時0當CPU響應中斷時T1T0溢出標志1計數(shù)器“+1”有溢出時,并向CPU請求中斷0當CPU響應中斷時,也可由指令清除TR1TR0由硬件自動由硬件自動上頁下頁回目錄中斷請求標志可編程控制位TR1TR0由硬件自動由硬件自動在每個機器周期S5P2都采樣引腳P3.3P3.2引腳00記錄有無中斷記錄有無中斷52、串行口控制寄存器SCONTI:串行口發(fā)送中斷標志在方式0,串行發(fā)送到第8位結(jié)束時,由硬件置“1”;或在其他方式中,串行發(fā)送到停止位的開始時,由硬件置“1”,并向CPU發(fā)送中斷請求RI:串行口接收中斷標志上頁下頁回目錄在方式0,串行接收到第8位結(jié)束時,由硬件置“1”;或在其他方式中,串行接收到停止位的開始時,由硬件置“1”,并向CPU發(fā)送中斷請求“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ù):一個字符在異步傳送中稱為一幀數(shù)據(jù)一幀數(shù)據(jù)由4部分組成:

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

/

ES

ET1

EX1

ET0

EX0INT0INT1T1T0UARTCPU0

禁止1

允許0

禁止1

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

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

/

PS

PT1

PX1

PT0

PX0IP(B8)ET2INT0INT1T1T0UART0

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

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

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

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

五、中斷的應用15功能實現(xiàn)分析如下:由電路圖可知,欲使LED按2秒為周期閃爍,實際上就是控制LED以1秒的頻率改變其亮、滅的狀態(tài)。要使LED亮,則P1.0輸出“1”,否則輸出“0”。1秒的延時時間利用定時器/計數(shù)器來實現(xiàn),設單片機的振蕩頻率為6MHz,則其機器周期為2us,根據(jù)前面所學知識可知,僅僅只利用定時器T0或T1無法實現(xiàn)1秒的定時,要定時1秒需定時器T0和T1共同配合使用來達到目的??赏ㄟ^使T0定時50ms,在P1.3引腳上輸出一個周期為100ms的方波,計數(shù)器T1對該脈沖進行計數(shù),計滿10個,便達到定時1秒的目的。以1秒為周期對P1.0引腳狀態(tài)求反,便能實現(xiàn)題目的要求。16T0作為定時器,工作在方式1下,由TR0來控制啟停;T1作為計數(shù)器,工作在方式2下,由TR1來控制啟停;T0的初值:N=216-50000/2=40536=9E58HT1的初值:N=28-10=246=F6;GATEC/TM1M0GATEC/TM1M001100001=61HTH0=9EH;TL0=58H;TL0=F6H17匯編語言參考程序: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例:利用中斷實現(xiàn)例5.5測量INT0引腳上的正脈沖寬度的功能。設待測脈沖的寬度為N,且有0<N<65

溫馨提示

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

評論

0/150

提交評論