版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、科技信息oIT技術(shù)論壇OSCⅢNCE&TECHNOLOGYD師ORMATl0N2008年第8期單片機(jī)中斷多級嵌套的軟件實(shí)現(xiàn)何小河(綿陽職業(yè)技術(shù)學(xué)院信息系四川綿陽621000)【摘要】針對Mcs一51系列單片機(jī)只能由IP寄存器設(shè)定兩級中斷嵌套的問題,本文給出了利用軟件對中斷優(yōu)先級進(jìn)行擴(kuò)展的方法,同時(shí)給出了多優(yōu)先級軟件擴(kuò)展程序,該方法可用于需要多級中斷嵌套的應(yīng)用系統(tǒng)?!娟P(guān)鍵詞】單片機(jī);優(yōu)先級;中斷;中斷優(yōu)先級寄存器【ABSTRACT】ne∞
2、ri鷦0fMCS_51SindeChipMicroc鯽puter(SCM)onlyhavetwoJevelinte珊ptn鶴tin轤byIP∞gi8ter自etiIlgnispaperintroduce8s嘲en攤thodsfbrtlleextensionofmultipriorityinMCUIIlternlptionsyst鋤Italsospeci6e8tllep加四砌ofe8cha曲er埠i仰throu小theemployment
3、of鯽缸wa陀The∞methodsc鋤be8ppliedtotllesyst鋤repuiringmIlltipdortyinte刪ptnestin鏟【ⅪⅣwo恥,s】singlechipMicrocomputer;Multi一面ty;Intempti∞;IPre垂ster1引言所謂中斷是指當(dāng)CPU正在處理某件事情的時(shí)候。外部發(fā)生的某一事件(如一個(gè)電平的變化,一個(gè)脈沖沿的發(fā)生或定時(shí)器計(jì)數(shù)溢出等)請求CPU迅速去處理,于是CPU暫時(shí)中止當(dāng)
4、前的工作,轉(zhuǎn)去處理所發(fā)生的事件。中斷服務(wù)處理完該事件以后,再回到原來被中止的地方繼續(xù)原來的工作,這樣的一個(gè)過程稱之為中斷。以8051為例,中斷系統(tǒng)含有5個(gè)中斷源,分別是外部中斷0請求(INlD),外部中斷l(xiāng)請求(INTl),定時(shí)/計(jì)數(shù)器O溢出中斷請求(仰),定時(shí)/計(jì)數(shù)器l溢出中斷請求(T1)以及串行口中斷請求(TI/RI)。既然系統(tǒng)含有5個(gè)中斷源,就有可能出現(xiàn)數(shù)個(gè)中斷源同時(shí)提出中斷請求的情況,這樣,設(shè)計(jì)人員必須事先根據(jù)它們的輕重緩急來為
5、每個(gè)中斷源確定CPU對其的響應(yīng)順序。然而,對于中斷優(yōu)先級寄存器IP來說,只可能設(shè)定兩級優(yōu)先,即控制位為1時(shí)對應(yīng)的中斷源為高級中斷反之??刂莆粸?時(shí)對應(yīng)的為低級中斷。這樣就出現(xiàn)一個(gè)問題:如果一個(gè)中斷正在執(zhí)行。如何才能讓它響應(yīng)同級甚至是低級中斷請求呢2中斷多優(yōu)先級的擴(kuò)展根據(jù)805l的結(jié)構(gòu)特點(diǎn),其中斷系統(tǒng)中含有兩個(gè)不可尋址的“優(yōu)先級生效”觸發(fā)器。一個(gè)用于指出CPU是否正在執(zhí)行高優(yōu)先級的中斷服務(wù)程序,這個(gè)觸發(fā)器為l時(shí),系統(tǒng)將屏蔽所有的中斷請求;
6、另一個(gè)則指出CPu是否正在執(zhí)行低優(yōu)先級中斷服務(wù)程序,該觸發(fā)器為l時(shí),將阻止除高優(yōu)先級以外的一切中斷請求。由此可見,若要響應(yīng)同級甚至是低級中斷請求,必須使得該“優(yōu)先級生效”觸發(fā)器清零。但該觸發(fā)器又是不可尋址的。所以無法用軟件直接清零。遍歷系統(tǒng)所提供的11l條指令只有REll可以達(dá)到此目的。該指令可在CPU執(zhí)行該指令時(shí)一方面清除中斷響應(yīng)時(shí)所置位的“優(yōu)先級生效”觸發(fā)器,另一方面可從當(dāng)前棧頂彈出斷點(diǎn)地址送人程序計(jì)數(shù)PC從而返回主程序。3軟件擴(kuò)展
7、方法31高級中斷源響應(yīng)低級中斷源的軟件設(shè)計(jì)現(xiàn)以當(dāng)前IE=81H(開放外部中斷0及總控制位),IP=olH(設(shè)定IN,m為高優(yōu)先級,正在執(zhí)行外部中斷0服務(wù)子程序?yàn)槔齺磉M(jìn)行說明。如欲響應(yīng)定時(shí)器l中斷,也就是要實(shí)現(xiàn)高級中斷源響應(yīng)低級中斷源,設(shè)計(jì)時(shí)可加入如下代碼而無須改變IP寄存器的內(nèi)容:PUSHlE:IE內(nèi)容人棧保護(hù)MOVIE#88H:開放串行口中斷CALLl涅D;繼續(xù)執(zhí)行原中斷子程序,但可隨時(shí)響應(yīng)串行口中斷請求POPIE:恢復(fù)原IE內(nèi)容RE
8、rllKZD:RE耵32同級中斷源之間響應(yīng)的軟件設(shè)計(jì)上述代碼體現(xiàn)了高級中斷源(IN∞)響應(yīng)低級中斷源(定時(shí)器1)的軟件實(shí)現(xiàn)方法。但是,8051系統(tǒng)共含有5個(gè)中斷源因此必須解決同優(yōu)先級中斷之間的嵌套問題,具體源程序如下:0RG0000HLJMPsTARTORGOD03HLIMPWO;INrIU入口地址0RG000BHUMPrm;陽入口地址ORG0013HLJMPWl:INTl入口地址0RG00lBHUMPT1:T1入口地址ORG0023H
9、LlMPSS;串行口入口地址sTART:MOVIE。#9FH;開放所有中斷M0vIP,#03H;設(shè)定INrm、TO為高優(yōu)先級sJMP$W0:PUSHDPLPUSHDPHMOVD”R#WORAPUSHDPLPUSHDPHm£11;(PC)=w0RA,清”高優(yōu)先級生效”觸發(fā)器,此時(shí)可響應(yīng)其它中斷請求WORA::IN喲子程序的真實(shí)人口地址POPDPHPOPDPLRElrITO:PUSHDPLPUSHDPHMOVDPrR爿喲RAPUSHDPLP
10、USHDPHREll;(PC)_1DRA,清”高優(yōu)先級生效”觸發(fā)器,此時(shí)可響應(yīng)其它中斷請求喲RA::1U子程序的真實(shí)入口地址POPDPHPOPDPLRETIWl:PUSHDPLPUSHDPHMOVDP,rR#WlRAPUSHDPLPUSHDPHREll;(PC)=W1RA,清“高優(yōu)先級生效”觸發(fā)器,此時(shí)可響應(yīng)其它中斷請求WlRA::INTl子程序的真實(shí)入口地址(下轉(zhuǎn)第68頁J萬方數(shù)據(jù)單片機(jī)中斷多級嵌套的軟件實(shí)現(xiàn)單片機(jī)中斷多級嵌套的軟件實(shí)
11、現(xiàn)作者:何小河作者單位:綿陽職業(yè)技術(shù)學(xué)院信息系四川綿陽621000刊名:科技信息(科學(xué)教研)英文刊名:SCIENCE以C51的形式給出這種擴(kuò)展方法的函數(shù)庫實(shí)現(xiàn)為該方法的使用賦予友好、簡潔的用戶接口.5.期刊論文許哲.張伯珩.邊川平.許曼.XUZhe.ZHANGBoheng.BIANChuanping.XUMan單片機(jī)外部中斷的擴(kuò)展科學(xué)技術(shù)與工程20077(19)針對MCS51系列單片機(jī)只有2個(gè)外中斷介紹了兩種常用的外部中斷源的擴(kuò)展方法同
12、時(shí)給出了每種擴(kuò)展下利用匯編語言對中斷優(yōu)先級進(jìn)行擴(kuò)展的程序.基于電平觸發(fā)型中斷申請的撤除要求提出了一種軟硬結(jié)合的可行方案基于節(jié)約單片機(jī)有限IO資源的目的提出了一種端口復(fù)用的新方案并結(jié)合電路原理圖對方案作了詳細(xì)地分析.6.期刊論文張遷.常菁.盧超.ZhangQian.ChangJing.LuChao利用編碼器對單片機(jī)中斷功能的擴(kuò)展電子技術(shù)200936(8)以74LS148為例結(jié)合Proteus仿真軟件實(shí)例提出了利用優(yōu)先編碼器的優(yōu)先級擴(kuò)展輸出
13、端(GS)與51系列單片機(jī)外中斷端口(INT0或INT1)相連用8個(gè)開關(guān)(SW1SW8)來仿真控制編碼器8個(gè)輸入端口(I0I7)的高低電平的輸入從而實(shí)現(xiàn)對外中斷擴(kuò)展的方法并給出了參考程序.結(jié)合程序觀察仿真現(xiàn)象可以清楚的看到編碼器已從硬件電路上實(shí)現(xiàn)了對中斷源優(yōu)先級的高低排序以及實(shí)現(xiàn)了外中斷的嵌套.7.期刊論文張長井MCS51系統(tǒng)中斷優(yōu)先級的軟擴(kuò)展宿州教育學(xué)院學(xué)報(bào)200811(2)鑒于MCS51系統(tǒng)只提供“二級中斷嵌套“提出MCS51系統(tǒng)中
14、斷優(yōu)先級的純軟件方法.其利用MCS51系統(tǒng)內(nèi)建的中斷允許寄存器IE和中斷優(yōu)先級寄存器IP通過屏蔽字機(jī)制來實(shí)現(xiàn)以C51的形式給出這種擴(kuò)展方法的函數(shù)庫實(shí)現(xiàn).為該方法的使用賦予友好、簡潔的用戶接口.8.期刊論文汪建MCS96系列單片機(jī)外部中斷源的擴(kuò)展方法微處理機(jī)1999(2)MCS96系列單片機(jī)的中斷系統(tǒng)具有十分靈活的結(jié)構(gòu).本文就該系列單片機(jī)中斷系統(tǒng)設(shè)計(jì)中外部中斷源的擴(kuò)展問題進(jìn)行了討論給出了兩種可行的解決方案并對兩種方案進(jìn)行了比較說明.9.期
15、刊論文趙虎.趙嵐時(shí)間片輪轉(zhuǎn)技術(shù)在單片機(jī)控制系統(tǒng)中的應(yīng)用青海大學(xué)學(xué)報(bào)(自然科學(xué)版)200624(5)通過分析單片機(jī)控制系統(tǒng)功能結(jié)構(gòu)及軟硬件組成設(shè)計(jì)一個(gè)簡潔高效的任務(wù)調(diào)度算法將時(shí)間片輪轉(zhuǎn)技術(shù)運(yùn)用于單片機(jī)控制系統(tǒng)的設(shè)計(jì)中從而實(shí)現(xiàn)了單片機(jī)多任務(wù)、多優(yōu)先級并發(fā)運(yùn)行架構(gòu)的建立.10.期刊論文汪建.章育群MCS96系列單片機(jī)中斷優(yōu)先級的控制方法微處理機(jī)1999(1)本文鏈接::d.g..cnPeriodical_kjxx200808052.aspx下
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)的中斷系統(tǒng)
- 基于單片機(jī)的多級菜單實(shí)現(xiàn)方法改進(jìn)
- 基于單片機(jī)的多級菜單實(shí)現(xiàn)方法改進(jìn)
- 基于單片機(jī)的多級菜單實(shí)現(xiàn)方法改進(jìn)
- 單片機(jī)中定時(shí)產(chǎn)生的中斷
- 單片機(jī)中斷技術(shù)實(shí)驗(yàn)報(bào)告
- 單片機(jī)中斷-從入門到精通
- 單片機(jī)的軟件復(fù)位
- 第十八課51單片機(jī)的中斷系統(tǒng)
- 第5章at89s51單片機(jī)的中斷系統(tǒng)
- 第六章 單片機(jī)的中斷與定時(shí)系統(tǒng)
- stc單片機(jī)pwm的實(shí)現(xiàn)
- 達(dá)內(nèi)學(xué)費(fèi)--pic單片機(jī)中斷程序設(shè)計(jì)技巧
- 單片機(jī)應(yīng)用系統(tǒng)單片機(jī)
- 單片機(jī)論文-漫談單片機(jī)
- 基于單片機(jī)的自動(dòng)窗簾控制系統(tǒng)軟件設(shè)計(jì)【單片機(jī)】【無圖】
- 基于單片機(jī)的自動(dòng)窗簾控制系統(tǒng)軟件設(shè)計(jì)【單片機(jī)】【無圖】
- 單片機(jī)定時(shí)器中斷原理和c語言代碼詳解
- 利用單片機(jī)實(shí)現(xiàn)串口通信
- 單片機(jī)外文翻譯-----單片機(jī)簡介
評論
0/150
提交評論