




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
授課教師:左敬龍電話號:68012郵箱:oklong@單片機原理及應用MCS-51中斷系統(tǒng)概述與上對比,單片機中也有同樣的問題。CPU正在執(zhí)行原程序,突然,被意外事情打斷,轉(zhuǎn)去執(zhí)行新程序。CPU執(zhí)行新程序結(jié)束后,又回到原程序中繼續(xù)執(zhí)行。這樣的過程就叫。中斷
什么叫中斷?舉例:某同學正在教室寫作業(yè),忽然被人叫出去,回來后,繼續(xù)寫作業(yè)。這就是生活中中斷的例子。中斷處理過程概述對突發(fā)事故,做出緊急處理。根據(jù)現(xiàn)場隨時變化的各種參數(shù)、信息,做出實時監(jiān)控。
CPU與外部設備并行工作,以中斷方式相聯(lián)系,提高工作效率。解決快速CPU與慢速外設之間的矛盾。在多項外部設備同時提出中斷請求情況下,CPU能根據(jù)輕重緩急響應外設的中斷請求。中斷的作用:概述單片機中斷系統(tǒng)中斷源1中斷控制2中斷過程3外部中斷源擴展4一、中斷源中斷源外部中斷定時/計數(shù)器溢出中斷串行發(fā)送結(jié)束請求中斷串行接收有效請求中斷TLi(8位)THi(8位)TFi中斷控制BAC/T=0振蕩器1/12&≥1TiTRiGATEINTiC/T=10~70~7中斷源:入口地址外部中斷0(/INT0)0003HT0溢出中斷000BH外部中斷1(/INT1)0013HT1溢出中斷001BH串口中斷0023H
T2溢出中斷002BH中斷請求源(“五源中斷”)二、中斷控制單片機設有四個特殊功能寄存器:定時控制寄存器TCON串行控制寄存器SCON中斷屏蔽寄存器IE中斷優(yōu)先級寄存器IPMCS-51中斷控制系統(tǒng)TCONIT0IE0IT1IE1TR0TF0TR1TF1TR0/TR1:定時/計數(shù)器運行控制位。IT0/IT1:外部中斷0/1請求觸發(fā)方式控制位。1為脈沖觸發(fā),下降沿有效。0為電平觸發(fā),低電平有效。TCON的字節(jié)地址為88H,位地址為88H~8FH。IE0/IE1:外中斷/請求標志位。當CPU采樣到(/INT)端出現(xiàn)有效中斷請求時,IE0(IE1)位由硬件置“1”。當中斷響應,轉(zhuǎn)向中斷服務程序后,由硬件把IE0(或IE1)清零。1.定時控制寄存器TCONTF0/TF1:定時/計數(shù)溢出標志位。用于定時/計數(shù)器控制。2.串行中斷控制寄存器SCON串行控制寄存器SCON的字節(jié)地址為98HTI:
串行口發(fā)送中斷請求標志位。當發(fā)送完一幀串行數(shù)據(jù)后,由硬件置“1”;在中斷響應,轉(zhuǎn)向中斷服務程序后,接口硬件不能自動將TI或RI清零,需用戶用軟件清零,來撤消中斷。中斷撤消必須在下一個中斷到來之前完成。
RI:串行口接收中斷請求標志位。當接收完一幀串行數(shù)據(jù)后,由硬件置“1”;在中斷響應,轉(zhuǎn)向中斷服務程序后,需用軟件清“0”。串行中斷請求由TI和RI的邏輯或得到。
SM0SM1SM2RENTB8RB8TIRISCON在中斷源與CPU之間有二級中斷允許控制邏輯電路,類似開關(guān),其中第一級為一個總開關(guān),第二級為六個分開關(guān),由IE控制。3、中斷屏蔽寄存器IEIEEX0ET0EX1ET1ESET2—EA若為“1”,開關(guān)接通,允許例如EA=1;若為“0”,開關(guān)斷開,不允許例如IE.7=0;EA——總控制位“—”——未定義位ES——串口控制位ET1——T1中斷控制位EX1——/INT1控制位ET0——T0中斷控制位EX0——/INT0控制位ET2——T2中斷控制位4、中斷優(yōu)先級寄存器IPCPU同一時間只能響應一個中斷請求。若同時來了兩個或兩個以上中斷請求,就必須有先有后。?。?!
為此將6個中斷源分成0,1兩個個級別,0低、1為高優(yōu)先級IPPX0PT0PX1PT1
PSPT2——PT2——定時/計數(shù)器T2的中斷優(yōu)先級別PS——串口的中斷優(yōu)先級別PT1——定時/計數(shù)器T1的中斷優(yōu)先級別PX1——外部中斷1的中斷優(yōu)先級別PT0——定時/計數(shù)器T0的中斷優(yōu)先級別PX0——外部中斷0的中斷優(yōu)先級別“1”,1優(yōu)先級“0”,0優(yōu)先級,最低優(yōu)先級控制可以通過修改中斷優(yōu)先級控制寄存器IP的內(nèi)容實現(xiàn)。IP的字節(jié)地址為0B8H同一級中的5個中斷源的優(yōu)先順序是:/INT0中斷
T0溢出中斷
/INT1中斷
T1溢出中斷串口中斷
T2溢出中斷高低出廠前已由廠家固化順序——事先約定中斷優(yōu)先原則:(概括為四句話)1、低級不打斷高級2、高級不睬低級3、同級不能打斷4、同級、同時中斷,事先約定。
中斷匯編程序初始化SETBIT0SETBEX0SETBEA
SETBPT0中斷C程序初始化 EX0=1; IT0=1;EA=1; PX0=1;三、MCS-51中斷的響應過程CPU每個機器周期都需要順序檢查每個中斷源,當檢測到有中斷請求時,能否響應,還要看下述情況是否存在:
(1)CPU正處理相同級別或更高級別的中斷;(2)正在執(zhí)行指令,還未到最后一個機器周期;(3)正在執(zhí)行的指令是RETI或訪問IP、IPH、IE指令,則執(zhí)行完上述指令后,再執(zhí)行一條指令后,才會響應新中斷。
日常生活中的中斷與單片機中斷的比較
某同學 單片機過程說明正在看書
執(zhí)行主程序有人找出去
中斷信號
中斷請求暫停看書
暫停執(zhí)行主程序中斷響應書中作記號
當前PC入棧
保護斷點出去做事
執(zhí)行中斷程序
中斷服務回來繼續(xù)看
返回主程序
中斷返回1、中斷請求
中斷請求就是中斷源向CPU申請中斷的過程,即建立中斷請求標志位IE0、IE1、TF0、TF1、TI/RI的過程外部中斷請求:經(jīng)由引腳P3.2、P3.3向CPU申請中斷的過程。外部中斷請求有兩種方式:低電平觸發(fā)和下降沿觸發(fā)。通過設置觸發(fā)方式控制位IT0、IT1進行選擇。IT0=0,表示為低電平觸發(fā)方式;IT0=1,表示為下降沿觸發(fā)方式。IT1的情況類似。內(nèi)部中斷請求:當T0計數(shù)產(chǎn)生溢出時,由硬件置位TF0。當CPU響應中斷后,再由硬件將TF0清0。T1的情況類似。當串行口發(fā)送結(jié)束時,使TI=1;當串行口接收結(jié)束時,使RI=1。CPU響應中斷后,由軟件將TI/RI位清0。2、中斷響應
CPU對中斷請求進行判斷,形成中斷矢量,轉(zhuǎn)入相應的中斷服務程序的過程叫中斷響應。1)CPU響應中斷的基本條件有中斷源提出中斷請求;中斷總允許位EA=1,即CPU中斷開放;申請中斷的中斷源的中斷允許位為1,即中斷源開放;CPU沒有響應同級或更高優(yōu)先級的中斷;當前指令執(zhí)行結(jié)束;如果正在執(zhí)行的指令是RETI或是訪問IE、IP指令,則多等待一條指令。2)中斷響應過程
單片機在每個機器周期的S5P2期間,順序采樣每個中斷源,建立中斷請求標志。在下一個機器周期按優(yōu)先級查詢中斷標志,如查詢到有中斷標志為1,則按優(yōu)先級進行中斷響應。硬件將程序計數(shù)器PC的當前內(nèi)容壓入堆棧保護,然后將對應的中斷矢量裝入程序計數(shù)器PC,使程序轉(zhuǎn)向相應的中斷入口。這相當于執(zhí)行一條長調(diào)用指令。中斷源 入口地址外中斷 0003H定時/計數(shù)器T0溢出中斷 000BH外中斷 0013H定時/計數(shù)器T1溢出中斷 001BH串行口中斷 0023H定時/計數(shù)器T2溢出中斷 002BH3、中斷處理(中斷服務)CPU響應中斷后,根據(jù)不同的中斷源,形成不同的中斷矢量,執(zhí)行相應的中斷服務應用程序。CPU執(zhí)行中斷服務應用程序的過程,就是中斷處理過程。中斷處理一般包括保護現(xiàn)場、中斷服務、恢復現(xiàn)場三部分。關(guān)中斷保護現(xiàn)場開中斷中斷服務恢復現(xiàn)場開中斷中斷返回斷點地址由堆棧彈出保護和恢復現(xiàn)場之后開中斷,是為了允許響應更高級別的中斷。保護現(xiàn)場和恢復現(xiàn)場的過程中不允許中斷,以免現(xiàn)場遭到破壞。關(guān)中斷4、中斷返回1)中斷返回的過程在中斷服務程序的最后,遇到C語言中斷服務程序的“}”:將相應的優(yōu)先級狀態(tài)觸發(fā)器清零;恢復斷點地址,即從堆棧中彈出棧頂?shù)膬蓚€字節(jié)到PC,從而返回到斷點處;2)中斷請求的撤銷在中斷返回(執(zhí)行RETI)前,必須撤除中斷請求,即將中斷標志位清除,否則當CPU返回到主程序后會錯誤地再一次引起中斷響應。
(1)T0/T1和邊沿觸發(fā)的INT0/INT1:自動撤銷(2)電平觸發(fā)的INT0/INT1:CPU無法直接控制,需要在引腳處加硬件撤銷中斷請求。(3)串行口中斷:CPU響應中斷后不能用硬件清除中斷標志位,必須由用戶在中斷服務程序中用指令來清除相應的中斷標志。3)中斷響應時間MCS-51單片機響應中斷的最短時間為3個機器周期,最長為8個機器周期。事件1事件2子程序2子程序1中斷嵌套的概念:
主程序中斷中斷例:每次按鍵都會觸發(fā)INT0中斷,中斷發(fā)生時將LED狀態(tài)取反,產(chǎn)生LED狀態(tài)由按鍵控制的效果。
voidEX_INT0()interrupt0using1{ LED=~LED;//控制LED亮滅}voidmain(){ LED=1; EA=1; EX0=1; IT0=1; while(1);}#include<reg51.h>#defineucharunsignedchar#defineuintunsignedintsbitLED=P0^0;
例:試編程,外部中斷0采用下降沿觸發(fā),當外部中斷0到來時,P1的8個端口為00H;外部中斷1采用低電平沿觸發(fā),當外部中斷1到來時,P1的8個端口為0FFH;分析外部中斷0會否打斷外部中斷1?
練習:試編程,目前單片機的P1在數(shù)55H和0AAH之間進行跳變,外部中斷0采用下降沿觸發(fā),當外部中斷0到來時,P1的8個端口均在0和1之間進行跳變,跳變10秒后退出中斷。四、外部中斷源擴展MCS-51單片機只提供了兩個外部中斷請求輸入端,在實際應用中,如果需要使用多于兩個的外部中斷源,就必須進行外部中斷源的擴展。常用的幾種外部中斷源擴展方法是:利用單片機中的定時器/計數(shù)器T0、T1來擴展;外接硬件電路并配合查詢程序擴展;外接中斷控制芯片(如8259)進行擴展。實踐利用單片機中斷,擴展成8路搶答器的按鍵。實踐:全自動洗衣機“啟動/暫?!笨刂芇toteus仿真
全自動洗衣機工作過程中,當遇到意外事件發(fā)生,如衣物纏繞,或需要干預洗衣進程時,如需要添加消毒液,就需要暫停當前洗衣進程,處理這些事件。假設全自動洗衣機有8個流程,用8個指示燈表示;用8個按鍵進行選擇控制。當某個流程工作時,對應的指示燈點亮。當按下按鍵K時,中斷正在進行的流程,對應的流程指示燈閃爍,洗衣機進入等待狀態(tài);再次按下K時,指示燈停止閃爍,變成點亮狀態(tài),表示洗衣機恢復原來被中斷的洗衣流程。#include<reg51.h> //包含頭文件voiddelayMs(unsignedinti) //定義延時程序{unsignedintj; //定義延時變量
while(i--){ //延時外循環(huán)
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025北京第三實驗學校招聘22人模擬試卷(含答案詳解)
- 2025河北邯鄲市肥鄉(xiāng)區(qū)選聘農(nóng)村黨務(村務)工作者100人模擬試卷及1套完整答案詳解
- 2025貴州裝備制造職業(yè)學院第十三屆貴州人才博覽會引才7人模擬試卷及答案詳解(奪冠系列)
- 2025廣西防城港市港口區(qū)財政局招聘2人考前自測高頻考點模擬試題及答案詳解(名師系列)
- 2025年濰坊壽光綜合醫(yī)院(原壽光市人民醫(yī)院)招聘專業(yè)技術(shù)人員(23名)模擬試卷帶答案詳解
- 吉林省普通高中G8教考聯(lián)盟2024-2025學年高一下學期期末考試地理試題(A卷)(解析版)
- 湖南省岳陽市2024屆高三下學期教學質(zhì)量監(jiān)測(二)地理試題(解析版)
- 產(chǎn)品質(zhì)量檢驗檢測流程化模板
- 2025廣東揭陽市惠來縣校園招聘衛(wèi)生專業(yè)技術(shù)人員80人考前自測高頻考點模擬試題及答案詳解參考
- 會議策劃組織工具及活動執(zhí)行指南
- 酒店突發(fā)事件應急預案2025優(yōu)化版
- 醫(yī)用氧氣安全生產(chǎn)培訓課件
- 數(shù)據(jù)安全培訓意識課件
- 2020-2021年七年級英語上冊任務型閱讀專項練習1
- 2024年黑龍江哈爾濱工業(yè)大學輔導員招聘真題
- 高質(zhì)量臨床護理服務實施路徑
- 災害保險研究-洞察及研究
- 鴻蒙教學課程課件
- 2025年輔警招聘考試試題庫及答案(必刷)
- 煙花爆竹經(jīng)營培訓試題及答案
- 化工班組建設課件
評論
0/150
提交評論