單片機中斷多級嵌套的軟件實現(xiàn)_第1頁
已閱讀1頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、科技信息oIT技術(shù)論壇OSCⅢNCE&TECHNOLOGYD師ORMATl0N2008年第8期單片機中斷多級嵌套的軟件實現(xiàn)何小河(綿陽職業(yè)技術(shù)學(xué)院信息系四川綿陽621000)【摘要】針對Mcs一51系列單片機只能由IP寄存器設(shè)定兩級中斷嵌套的問題,本文給出了利用軟件對中斷優(yōu)先級進(jìn)行擴展的方法,同時給出了多優(yōu)先級軟件擴展程序,該方法可用于需要多級中斷嵌套的應(yīng)用系統(tǒng)。【關(guān)鍵詞】單片機;優(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正在處理某件事情的時候。外部發(fā)生的某一事件(如一個電平的變化,一個脈沖沿的發(fā)生或定時器計數(shù)溢出等)請求CPU迅速去處理,于是CPU暫時中止當(dāng)

4、前的工作,轉(zhuǎn)去處理所發(fā)生的事件。中斷服務(wù)處理完該事件以后,再回到原來被中止的地方繼續(xù)原來的工作,這樣的一個過程稱之為中斷。以8051為例,中斷系統(tǒng)含有5個中斷源,分別是外部中斷0請求(INlD),外部中斷l(xiāng)請求(INTl),定時/計數(shù)器O溢出中斷請求(仰),定時/計數(shù)器l溢出中斷請求(T1)以及串行口中斷請求(TI/RI)。既然系統(tǒng)含有5個中斷源,就有可能出現(xiàn)數(shù)個中斷源同時提出中斷請求的情況,這樣,設(shè)計人員必須事先根據(jù)它們的輕重緩急來為

5、每個中斷源確定CPU對其的響應(yīng)順序。然而,對于中斷優(yōu)先級寄存器IP來說,只可能設(shè)定兩級優(yōu)先,即控制位為1時對應(yīng)的中斷源為高級中斷反之??刂莆粸?時對應(yīng)的為低級中斷。這樣就出現(xiàn)一個問題:如果一個中斷正在執(zhí)行。如何才能讓它響應(yīng)同級甚至是低級中斷請求呢2中斷多優(yōu)先級的擴展根據(jù)805l的結(jié)構(gòu)特點,其中斷系統(tǒng)中含有兩個不可尋址的“優(yōu)先級生效”觸發(fā)器。一個用于指出CPU是否正在執(zhí)行高優(yōu)先級的中斷服務(wù)程序,這個觸發(fā)器為l時,系統(tǒng)將屏蔽所有的中斷請求;

6、另一個則指出CPu是否正在執(zhí)行低優(yōu)先級中斷服務(wù)程序,該觸發(fā)器為l時,將阻止除高優(yōu)先級以外的一切中斷請求。由此可見,若要響應(yīng)同級甚至是低級中斷請求,必須使得該“優(yōu)先級生效”觸發(fā)器清零。但該觸發(fā)器又是不可尋址的。所以無法用軟件直接清零。遍歷系統(tǒng)所提供的11l條指令只有REll可以達(dá)到此目的。該指令可在CPU執(zhí)行該指令時一方面清除中斷響應(yīng)時所置位的“優(yōu)先級生效”觸發(fā)器,另一方面可從當(dāng)前棧頂彈出斷點地址送人程序計數(shù)PC從而返回主程序。3軟件擴展

7、方法31高級中斷源響應(yīng)低級中斷源的軟件設(shè)計現(xiàn)以當(dāng)前IE=81H(開放外部中斷0及總控制位),IP=olH(設(shè)定IN,m為高優(yōu)先級,正在執(zhí)行外部中斷0服務(wù)子程序為例來進(jìn)行說明。如欲響應(yīng)定時器l中斷,也就是要實現(xiàn)高級中斷源響應(yīng)低級中斷源,設(shè)計時可加入如下代碼而無須改變IP寄存器的內(nèi)容:PUSHlE:IE內(nèi)容人棧保護MOVIE#88H:開放串行口中斷CALLl涅D;繼續(xù)執(zhí)行原中斷子程序,但可隨時響應(yīng)串行口中斷請求POPIE:恢復(fù)原IE內(nèi)容RE

8、rllKZD:RE耵32同級中斷源之間響應(yīng)的軟件設(shè)計上述代碼體現(xiàn)了高級中斷源(IN∞)響應(yīng)低級中斷源(定時器1)的軟件實現(xiàn)方法。但是,8051系統(tǒng)共含有5個中斷源因此必須解決同優(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ā)器,此時可響應(yīng)其它中斷請求WORA::IN喲子程序的真實人口地址POPDPHPOPDPLRElrITO:PUSHDPLPUSHDPHMOVDPrR爿喲RAPUSHDPLP

10、USHDPHREll;(PC)_1DRA,清”高優(yōu)先級生效”觸發(fā)器,此時可響應(yīng)其它中斷請求喲RA::1U子程序的真實入口地址POPDPHPOPDPLRETIWl:PUSHDPLPUSHDPHMOVDP,rR#WlRAPUSHDPLPUSHDPHREll;(PC)=W1RA,清“高優(yōu)先級生效”觸發(fā)器,此時可響應(yīng)其它中斷請求WlRA::INTl子程序的真實入口地址(下轉(zhuǎn)第68頁J萬方數(shù)據(jù)單片機中斷多級嵌套的軟件實現(xiàn)單片機中斷多級嵌套的軟件實

11、現(xiàn)作者:何小河作者單位:綿陽職業(yè)技術(shù)學(xué)院信息系四川綿陽621000刊名:科技信息(科學(xué)教研)英文刊名:SCIENCE以C51的形式給出這種擴展方法的函數(shù)庫實現(xiàn)為該方法的使用賦予友好、簡潔的用戶接口.5.期刊論文許哲.張伯珩.邊川平.許曼.XUZhe.ZHANGBoheng.BIANChuanping.XUMan單片機外部中斷的擴展科學(xué)技術(shù)與工程20077(19)針對MCS51系列單片機只有2個外中斷介紹了兩種常用的外部中斷源的擴展方法同

12、時給出了每種擴展下利用匯編語言對中斷優(yōu)先級進(jìn)行擴展的程序.基于電平觸發(fā)型中斷申請的撤除要求提出了一種軟硬結(jié)合的可行方案基于節(jié)約單片機有限IO資源的目的提出了一種端口復(fù)用的新方案并結(jié)合電路原理圖對方案作了詳細(xì)地分析.6.期刊論文張遷.常菁.盧超.ZhangQian.ChangJing.LuChao利用編碼器對單片機中斷功能的擴展電子技術(shù)200936(8)以74LS148為例結(jié)合Proteus仿真軟件實例提出了利用優(yōu)先編碼器的優(yōu)先級擴展輸出

13、端(GS)與51系列單片機外中斷端口(INT0或INT1)相連用8個開關(guān)(SW1SW8)來仿真控制編碼器8個輸入端口(I0I7)的高低電平的輸入從而實現(xiàn)對外中斷擴展的方法并給出了參考程序.結(jié)合程序觀察仿真現(xiàn)象可以清楚的看到編碼器已從硬件電路上實現(xiàn)了對中斷源優(yōu)先級的高低排序以及實現(xiàn)了外中斷的嵌套.7.期刊論文張長井MCS51系統(tǒng)中斷優(yōu)先級的軟擴展宿州教育學(xué)院學(xué)報200811(2)鑒于MCS51系統(tǒng)只提供“二級中斷嵌套“提出MCS51系統(tǒng)中

14、斷優(yōu)先級的純軟件方法.其利用MCS51系統(tǒng)內(nèi)建的中斷允許寄存器IE和中斷優(yōu)先級寄存器IP通過屏蔽字機制來實現(xiàn)以C51的形式給出這種擴展方法的函數(shù)庫實現(xiàn).為該方法的使用賦予友好、簡潔的用戶接口.8.期刊論文汪建MCS96系列單片機外部中斷源的擴展方法微處理機1999(2)MCS96系列單片機的中斷系統(tǒng)具有十分靈活的結(jié)構(gòu).本文就該系列單片機中斷系統(tǒng)設(shè)計中外部中斷源的擴展問題進(jìn)行了討論給出了兩種可行的解決方案并對兩種方案進(jìn)行了比較說明.9.期

15、刊論文趙虎.趙嵐時間片輪轉(zhuǎn)技術(shù)在單片機控制系統(tǒng)中的應(yīng)用青海大學(xué)學(xué)報(自然科學(xué)版)200624(5)通過分析單片機控制系統(tǒng)功能結(jié)構(gòu)及軟硬件組成設(shè)計一個簡潔高效的任務(wù)調(diào)度算法將時間片輪轉(zhuǎn)技術(shù)運用于單片機控制系統(tǒng)的設(shè)計中從而實現(xiàn)了單片機多任務(wù)、多優(yōu)先級并發(fā)運行架構(gòu)的建立.10.期刊論文汪建.章育群MCS96系列單片機中斷優(yōu)先級的控制方法微處理機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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論