




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第4講中斷系統一、中斷技術二、MCS-51中斷系統三、中斷處理過程本講主要內容:1.了解單片機的中斷系統結構2.熟悉中斷控制寄存器3.掌握中斷處理的過程要求:計算機中的中斷概念中斷是指計算機在執行某一程序的過程中,由于計算機系統內、外的某種原因,而必須中止原來程序的執行,轉去執行相應的處理程序,待處理結束之后,再回來繼續執行被中止的原程序的過程。主程序響應中斷請求中斷服務子程序返回主程序繼續執行主程序隨機事件中斷是指由于某種隨機事件的發生,計算機暫停正在運行的程序,以處理隨機事件,處理完后又返回原來的程序繼續運行。思考:中斷與子程序的相似點和不同點是什么?中斷源:能引起中斷的事件。主程序:被打斷的程序。中斷服務子程序:處理隨機事件的程序。為什么應用中斷技術解決快速CPU和慢速外設之間的矛盾。提高CPU和外設的工作效率。引進中斷技術的優點分時操作——CPU可以同多個外設“同時”工作實時處理——CPU及時處理隨機事件故障處理——計算機利用中斷系統可以自行處理運行過程中事先預料不到的情況或故障(如電源掉電、存儲出錯、運算溢出等)。引進中斷技術的優點外部設備中斷源計算機的輸入/輸出設備,如鍵盤、打印機等,可通過接口電路向CPU申請中斷。故障源產生故障信息的來源。內部和外部。內部故障源:執行指令時產生的錯誤情況,如除法中除數為零等。外部故障源:主要有電源掉電等情況。中斷源實現中斷及返回實現優先權排隊中斷嵌套高級中斷源能中斷低級中斷處理中斷系統的功能中斷嵌套流程圖主程序響應低級中斷請求低級中斷服務程序返回主程序繼續執行主程序隨機事件響應高級中斷請求高級中斷服務程序返回低級中斷程序斷點中斷源中斷結構圖8051有5個中斷源:外部輸入中斷源INT0(P3.2)外部輸入中斷源INT1(P3.3)定時計數器T0的溢出定時計數器T1的溢出串行口發送或接收中斷源單片機引腳圖TCON中斷系統的結構圖TCONSCONIEIP自然優先級矢量地址自然優先級返回中斷入口地址002AH0023H:串行口中斷入口001BH:定時器1溢出中斷入口0013H:外部中斷1入口000BH:定時器0溢出中斷入口0003H:外部中斷0入口0000H:復位后,程序的入口地址中斷系統的結構圖IESCON:串行口控制寄存器(98H)(MSB)(LSB)返回IE:中斷允許寄存器(A8H)(MSB)(LSB)返回
某軟件中對寄存器IE、IP設置如下: IE=0x8F; IP=0x06;·CPU中斷允許情況如何?·各中斷源允許情況如何?·允許中斷源的中斷優先次序如何?例題·CPU允許中斷;·允許外部中斷0、外部中斷1、定時器/計數器0、定時器/計數器1提出的中斷申請;·允許中斷源的中斷優先次序為:定時器/計數器0>外部中斷1>外部中斷0>定時器/計數器1。單片機結構引腳圖返回外部中斷0外部中斷1?中斷響應在滿足CPU的中斷響應條件之后,CPU對中斷源中斷請求的回答。中斷響應過程保護斷點把程序轉向中斷服務程序的入口地址(通常稱矢量地址)。特別注意:這些工作是硬件自動完成的!中斷響應主程序中斷響應中斷服務子程序中斷返回繼續執行主程序隨機事件中斷服務子程序的地址斷點地址中斷入口地址中斷服務子程序的入口地址又稱中斷矢量或中斷向量單片機中5個中斷源的矢量地址是固定的。(★不能隨意設置)中斷入口地址002AH0023H:串行口中斷入口001BH:定時器1溢出中斷入口0013H:外部中斷1入口000BH:定時器0溢出中斷入口0003H:外部中斷0入口0000H:復位后,程序的入口地址使用時通常在這些入口地址處存放一條跳轉指令,使程序跳轉到用戶安排的中斷服務程序的實際地址上去。例:包含INT0中斷函數的程序結構:
ORG0000HAJMPMAIN
ORG0003HAJMPINTT0
ORG0100HMAIN:…………INTT0:…………RETIENDAJMPMAINAJMPINT0主程序中斷服務子程序例:包含INT0中斷函數的程序結構:#include<reg51.h>#include<intrins.h>viodINT0_ISR(void)interrupt0;voidmain(){EA=1;/*CPU開中斷*/EX0=1;while(1){……}}viodINT0_ISR(void)interrupt0{……}主函數外部0中斷中斷函數中斷處理中斷服務程序從入口地址開始執行,直到返回指令RETI為止,這個過程稱為中斷處理(或中斷服務)。中斷服務子程序一般包括兩部分內容保護和恢復現場處理中斷源的請求(為中斷源服務)中斷處理主程序中斷響應中斷服務子程序中斷返回繼續執行主程序隨機事件入口地址RETI1、現場:PSW、通用工作寄存器、特殊功能寄存器等。
保護現場;恢復現場。2、中斷服務是針對中斷源的具體要求進行處理。中斷處理例如,現有外部中斷1提出申請,且主程序中有DPTR、累加器A、PSW需保護,則編制程序應為:ORG0000HAJMPMAINORG0013HLJMPINT1…ORG0100HMAIN:…;主程序…ORG1000HINTT1:PUSHACCPUSHDPHPUSHDPLPUSHPSW……;中斷源服務POPPSWPOPDPLPOPDPHPOPACCRETI保護現場恢復現場中斷服務子程序中斷返回是指中斷服務完后,返回到原來暫停的位置(即斷點),繼續執行原來的程序。中斷返回由專門的返回指令RETI來實現。中斷返回主程序中斷響應中斷服務子程序中斷返回繼續執行主程序隨機事件
中斷處理程序的最后一條指令是中斷返回指令RETI。它的功能:①是將斷點彈出送回PC中,使程序能返回到原來被中斷的程序繼續執行。②清除優先級狀態觸發器和部分中斷標志。中斷返回思考:能用RET代替RETI嗎?中斷處理過程示意圖中斷源發中斷請求中斷響應條件是否滿足?中斷是否受阻?把PC斷點地址壓入堆棧相應中斷源的中斷入口地址送PC,轉向中斷服務子程序由硬件自動完成YYNN中斷服務子程序關中斷保護現場開中斷中斷服務關中斷中斷返回斷點地址由堆棧彈入PC恢復現場開中斷保護和恢復現場后的開中斷,是為了允許有更高級中斷打斷此中斷服務子程序。保護現場和恢復現場的過程不允許中斷,以免破壞現場。硬件自動完成RETI利用外部中斷0向CPU申請中斷,中斷服務將P1口作為輸出。
中斷應用舉例
ORG 0000H
AJMP MAIN;轉向主程序 ORG 0003H ;外部中斷0入口地址 AJMP WINT;指向中斷服務程序 ORG 0100H ;主程序MAIN:SETB IT0 ;選擇邊沿觸發方式 SETB EX0 ;允許外部中斷0 SETB EA ;CPU允許中斷HERE:AJMP HERE;主程序踏步中斷應用舉例中斷服務程序:
ORG 0200H WINT:MOVP1,#0FH;P1口輸出
RETI ;中斷返回
END中斷應用舉例#include<reg51.h>#include<intrins.h>viodINT0_ISR(void)interrupt0;voidmain(){ IT0=1;//選擇邊沿觸發方式 EX0=1;//允許外部中斷0 EA=1;//CPU允許中斷 while(1);//主程序踏步}中斷應用舉例中斷函數:voidINT0_ISR(void)interrupt0{ P1=0x0F;//P1口輸出}中斷應用舉例利用外部中斷1向CPU申請中斷,中斷服務將P1口的發光二極管循環點亮作為輸出。
中斷應用舉例#include<reg51.h>unsignedchari=0x01;viodINT1_ISR(void)interrupt2;voidmain(){ P1=0xff; IT1=1;//選擇邊沿觸發方式 EX1=1;//允許外部中斷0 EA=1;//CPU允許中斷 while(1);//循環等待}中斷應用舉例中斷函數:voidINT1_ISR(void)interrupt2{ i<<=1; if(i==0)i=1;/*移位8次后,i將變為0,因此需要重新賦值*/ P1=~i;}中斷應用舉例用定時器T0的方式2,控制發光二極管每秒閃一次。實例#include<reg51.h>#include<intrins.h>sbitLED=P0^0;
/*發光管控制位定義*/unsignedintcount=0;
/*方式2中斷計數器*/程序清單voidtime0(void)interrupt1{count++;/*每中斷一次,計數器加1*/if(count==2000)/*2000次為0.5秒*/{count=0;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年中國黃金衍生品行業市場調查報告
- 2025年中國直流穩壓電源市場發展前景預測及投資戰略咨詢報告
- 一級公路可行性研究報告
- 2025年 云南省高級維修電工職業技能考試練習題附答案
- 2025年 四川廣安前鋒區就業保障中心招聘考試筆試試題附答案
- 2025年中國低壓電動機保護器行業市場深度分析及投資策略咨詢報告
- 2025年 惠東縣安墩鎮招聘村“兩委”班子和村民小組長儲備人選考試試題附答案
- 2025年工業固廢項目立項申請報告模板
- 2025年 甘肅工業和信息化廳廳屬事業單位地質測繪類專業招聘考試筆試試題附答案
- 2025年 北京中水科工程集團有限公司招聘考試筆試試題附答案
- 2025-2030年中國機器人檢測行業市場現狀調查及前景戰略研判報告
- 有機合成路線的設計(解析版)-2025年高考化學答題技巧與模板構建(新高考)
- 生產安全事故應急演練評估報告模版
- 國家開放大學行管??啤缎姓M織學》期末紙質考試總題庫(2025春期版)
- 復合材料層合板殼結構分析理論研究進展
- 2025年江蘇南京市河西新城區國有資產經營控股集團招聘筆試參考題庫附帶答案詳解
- 巨量雙證直播運營營銷師認證考試題(附答案)
- 2025年重慶出版集團招聘筆試參考題庫含答案解析
- 金融產品網絡營銷管理辦法
- 02565+24273中醫藥學概論
- 電力鐵塔灌注樁施工方案
評論
0/150
提交評論