


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上 在開始寫中斷函數(shù)之前,我們來一起回顧一下,單片機(jī)的中斷系統(tǒng)。 中斷的意思(學(xué)習(xí)過微機(jī)原理與接口技術(shù)的同學(xué),沒學(xué)過單片機(jī),也應(yīng)該知道),我們?cè)谶@里就不講了,首先來回憶下中斷系統(tǒng)涉及到哪些問題。 (1)中斷源:中斷請(qǐng)求信號(hào)的來源。(8051有3個(gè)內(nèi)部中斷源T0,T1,串行口,2個(gè)外部中斷源INT0,INT1(這兩個(gè)低電平有效,上面的那個(gè)橫杠不知道怎么加上去)
2、 (2)中斷響應(yīng)與返回:CPU采集到中斷請(qǐng)求信號(hào),怎樣轉(zhuǎn)向特定的中斷服務(wù)子程序,并在執(zhí)行完之后返回被中斷程序繼續(xù)執(zhí)行。期間涉及到CPU響應(yīng)中斷的條件,現(xiàn)場(chǎng)保護(hù),現(xiàn)場(chǎng)恢復(fù)。 (3)優(yōu)先級(jí)控制:中斷優(yōu)先級(jí)的控制就形成了中斷嵌套(8051允許有兩級(jí)的中斷嵌套,優(yōu)先權(quán)順序?yàn)镮NT0,T0,INT1,T1,串行口),同一個(gè)優(yōu)先級(jí)的中斷,還存在優(yōu)先權(quán)的高低。優(yōu)先級(jí)是可以編程的,而優(yōu)先權(quán)是固定的。 80C51的原則是同優(yōu)先級(jí),先響應(yīng)高優(yōu)先權(quán)低優(yōu)先級(jí)能被高優(yōu)先級(jí)中斷正在進(jìn)行的中斷不能被同一級(jí)的中斷請(qǐng)求或
3、低優(yōu)先級(jí)的中斷請(qǐng)求中斷。 80C51的中斷系統(tǒng)涉及到的中斷控制有中斷請(qǐng)求,中斷允許,中斷優(yōu)先級(jí)控制 (1)3個(gè)內(nèi)部中斷源T0,T1,串行口,2個(gè)外部中斷源INT0,INT1 (2)中斷控制寄存器:定時(shí)和外中斷控制寄存器TCON(包括T0、T1,INT0、INT1),串行控制寄存器SCON,中斷允許寄存器IE,中斷優(yōu)先級(jí)寄存器IP 具體的是什么,包括哪些標(biāo)志位,在這里不講了,所有書上
4、面都會(huì)講。 在這里我們講下注意的事項(xiàng) (1)CPU響應(yīng)中斷后,TF0(T0中斷標(biāo)志位)和TF1由硬件自動(dòng)清0。 (2)CPU響應(yīng)中斷后,在邊沿觸發(fā)方式下,IE0(外部中斷INT0請(qǐng)求標(biāo)志位)和IE1由硬件自動(dòng)清零;在電平觸發(fā)方式下,不能自動(dòng)清楚IE0和IE1。所以在中斷返回前必須撤出INT0和INT1引腳的低電平,否則就會(huì)出現(xiàn)一次中斷被CPU多次響應(yīng)。 (3)串口
5、中斷中,CPU響應(yīng)中斷后,TI(串行口發(fā)送中斷請(qǐng)求標(biāo)志位)和RI(接收中斷請(qǐng)求標(biāo)志位)必須由軟件清零。 (4)單片機(jī)復(fù)位后,TCON,SCON給位清零。C51語言允許用戶自己寫中斷服務(wù)子程序(中斷函數(shù))首先來了解程序的格式:void 函數(shù)名() interrupt m using n 關(guān)鍵字 interrupt m using n 表示這是一個(gè)中斷函數(shù)m為中斷源的編號(hào),有五個(gè)中斷源,取值為0,1,2,3,4,中斷編號(hào)會(huì)告訴編譯器中斷程序的入口地址,執(zhí)行該程序時(shí),這個(gè)地址會(huì)傳個(gè)程序計(jì)數(shù)器PC,于是CPU開始從
6、這里一條一條的執(zhí)行程序指令。n為單片機(jī)工作寄存器組(又稱通用寄存器組)編號(hào),共四組,取值為0,1,2,3中斷號(hào) 中斷源0 外部中斷01 定時(shí)器02 外部中斷13 定時(shí)器1中斷4 串
7、行口中斷這5個(gè)中斷源的中斷入口地址為:(在上一篇文章中講到的ROM前43個(gè)存儲(chǔ)單元就是他們,這40個(gè)地址用來存放中斷處理程序的地址單元,每一個(gè)類中斷的存儲(chǔ)單元只有8B,顯然不是中斷處理的程序,而是存放著中斷處理程序的真正地址)INT0:0003H 0T0: 000BH 1INT1:0013H 2T1: 001BH 3串口: 0023H 4中斷向量(中
8、斷入口地址)= 中斷號(hào)x8 +3 前面m意思很清楚,不同的m值表示這個(gè)函數(shù)是針對(duì)不同的中斷源,比如m為1是表示它是定時(shí)器0的中斷函數(shù),如void time0() interrupt 1 那么后面的using n 又是什么意思呢?在正在執(zhí)行一個(gè)特定任務(wù)時(shí),有更緊急的事情需要CPU來處理,涉及到中斷優(yōu)先權(quán)。高優(yōu)先權(quán)中斷低優(yōu)先權(quán)正在處理的程序,所以最好給每個(gè)優(yōu)先程序分配不同的寄存器組。 CPU正在處理某個(gè)事件,突然另外一個(gè)
9、事件需要處理,于是進(jìn)入中斷后,而你不想將現(xiàn)在執(zhí)行的程序的各寄存器狀態(tài)入棧,那么可以把這個(gè)中斷程序放入另一個(gè)寄存器組,如切換到1組,然后退出中斷時(shí),再切回到0組(原來的程序在0組)。 為了更好的了解這里意思,你可以看看工作寄存器組的作用是什么。下面的注意事項(xiàng)轉(zhuǎn)自網(wǎng)絡(luò)上其他朋友的文章(整理下,重復(fù)的去掉了,寫的非常好):(1)中斷函數(shù)不能進(jìn)行參數(shù)傳遞(2)中斷函數(shù)沒有返回值(3)在任何情況下都不能直接調(diào)用中斷函數(shù)(4)中斷函數(shù)使用浮點(diǎn)運(yùn)算要保存浮點(diǎn)寄存器的狀態(tài)。 (5)如果在中斷函數(shù)中調(diào)用了其它函數(shù),則被調(diào)用函數(shù)所使用的寄存器必
10、須與中斷函數(shù)相同,被調(diào)函數(shù)最好設(shè)置為可重入的。 (6)C51編譯器對(duì)中斷函數(shù)編譯時(shí)會(huì)自動(dòng)在程序開始和結(jié)束處加上相應(yīng)的內(nèi)容,具體如下:在程序開始處對(duì)ACC、B、DPH、DPL和PSW入棧,結(jié)束時(shí)出棧。中斷函數(shù)未加using n修飾符的,開始時(shí)還要將R0R1入棧,結(jié)束時(shí)出棧。如中斷函數(shù)加using n修飾符,則在開始將PSW入棧后還要修改PSW中的工作寄存器組選擇位。(7)C51編譯器從絕對(duì)地址8m+3處產(chǎn)生一個(gè)中斷向量,其中m為中斷號(hào),也即interrupt后面的數(shù)字。該向量包含一個(gè)到中斷函數(shù)入口地址的絕對(duì)跳轉(zhuǎn)。(8)中斷函數(shù)最好寫在文件的尾部,并且禁止使用extern存儲(chǔ)類型說明。防止其它程序調(diào)用。(9)在設(shè)計(jì)中斷時(shí),要注意的是哪些功能應(yīng)該放在中斷程序中,哪些功能應(yīng)該放在主程序中。一般來說中斷服務(wù)程序應(yīng)該做最少量的工作,這樣做有很多好處。首先系統(tǒng)對(duì)中斷的反應(yīng)面更寬了,有些系統(tǒng)如果丟失中斷或?qū)χ袛喾磻?yīng)太慢將產(chǎn)生十分嚴(yán)重的后果,這時(shí)有充足的時(shí)間等待中斷是十分
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 經(jīng)濟(jì)法的社會(huì)價(jià)值試題及答案
- 知識(shí)更新2025年試題及答案
- 2025年行政管理自考課堂試題及答案
- 執(zhí)業(yè)藥師考試錄取標(biāo)準(zhǔn)與試題及答案
- 行政管理專科考試真題及答案
- 2025年行政管理中國(guó)文化概論的復(fù)習(xí)資料試題及答案
- 2025年經(jīng)濟(jì)法復(fù)習(xí)實(shí)例分享試題及答案
- 行政管理??谱钥颊骖}與答案分析
- 大學(xué)語文課程試題及答案
- 行政法的司法解釋問題試題與答案
- 《行政組織學(xué)通論》配套教學(xué)課件
- 【表格】面試評(píng)估表(模板)
- 曾國(guó)藩識(shí)人用人之道課件
- 師德師風(fēng)教育整頓談心談話記錄表
- 鑄造作業(yè)指導(dǎo)書
- 學(xué)校質(zhì)量監(jiān)測(cè)應(yīng)急預(yù)案
- 電纜修復(fù)規(guī)范
- 儲(chǔ)層地質(zhì)學(xué)(中國(guó)石油大學(xué))-2沉積相分析
- 大班-社會(huì)語言-小學(xué)生的一天-課件
- 大眾特殊要求:Formel-Q第八版(中文版)
- 鑄件外觀缺陷圖
評(píng)論
0/150
提交評(píng)論