新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > MCS-96系列單片機中斷優(yōu)先級的控制方法

MCS-96系列單片機中斷優(yōu)先級的控制方法

作者: 時間:2012-03-31 來源:網(wǎng)絡(luò) 收藏

3.4 任意安排各源的級別

可根據(jù)系統(tǒng)的實際需要,重新安排各源的級,使之不同于硬件所規(guī)定的級。具體做法是在每一中斷服務(wù)程序的開始即關(guān)中斷,然后對INT-MASK進行設(shè)置,只開放預(yù)定的高級別的中斷。假設(shè)需設(shè)定優(yōu)先級由高至低的順序依次為:定時器溢出中斷、外中斷、A/D轉(zhuǎn)換結(jié)束中斷,則對應(yīng)的三個中斷服務(wù)程序可設(shè)計如下:
  TIMERV:PUSHF ??;定時器溢出的中斷服務(wù)程序
      .
      .
      .
      POPF
      RET
  EXTINT:PUSHF  ??;外中斷的中斷服務(wù)程序
      LDB INT_MASK, # 01H ;只開放定時器溢出中斷
      EI
      .
      .
      .
      POPF
      RET
AD-INT:PUSHF     ;A/D轉(zhuǎn)換結(jié)束中斷服務(wù)程序
    LDB INT_MASK, # 81H ;開放定時器溢出中斷及外中斷
    EI
    .
    .
    .
    POPF
    RET

在A/D轉(zhuǎn)換結(jié)束的中斷服務(wù)程序中開放了定時器溢出中斷和外中斷,則這兩類中斷均可打斷該程序的運行;在外中斷的中斷服務(wù)程序中只開放了定時器溢出中斷;而在定時器溢出的中斷服務(wù)程序的運行中則禁止任何中斷,這樣便保證了預(yù)定的中斷嵌套的實現(xiàn)。

4、MCS—96中斷

優(yōu)先級小結(jié)

如前所述,MCS—96具有與眾不同的中斷結(jié)構(gòu),其中斷優(yōu)先級的極具靈活性。硬件排隊電路雖為各類中斷源規(guī)定了優(yōu)先級,但由于正在被服務(wù)的中斷源不參加有新的中斷申請時的優(yōu)先級的比較,這就造成了高級別的服務(wù)過程可能會被低級別的申請所打斷的結(jié)果。但正如前面所討論的,可采取一定的軟件措施實現(xiàn)預(yù)定的優(yōu)先級排隊方案,即根據(jù)不同的情況在中斷的服務(wù)程序中通過關(guān)、開中斷及設(shè)置中斷屏蔽寄存器INT-MASK來達到目的。顯然這種可使用戶隨心所欲地安排中斷源的優(yōu)先級順序,具有很大的靈活性,為中斷系統(tǒng)的設(shè)計、軟件編程帶來了方便。

5、參考文獻
 [1]金磐石,王永明.INTEL96單片微型機應(yīng)用詳解.北京:電子工業(yè)出版社,1992
 [2]張振安,張培仁.MCS—96系列單片微機原理與實踐.合肥:中國科技大學(xué)出版社,1993
 [3]朱曉強,姚志石.8096/8098原理及應(yīng)用.上海:復(fù)旦大學(xué)出版社,1993


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉