<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          飛思卡爾HCS12中斷

          作者: 時(shí)間:2016-11-25 來(lái)源:網(wǎng)絡(luò) 收藏
          默認(rèn)狀態(tài):
          在進(jìn)入中斷服務(wù)程序時(shí),I位自動(dòng)置1,禁止其他可屏蔽中斷
          即使有優(yōu)先級(jí)更高的中斷請(qǐng)求,也必須等當(dāng)前中斷服務(wù)程序執(zhí)行完以后才能響應(yīng)
          優(yōu)先級(jí)的作用只有在多個(gè)中斷源同時(shí)請(qǐng)求中斷時(shí)在能體現(xiàn)
          無(wú)法實(shí)現(xiàn)中斷嵌套
          如果在進(jìn)入中斷服務(wù)程序時(shí),手動(dòng)對(duì)I位清零:
          任何其他可屏蔽中斷都可以被響應(yīng),無(wú)論其優(yōu)先級(jí)有多高
          中斷響應(yīng)由時(shí)間控制,可以實(shí)現(xiàn)中斷嵌套
          對(duì)中斷執(zhí)行無(wú)法預(yù)測(cè)
          HPRIO寄存器
          寫入HPRIO中的中斷向量的后八位,可以改變?cè)撝袛嗟膬?yōu)先級(jí)
          同樣,優(yōu)先級(jí)的作用只有在多個(gè)中斷源同時(shí)請(qǐng)求中斷時(shí)在能體現(xiàn)





          中斷優(yōu)先處理機(jī)制:

          1:在中斷服務(wù)程序中,首先對(duì)I為清零,即EnableInterrupts
          2:選擇優(yōu)先級(jí)更高的中斷源可以進(jìn)入響應(yīng)中斷
          3:設(shè)置優(yōu)先等級(jí)
          (一)兩級(jí)
          一個(gè)中斷源為低優(yōu)先級(jí),其他為高優(yōu)先級(jí)
          在低優(yōu)先級(jí)中斷服務(wù)程序中,對(duì)I位清零
          在高優(yōu)先級(jí)中斷服務(wù)程序中,不清零
          (二)多級(jí)
          利用局部的中斷屏蔽位
          比如Timer Channel0 的中斷屏蔽位 TIE_C0I
          優(yōu)先機(jī)制 - 兩級(jí)
          例如:
          --中斷向量地址 $FFF0 – FFF1 為低優(yōu)先級(jí)
          --其他的中斷為高優(yōu)先級(jí)
          --在$FFF0 – FFF1 中斷服務(wù)程序中,EnableInterrupts(I位清零)
          --其他的中斷包括自己都可以在中斷服務(wù)程序執(zhí)行時(shí),被響應(yīng)
          --在其他的中斷服務(wù)程序中,I位不清零(默認(rèn))
          --只有當(dāng)前中斷服務(wù)程序執(zhí)行完后,才能響應(yīng)其他的中斷請(qǐng)求
          當(dāng)同時(shí)有多個(gè)中斷源請(qǐng)求中斷時(shí),中斷向量地址最靠近$FFFF的,將會(huì)首先被響應(yīng)。

          自定義優(yōu)先級(jí)
          中斷向量地址
          中斷源
          CCR屏蔽位
          局部屏蔽位
          HPRIO
          1
          $FFEE,$FFEF
          ECT通道0
          I
          TIE_C0I
          $EE
          0
          $FFEC,$FFED
          ECT通道1
          I
          TIE_C1I
          $EC
          2
          $FFEA,$FFEB
          ECT通道2
          I
          TIE_C2I
          $EA


          要求:在低優(yōu)先級(jí)的中斷服務(wù)程序中,高優(yōu)先級(jí)的中斷請(qǐng)求可以被響應(yīng)

          HPRIO = 0xEA:ECT0,1,2同時(shí)請(qǐng)求中斷時(shí),CPU將會(huì)首先響應(yīng)通道2
          默認(rèn)時(shí),CPU將會(huì)首先響應(yīng)通道0


          優(yōu)先機(jī)制-多級(jí)

          情況 1:
          每個(gè)中斷都單獨(dú)發(fā)生,在一個(gè)中斷程序執(zhí)行時(shí),沒(méi)有其他中斷
          情況 2:
          在執(zhí)行ECT1的中斷服務(wù)程序時(shí),ECT0請(qǐng)求中斷
          ECT0中斷服務(wù)程序?qū)⒈粓?zhí)行
          情況 3:
          在執(zhí)行ECT2的中斷服務(wù)程序時(shí),ECT0請(qǐng)求中斷
          ECT2的中斷服務(wù)程序執(zhí)行結(jié)束后,執(zhí)行ECT0的中斷服務(wù)程序
          情況 4:
          ECT1,ECT2同時(shí)請(qǐng)求中斷

          ECT1的中斷服務(wù)程序先執(zhí)行,當(dāng)EnableInterrupts后
          執(zhí)行ECT2的中斷服務(wù)程序
          ECT2的中斷服務(wù)程序執(zhí)行結(jié)束后,返回執(zhí)行ECT1的中斷服務(wù)程序

          在ECT0中斷服務(wù)程序中:
          TIE_C1I = 0; //關(guān)閉ECT1局部中斷
          TIE_C2I = 1; //開(kāi)放ECT2局部中斷
          EnableInterrupts; //開(kāi)放全局中斷

          TIE_C1I = 1; //開(kāi)放ECT1局部中斷
          TIE_C2I = 1; //開(kāi)放ECT2局部中斷
          在ECT1中斷服務(wù)程序中(自定義優(yōu)先級(jí)最低):

          TIE_C0I = 1; //開(kāi)放ECT0局部中斷
          TIE_C2I = 1; //開(kāi)放ECT2局部中斷
          EnableInterrupts; //開(kāi)放全局中斷

          TIE_C0I = 1; //開(kāi)放ECT0局部中斷
          TIE_C2I = 1; //開(kāi)放ECT2局部中斷
          在ECT2中斷服務(wù)程序中(自定義優(yōu)先級(jí)最高):
          用戶程序



          關(guān)鍵詞: 飛思卡爾HCS12中

          評(píng)論


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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();