版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、課程主講:訾學博第第1 1章章: :微機原理微機原理概述概述第第2 2章章: :單片機概單片機概述述第第3 3章章: MCS-: MCS-5151單片機的硬單片機的硬件結(jié)構(gòu)件結(jié)構(gòu)( (* *) )第第4 4章章: MCS-: MCS-5151單片機指令單片機指令系統(tǒng)系統(tǒng)( (* *) )第第5 5章章: MCS-: MCS-5151單片機程序單片機程序設(shè)計設(shè)計( (* *) )第第7 7章章: MCS-: MCS-5151的定時器的定時器/ /計計數(shù)器數(shù)器( (* *) )第第6 6章章: MCS-: MCS-5151的中斷系統(tǒng)的中斷系統(tǒng)( (* *) )第第8 8章章: MCS-: MCS-
2、5151的串行口的串行口( (* *) )第第9 9章章: : 系統(tǒng)擴系統(tǒng)擴展技術(shù)展技術(shù)第第1010章章: : 模擬模擬接接口口第第1111章章: : 人機交人機交互接口互接口課程內(nèi)容2 8051單片機的中斷系統(tǒng) 8051單片機的中斷處理過程 8051單片機的中斷服務(wù)程序設(shè)計 8051的多中斷源系統(tǒng)設(shè)計本講主要內(nèi)容3某人看書某人看書某人正在處理一件事某人正在處理一件事A手機鈴響手機鈴響出現(xiàn)另一件須立即解決的事出現(xiàn)另一件須立即解決的事B暫??磿鴷和?磿兄怪兄笰 書中作記號書中作記號記錄斷點,便于接續(xù)記錄斷點,便于接續(xù) 電話談話電話談話處理處理B繼續(xù)看書繼續(xù)看書繼續(xù)繼續(xù)A的工作的工作保護斷點中斷
3、響應(yīng)中斷請求中斷返回 (1) 現(xiàn)實生活中的中斷:現(xiàn)實生活中的中斷:6.1.1 6.1.1 中斷的概念中斷的概念4 中斷原因:中斷原因: 一個人不可能同一個人不可能同時完成兩項任務(wù)。時完成兩項任務(wù)。 單片機只有單片機只有一個一個CPU,一,一旦面臨多任務(wù),它也會旦面臨多任務(wù),它也會中斷嗎?中斷嗎?先接電話,然后再繼續(xù)看書,這樣效率最高!5(2) 單片機的中斷單片機的中斷 CPUCPU進行工作進行工作A A時發(fā)生了事件時發(fā)生了事件B B,請求,請求CPUCPU馬上處理馬上處理 CPUCPU暫時中斷當前工作暫時中斷當前工作A A,轉(zhuǎn)去處理事件,轉(zhuǎn)去處理事件B B 事件事件B B處理完后,回到工作處理
4、完后,回到工作A A被中斷的地方繼續(xù)處理被中斷的地方繼續(xù)處理A A工作工作 中斷源 中斷請求 中斷服務(wù) 中斷返回 中斷系統(tǒng)中斷的優(yōu)點v 利用率高v 實時性強v 可靠性好中斷 當CPU正在處理某件事情時,單片機外部或內(nèi)部發(fā)生的某一緊急事件請求CPU立即去處理,于是,CPU暫時中止當前的工作,轉(zhuǎn)去處理這個緊急事件,待處理完畢后,再回到原來被中止的地方,繼續(xù)原來的工作。中斷系統(tǒng) 能夠?qū)崿F(xiàn)中斷處理功能的部件中斷處理過程 中斷請求 中斷響應(yīng) 中斷服務(wù) 中斷返回7主程序中斷請求響應(yīng)中斷請求返回主程序中斷服務(wù)程序繼續(xù)執(zhí)行主程序中斷源 引起中斷的原因,或者是能發(fā)出中斷申請的來源 又被稱作“中斷請求源”中斷請求
5、 中斷源向CPU提出的處理請求外部中斷0和1(INT0、INT1) 采集到低電平或者脈沖下降沿時,產(chǎn)生中斷請求。 INT0來自P3.2引腳 INT1來自P3.3引腳定時/計數(shù)器0和1(T0、T1) 定時功能時,計數(shù)脈沖來自片內(nèi) 計數(shù)功能時,計數(shù)脈沖來自片外 T0來自P3.4引腳 T1來自P3.5引腳 計數(shù)值由8個1變成8個0時,產(chǎn)生中斷請求。串行中斷 發(fā)送或接收完一個字節(jié)數(shù)據(jù)時,產(chǎn)生中斷請求 發(fā)送來自P3.0引腳 接收來自P3.1引腳8MCS-51MCS-51的中斷源的中斷源并行處理并行處理 CPUCPU可以與多臺外設(shè)并行工作,并分時與他們進行信息可以與多臺外設(shè)并行工作,并分時與他們進行信息交
6、換,提高了交換,提高了CPUCPU的工作效率。的工作效率。實時控制實時控制 單片機應(yīng)用系統(tǒng)可能隨機請求單片機應(yīng)用系統(tǒng)可能隨機請求CPUCPU提供服務(wù)。有了中斷提供服務(wù)。有了中斷系統(tǒng),系統(tǒng),CPUCPU就可以立即響應(yīng)并予以處理。就可以立即響應(yīng)并予以處理。故障處理故障處理 單片機系統(tǒng)在工作時可能會出現(xiàn)一些突發(fā)故障,如電源單片機系統(tǒng)在工作時可能會出現(xiàn)一些突發(fā)故障,如電源斷電,存儲器出錯,程序執(zhí)行錯誤(如除數(shù)為斷電,存儲器出錯,程序執(zhí)行錯誤(如除數(shù)為0 0)等,一旦出)等,一旦出現(xiàn)故障,現(xiàn)故障,CPUCPU就可及時轉(zhuǎn)去執(zhí)行故障處理程序,而不必停機。就可及時轉(zhuǎn)去執(zhí)行故障處理程序,而不必停機。9 為實現(xiàn)中
7、斷功能而配置的硬件和編寫的軟件就是中斷為實現(xiàn)中斷功能而配置的硬件和編寫的軟件就是中斷系統(tǒng)。系統(tǒng)。中斷功能由中斷系統(tǒng)來執(zhí)行。中斷功能由中斷系統(tǒng)來執(zhí)行。10110INT1INTIT0=0IT0=1IE0TF0IE1TF1TIRIT0T1TXRX+ESET1EX1ET0EX010PT010PT110PX110PS10PX0矢量地址自然優(yōu)先級矢量地址自然優(yōu)先級低級中斷請求PC高級中斷請求PC IE IPIT1=0IT1=1硬件查詢硬件查詢源允許總允許優(yōu)先級中斷請求標記中斷觸發(fā)方式中斷源中斷請求中斷請求中斷允許中斷允許中斷優(yōu)先級中斷優(yōu)先級中斷響應(yīng)中斷響應(yīng) 8051中斷系統(tǒng)的結(jié)構(gòu)5個中斷源、個中斷源、2個
8、中斷優(yōu)先級個中斷優(yōu)先級8051單片機有單片機有5個中斷源。見下表個中斷源。見下表 哪些哪些部件可以部件可以向向CPU申請中申請中斷呢?斷呢?中斷源中斷源 說明說明 外部中斷外部中斷 從從P3.2引腳引入的外部中斷申請引腳引入的外部中斷申請定時器定時器T0中斷中斷 定時器定時器T0溢出時引發(fā)中斷申請溢出時引發(fā)中斷申請外部中斷外部中斷從從P3.3引腳引入的外部中斷申請引腳引入的外部中斷申請定時器定時器T1中斷中斷定時器定時器T1溢出時引發(fā)中斷申請溢出時引發(fā)中斷申請串行口中斷串行口中斷一次串行發(fā)送或接收完成后,發(fā)出中斷一次串行發(fā)送或接收完成后,發(fā)出中斷申請申請0INT1INT能夠向能夠向CPU發(fā)出中
9、斷申請的部件稱為中斷源。發(fā)出中斷申請的部件稱為中斷源。中斷允許寄存器中斷允許寄存器IE中斷優(yōu)先級寄存器中斷優(yōu)先級寄存器IP定時定時/計數(shù)器及外部中斷控制寄存器計數(shù)器及外部中斷控制寄存器TCON串口控制寄存器串口控制寄存器SCON 單片機通過對單片機通過對4個特殊功能寄存器個特殊功能寄存器實施中斷控制:實施中斷控制:13 觸發(fā)方式設(shè)置及中斷標志觸發(fā)方式設(shè)置及中斷標志 76543210TCONTF1TR1TF0TR0IE1IT1IE0IT0字節(jié)地址:字節(jié)地址:88H外部中斷觸發(fā)方式位IT1、IT0(用ITx表示) 電平方式(ITx=0),INTx引腳低電平時IEx=1,響應(yīng)中斷后IEx不自動清0(
10、INTx引腳狀態(tài))。 邊沿方式(ITx=1),INTx引腳負跳變時IEx=1,響應(yīng)中斷后IEx自動清0。 外部中斷標志IE1、IE0(用IEx表示)兩種觸發(fā)方式比較: 電平方式時電平方式時, INTx低電平必須保持到響應(yīng)時,否則就會漏掉;在中斷低電平必須保持到響應(yīng)時,否則就會漏掉;在中斷服務(wù)結(jié)束前,服務(wù)結(jié)束前,INTx低電平必須撤除,否則中斷返回之后將再次產(chǎn)生中斷。低電平必須撤除,否則中斷返回之后將再次產(chǎn)生中斷。 例,例,8255的中斷請求線在接受讀或?qū)懖僮骱蠹幢粡?fù)位,因此以其去請求的中斷請求線在接受讀或?qū)懖僮骱蠹幢粡?fù)位,因此以其去請求電平觸發(fā)方式的中斷比較方便。電平觸發(fā)方式的中斷比較方便。邊
11、沿方式時,邊沿方式時,采樣到有效下降沿后,在采樣到有效下降沿后,在IEx中將鎖存一個中將鎖存一個1。若。若CPU暫暫時不能響應(yīng),申請標志也不會丟失,直到響應(yīng)時才清時不能響應(yīng),申請標志也不會丟失,直到響應(yīng)時才清0。 例,例,ADC0809的轉(zhuǎn)換結(jié)束信號的轉(zhuǎn)換結(jié)束信號EOC為正脈沖,經(jīng)反相后就可以作為為正脈沖,經(jīng)反相后就可以作為8051的的INTx信號信號 。 溢出中斷標志溢出中斷標志TF1、TF0(用(用TFx表示)表示) 溢出中斷請求標志溢出中斷請求標志TFx ,Tx啟動后就開始由初值進行加啟動后就開始由初值進行加1計數(shù),直至計數(shù),直至最高位產(chǎn)生溢出使最高位產(chǎn)生溢出使TFx=1向向CPU請求中
12、斷。請求中斷。CPU響應(yīng)中斷后響應(yīng)中斷后TFx自動自動清清0。 SCONSCON的中斷標志的中斷標志76543210SCONTIRI字節(jié)地址:字節(jié)地址:98HRI:串口:串口接收接收中斷標志,響應(yīng)中斷時中斷標志,響應(yīng)中斷時不能自動清除不能自動清除 TI:串口:串口發(fā)送發(fā)送中斷標志,響應(yīng)中斷時中斷標志,響應(yīng)中斷時不能自動清除不能自動清除 外部中斷INTi(i=0,1) 電平方式觸發(fā)中斷 ITi設(shè)置為0 CPU在每個機器周期的S5P2采樣INTi引腳,若INTi引腳為低電平時,則置IEi為1,產(chǎn)生中斷請求。 跳沿方式觸發(fā)中斷 ITi設(shè)置為1 加到INT0上的信號電平從高跳變到低時,觸發(fā)中斷 當CP
13、U響應(yīng)中斷后,IEi由硬件自動復(fù)位定時/計數(shù)器中斷Ti(i=0,1) Ti產(chǎn)生溢出(計數(shù)值由8個1變成8個0)時,TFi由0變成1,向CPU發(fā)出中斷請求。 中斷響應(yīng)后,TFi自動復(fù)位。串行中斷 發(fā)送(TX) 發(fā)送完一個字節(jié)數(shù)據(jù)時,TI由0置1,向CPU發(fā)出中斷請求。 中斷響應(yīng)后,必須用指令復(fù)位TI。 接收(RX) 接收完一個字節(jié)數(shù)據(jù)時,RI由0置1,向CPU發(fā)出中斷請求。 中斷響應(yīng)后,必須用指令復(fù)位RI。17S1S2S3S4S5S6P1 P2 P1 P2P1 P2 P1 P2P1 P2 P1 P218位地址8FH 8EH 8DH 8CH 8BH 8AH 89H 88H位符號TF1 TR1 TF
14、0 TR0 IE1 IT1 IE0 IT0TF1 TF0:當定時當定時/計數(shù)器產(chǎn)生溢出時,由硬件置計數(shù)器產(chǎn)生溢出時,由硬件置“1”,并申請中斷。當轉(zhuǎn)向中斷服務(wù)時,并申請中斷。當轉(zhuǎn)向中斷服務(wù)時,再由硬件自動清再由硬件自動清“0”。IE1 IE0:當當CPU采樣到外部中斷請求時,由硬件置采樣到外部中斷請求時,由硬件置“1”。當轉(zhuǎn)向中斷服務(wù)時,再由硬件自動。當轉(zhuǎn)向中斷服務(wù)時,再由硬件自動清清“0”。IT1 IT0:為為1時,脈沖觸發(fā)方式,下降沿有效時,脈沖觸發(fā)方式,下降沿有效為為0時,電平觸發(fā)方式,低電平有效時,電平觸發(fā)方式,低電平有效位地址9FH 9EH 9DH 9CH 9BH 9AH 99H 9
15、8H位符號SM0 SM1 SM2 REN TB8 RB8TIRITI:當串行口發(fā)送完一幀串行數(shù)據(jù)后,由硬件置當串行口發(fā)送完一幀串行數(shù)據(jù)后,由硬件置“1”;在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清“0”RI:當串行口接收完一幀串行數(shù)據(jù)后,由硬件置當串行口接收完一幀串行數(shù)據(jù)后,由硬件置“1”;在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清“0”中斷請求所影響到的位地址 中斷允許控制中斷允許控制中斷源的開放和屏蔽由IE控制(1,開放;0,禁止) 76543210IEEAESET1EX1ET0EX0字節(jié)地址:字節(jié)地址:A8H EX0:外中斷0允許 ET0:T0中斷允許
16、 EX1:外中斷1允許 ET1:T1中斷允許 ES :串口中斷允許 EA :CPU中斷允許 20位地址AFH AEH ADH ACH ABH AAH A9H A8H位符號EA-ESET1 EX1 ET0 EX0EA:中斷允許總控制位。中斷允許總控制位。0禁止,禁止,1允許。允許。ES:串行中斷允許控制位。串行中斷允許控制位。0禁止,禁止,1允許。允許。ET1: 定時計數(shù)器定時計數(shù)器1中斷允許控制位。中斷允許控制位。0禁止,禁止,1允許。允許。EX1外部中斷外部中斷1允許控制位。允許控制位。0禁止,禁止,1允許。允許。ET0定時計數(shù)器定時計數(shù)器0中斷允許控制位。中斷允許控制位。0禁止,禁止,1允
17、許。允許。EX0外部中斷外部中斷0允許控制位。允許控制位。0禁止,禁止,1允許。允許。中斷允許中斷允許21【例】若允許片內(nèi)2個定時/計數(shù)器中斷,禁止其他中斷源的中斷請求,試編寫出設(shè)置IE的程序段。CLR ES; ES=0,禁止串行口中斷CLR EX0; EX0=0,禁止外部中斷0CLR EX1; EX1=0,禁止外部中斷1SETB ET0; ET0=1,允許定時/計數(shù)中斷0SETB ET1; ET1=1,允許定時/計數(shù)中斷0SETB EA; CPU開中斷(方法1) 用位操作指令(方法2) 用字節(jié)操作指令MOV IE,#10001010BIE位地址AFH AEH ADH ACH ABH AAH
18、A9H A8H位符號EA-ESET1 EX1 ET0 EX010001010 中斷優(yōu)先級控制中斷優(yōu)先級由IP控制(1,高級;0,低級) 76543210IPPSPT1PX1PT0PX0字節(jié)地址:字節(jié)地址:B8H PX0:外中斷0優(yōu)先級 PT0:T0中斷優(yōu)先級 PX1:外中斷1優(yōu)先級 PT1:T1中斷優(yōu)先級 PS :串口中斷優(yōu)先級同一優(yōu)先級的自然順序:同一優(yōu)先級的自然順序:自高至低:自高至低:INT0、T0、INT1、T1、串口。、串口。 23位地址BFH BEH BDH BCH BBH BAH B9H B8H位符號-PSPT1 PX1 PT0 PX0PX0: 外部中斷外部中斷0的優(yōu)先級設(shè)定位,
19、的優(yōu)先級設(shè)定位,1為高,為高,0為低為低PT0: 定時中斷定時中斷0的優(yōu)先級設(shè)定位,的優(yōu)先級設(shè)定位,1為高,為高,0為低為低PX1: 外部中斷外部中斷1的優(yōu)先級設(shè)定位,的優(yōu)先級設(shè)定位,1為高,為高,0為低為低PT0: 定時中斷定時中斷0的優(yōu)先級設(shè)定位,的優(yōu)先級設(shè)定位,1為高,為高,0為低為低PX:串行中斷的優(yōu)先級設(shè)定位,串行中斷的優(yōu)先級設(shè)定位,1為高,為高,0為低為低中斷優(yōu)先級中斷優(yōu)先級 中斷優(yōu)先級遵循的原則幾個中斷同時申請,先響應(yīng)高級的中斷幾個中斷同時申請,先響應(yīng)高級的中斷 正進行的中斷服務(wù),同級或低級中斷不能對其中斷,正進行的中斷服務(wù),同級或低級中斷不能對其中斷,但可以被高級中斷所中斷。但
20、可以被高級中斷所中斷。 為此,中斷系統(tǒng)內(nèi)設(shè)有對應(yīng)高、低為此,中斷系統(tǒng)內(nèi)設(shè)有對應(yīng)高、低2個個優(yōu)先級狀態(tài)觸發(fā)器優(yōu)先級狀態(tài)觸發(fā)器(用戶不能尋址)。(用戶不能尋址)。 狀態(tài)觸發(fā)器的復(fù)位由中斷返回指令狀態(tài)觸發(fā)器的復(fù)位由中斷返回指令RETI控制。控制。25【例】設(shè)置IP寄存器的初始值,使得MCS-51系統(tǒng)的2個外中斷請求為高優(yōu)先級,其他中斷請求為低優(yōu)先級SETB PX0; PX0=1,外中斷0為高優(yōu)先級SETB PX1; PX1=1,外中斷1為高優(yōu)先級CLR PT0; PT0=0,定時中斷0為低優(yōu)先級CLR PT1; PT1=0,定時中斷1為低優(yōu)先級CLR PS; PS=0,串行中斷為低優(yōu)先級(方法1)
21、用位操作指令(方法2) 用字節(jié)操作指令MOV IP,#00000101B位地址BFH BEH BDH BCH BBH BAH B9H B8H位符號-PSPT1 PX1 PT0 PX000000101IP6.2.1 6.2.1 中斷響應(yīng)條件和時間中斷響應(yīng)條件和時間 中斷響應(yīng)條件中斷響應(yīng)條件CPU開中斷開中斷中斷源發(fā)出中斷請求中斷源發(fā)出中斷請求中斷源的中斷允許位中斷源的中斷允許位為為1無同級或更高級中斷無同級或更高級中斷正在被服務(wù)正在被服務(wù)中斷響應(yīng)的過程中斷響應(yīng)的過程 由硬件根據(jù)中斷源的由硬件根據(jù)中斷源的類型自動生成一條長調(diào)類型自動生成一條長調(diào)用指令用指令LCALL addr16LCALL add
22、r16。 Addr16Addr16為程序存儲器為程序存儲器中相應(yīng)的中斷入口地中相應(yīng)的中斷入口地址址 CPUCPU執(zhí)行執(zhí)行LCALL addr16LCALL addr16 (1) (1) 將將PCPC的內(nèi)容壓入的內(nèi)容壓入堆棧,以保護斷點堆棧,以保護斷點 (2) (2) 將中斷入口地址將中斷入口地址裝入裝入PCPC,使程序轉(zhuǎn)向,使程序轉(zhuǎn)向響應(yīng)中斷請求的中斷響應(yīng)中斷請求的中斷入口地址。入口地址。27中斷源入口地址外部中斷00003H定時/計數(shù)器T0 000BH外部中斷10013H定時/計數(shù)器T1 001BH串行中斷0023H兩個中斷入口間隔只有8個字節(jié),一般情況下難以安排下一個完整的中斷服務(wù)程序,通
23、常只是在中斷入口地址處放置一條無條件轉(zhuǎn)移指令,使程序執(zhí)行轉(zhuǎn)向在其他地址存放的中斷服務(wù)程序。中斷響應(yīng)被封鎖的三種情況中斷響應(yīng)被封鎖的三種情況 CPUCPU正在處理同級的或更高優(yōu)先級的中斷。正在處理同級的或更高優(yōu)先級的中斷。 一個中斷被響應(yīng)時,要把中斷優(yōu)先級狀態(tài)觸發(fā)器設(shè)置一個中斷被響應(yīng)時,要把中斷優(yōu)先級狀態(tài)觸發(fā)器設(shè)置為為“1 1”( (該觸發(fā)器指出該觸發(fā)器指出CPUCPU處理的中斷優(yōu)先級別處理的中斷優(yōu)先級別) ),從,從而封鎖低級中斷和同級中斷請求。而封鎖低級中斷和同級中斷請求。 查詢到中斷請求的機器周期不是當前正在執(zhí)查詢到中斷請求的機器周期不是當前正在執(zhí)行指令的最后一個機器周期。行指令的最后一個
24、機器周期。 只有當前指令執(zhí)行完畢后,才能響應(yīng)中斷請求,以確只有當前指令執(zhí)行完畢后,才能響應(yīng)中斷請求,以確保當前指令完整的執(zhí)行。保當前指令完整的執(zhí)行。 正在執(zhí)行的指令是正在執(zhí)行的指令是RETIRETI或是訪問或是訪問IEIE或或IPIP的指的指令。令。 MCS-51MCS-51中斷系統(tǒng)規(guī)定,在執(zhí)行完上述指令后,需要再中斷系統(tǒng)規(guī)定,在執(zhí)行完上述指令后,需要再去執(zhí)行完一條指令,才能響應(yīng)新的中斷請求。去執(zhí)行完一條指令,才能響應(yīng)新的中斷請求。28 中斷響應(yīng)時間中斷響應(yīng)時間中斷響應(yīng)至少需要中斷響應(yīng)至少需要3個完整的機器周期個完整的機器周期(38個)!個)!受阻時要附加受阻時要附加35個機器周期個機器周期(
25、無同級或高級中斷正進行無同級或高級中斷正進行) 查詢周期不是當前指令的最后機器周期查詢周期不是當前指令的最后機器周期(如如MUL,+3)查詢周期恰逢查詢周期恰逢RETI類指令類指令(且后跟且后跟MUL指令指令+5)6.2.2 6.2.2 中斷響應(yīng)過程中斷響應(yīng)過程 CPU響應(yīng)中斷過程響應(yīng)中斷過程將相應(yīng)優(yōu)先級狀態(tài)觸發(fā)器置將相應(yīng)優(yōu)先級狀態(tài)觸發(fā)器置1(阻斷后來同級或低級中斷阻斷后來同級或低級中斷 )執(zhí)行硬件執(zhí)行硬件LCALL指令(指令(PC入棧,中斷服務(wù)程序入口址送入棧,中斷服務(wù)程序入口址送PC)執(zhí)行中斷服務(wù)程序執(zhí)行中斷服務(wù)程序 編寫中斷服務(wù)程序注意編寫中斷服務(wù)程序注意中斷服務(wù)程序入口存放指令中斷服務(wù)
26、程序入口存放指令LJMP或或AJMP現(xiàn)場保護與現(xiàn)場恢復(fù)現(xiàn)場保護與現(xiàn)場恢復(fù)6.2.3 6.2.3 中斷返回中斷返回 中斷服務(wù)程序最后指令必須是中斷服務(wù)程序最后指令必須是RETI,其功能:,其功能: 將斷點從堆棧彈送將斷點從堆棧彈送PC,CPU從原斷點繼續(xù)執(zhí)行從原斷點繼續(xù)執(zhí)行 將相應(yīng)優(yōu)先級狀態(tài)觸發(fā)器清將相應(yīng)優(yōu)先級狀態(tài)觸發(fā)器清0,恢復(fù)原來工作狀態(tài),恢復(fù)原來工作狀態(tài) 注意注意不能用不能用RET代替代替RETI 中斷服務(wù)程序中中斷服務(wù)程序中PUSH和和POP必須成對使用必須成對使用6.2.4 6.2.4 中斷請求的清除中斷請求的清除 CPU響應(yīng)某中斷后,在中斷返回前,中斷請求應(yīng)被撤除,否響應(yīng)某中斷后,在
27、中斷返回前,中斷請求應(yīng)被撤除,否則會引起另一次中斷。則會引起另一次中斷。1、定時器、定時器0和定時器和定時器1中斷中斷 CPU在響應(yīng)中斷后用在響應(yīng)中斷后用硬件硬件自動清除有關(guān)的中斷請求標志自動清除有關(guān)的中斷請求標志TF0或或TF1。2、邊沿觸發(fā)的外部中斷、邊沿觸發(fā)的外部中斷 在硬件在硬件CPU在響應(yīng)中斷后用在響應(yīng)中斷后用硬件硬件自動清除有關(guān)的中斷請求標自動清除有關(guān)的中斷請求標志志IE0或或IE1。3、電平觸發(fā)的外部中斷、電平觸發(fā)的外部中斷 在硬件上在硬件上CPU對對/INT0、INT1沒有控制,因此必須另外采取沒有控制,因此必須另外采取措施措施加外部加外部硬件控制硬件控制和和軟件編程軟件編程。
28、4、串行口中斷、串行口中斷 CPU在響應(yīng)中斷后沒有用硬件自動清除中斷請求標志在響應(yīng)中斷后沒有用硬件自動清除中斷請求標志RI和和TI,必須在中斷服務(wù)程序中用必須在中斷服務(wù)程序中用軟件軟件清除之,以撤除中斷請求。清除之,以撤除中斷請求。3233ORG 0000H;程序開始LJMP START;= LJMP 1000HORG 0003H;外部中斷外部中斷0入口地址入口地址LJMP INTORG 1000H;主程序入口START: MOV P1, #0AAH; 0AAH=10101010BSETB EX0;允許外部中斷0SETB PX0;設(shè)置外部中斷0為高優(yōu)先級SETB IT0;設(shè)置外部中斷0為負跳變
29、觸發(fā)SETB EA;開中斷SJMP $;原地跳轉(zhuǎn),等待中斷INT:CLR EA;關(guān)中斷PUSH PSW;現(xiàn)場保護PUSH ACC;SETB EA;開中斷CPL A;對累加器A按位取反MOV P1, A;累加器A值送P1端口CLR EA;關(guān)中斷POP ACC;現(xiàn)場保護POP PSW;SETB EA;開中斷RETI;關(guān)中斷現(xiàn)場保護開中斷中斷處理關(guān)中斷現(xiàn)場恢復(fù)開中斷中斷返回中斷服務(wù)程序的基本流程34為了防止此時有高一級的中斷進入,以免現(xiàn)場保護的執(zhí)行過程被中斷。關(guān)中斷現(xiàn)場保護開中斷中斷處理關(guān)中斷現(xiàn)場恢復(fù)開中斷中斷返回35關(guān)中斷現(xiàn)場保護開中斷中斷處理關(guān)中斷現(xiàn)場恢復(fù)開中斷中斷返回所謂現(xiàn)場是指中斷時刻單片機
30、中某些寄存器和存儲器單元中的數(shù)據(jù)或狀態(tài)。為了不讓中斷服務(wù)程序的執(zhí)行破壞這數(shù)據(jù)或狀態(tài),以免中斷返回后影響主程序的運行,需要將他們送入堆棧保存起來。36關(guān)中斷現(xiàn)場保護開中斷中斷處理關(guān)中斷現(xiàn)場恢復(fù)開中斷中斷返回為了允許有更高級的中斷進入。這樣一來,除了現(xiàn)場保護和現(xiàn)場恢復(fù)外,中斷處理的過程仍允許中斷嵌套的功能37關(guān)中斷現(xiàn)場保護開中斷中斷處理關(guān)中斷現(xiàn)場恢復(fù)開中斷中斷返回為了防止此時有高一級的中斷進入,以免現(xiàn)場恢復(fù)的執(zhí)行過程被中斷。38關(guān)中斷現(xiàn)場保護開中斷中斷處理關(guān)中斷現(xiàn)場恢復(fù)開中斷中斷返回中斷處理結(jié)束后,在返回主程序前,把保存的現(xiàn)場的內(nèi)容從堆棧中彈出,以恢復(fù)那些寄存器和存儲單元中的原有內(nèi)容39關(guān)中斷現(xiàn)場保護開中斷中斷處理關(guān)中斷現(xiàn)場恢復(fù)開中斷中斷返回為了允許有更高級的中斷進入。現(xiàn)場恢復(fù)后,仍允許中斷嵌套的功能。40關(guān)中斷現(xiàn)場保護開中斷中斷處理關(guān)中斷現(xiàn)場恢復(fù)開中斷中斷返回必須是返回指令RETI。CPU執(zhí)行完這條指令后,把響應(yīng)中斷時所置“1”的優(yōu)先級狀態(tài)觸發(fā)器清“0”,然后從堆棧中彈出棧頂上的兩個字節(jié)的斷點地址送到程序計數(shù)器PC,彈出的第一個字節(jié)送入PCH,第二個字節(jié)送入PCL,CPU從斷點處重新執(zhí)行被中斷的
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024高考地理一輪復(fù)習第九章第2講工業(yè)地域的形成與工業(yè)區(qū)教案含解析新人教版
- 2024高考化學二輪復(fù)習專題突破練4B元素及其化合物含解析
- 二零二五年度股東分紅紅利分配與投資計劃合同3篇
- 第二章復(fù)合材料增強體2017上課講義
- 小學食品安全管理制度
- 分階段分層次全過程質(zhì)量管控機制
- 單病種填報要求(更新至20240911)
- 2024年河北軟件職業(yè)技術(shù)學院高職單招語文歷年參考題庫含答案解析
- 2024年閘北區(qū)市北醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點附帶答案
- 二零二五年度離婚協(xié)議中個人隱私保護協(xié)議
- YC/T 377-2019卷煙主流煙氣中氨的測定浸漬處理劍橋濾片捕集-離子色譜法
- GB/T 38914-2020車用質(zhì)子交換膜燃料電池堆使用壽命測試評價方法
- 顧客滿意度評價表范文
- 細胞骨架(細胞生物學)課件
- 電磁閥培訓(精選)課件
- A彌漫大b細胞淋巴瘤護理查房
- 初一上學期期末測試卷英語
- 上海沃陸變頻器VL600型變頻器說明書概要
- 2023年高考物理一輪復(fù)習:拋體運動與圓周運動(附答案解析)
- VRV空調(diào)技術(shù)要求和質(zhì)量標準
- 第二講VSP地震勘探
評論
0/150
提交評論