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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > PIC單片機(jī)的中斷問(wèn)答

          PIC單片機(jī)的中斷問(wèn)答

          作者: 時(shí)間:2013-05-11 來(lái)源:網(wǎng)絡(luò) 收藏

          當(dāng)然,準(zhǔn)確地說(shuō),這是一種順序,而非級(jí)別,呵呵。

          如果了解一下51的中斷系統(tǒng),相信你能更好地理解PIC的中斷的級(jí)別:

          將會(huì)出現(xiàn)你說(shuō)的情況,當(dāng)優(yōu)先級(jí)更高的中斷來(lái)臨時(shí),內(nèi)核將暫時(shí)停止當(dāng)前中斷服務(wù),保存當(dāng)前中斷服務(wù)的現(xiàn)場(chǎng),執(zhí)行優(yōu)先級(jí)更高的中斷服務(wù),處理完成后,恢復(fù)現(xiàn)場(chǎng),執(zhí)行未處理完成的中斷服務(wù)....,最后,返回主程序。

          小弟講得有點(diǎn)煩瑣,并不形象,可能還有紕漏和謬誤之處,請(qǐng)大家指正,相信johnfrank在仔細(xì)看書(shū)之后,應(yīng)該可以形成自己的正確看法。

          zdtdl:小弟說(shuō)兩句~~

          簡(jiǎn)單地說(shuō),當(dāng)系統(tǒng)響應(yīng)一個(gè)中斷時(shí),GIE位將被自動(dòng)清零以禁止其他的中斷,在執(zhí)行中斷返回指令RETFIE后系統(tǒng)再自動(dòng)置GIE位1開(kāi)放中斷。只要不在中斷程序中對(duì)GIE置1,就不會(huì)產(chǎn)生反復(fù)進(jìn)入中斷的現(xiàn)象,靠查詢方式?jīng)Q定響應(yīng)誰(shuí)。PIC也有中斷嵌套,可以形成多級(jí)嵌套,甚至自身嵌套,不過(guò)嵌套的級(jí)數(shù)絕對(duì)不能超過(guò)硬件堆棧的深度。

          -------------------------

          PIC中檔單片機(jī)的中斷總結(jié)正文

          一、中斷活動(dòng)的過(guò)程

          對(duì)于來(lái)說(shuō),一次中斷的過(guò)程大致有下列階段:

          為了使得說(shuō)明形象和直觀,本文采用一些詼諧的語(yǔ)句來(lái)比喻說(shuō)明:

          中斷請(qǐng)求---------比喻成申請(qǐng)買(mǎi)經(jīng)濟(jì)適用房的請(qǐng)求

          中斷標(biāo)志-------一份申請(qǐng)書(shū)

          本中斷使能xxIE-----本單位領(lǐng)導(dǎo)

          PEIE-------------戶口辦公室主任

          GIE--------------銀行的管理信貸的科長(zhǎng)

          1.中斷請(qǐng)求:房子太少,兒子要結(jié)婚了,得買(mǎi)房了,可資源和財(cái)力有限,不能賣(mài)商品房,只好按特殊情況處理,寫(xiě)一份申請(qǐng)書(shū)(中斷標(biāo)志位IF置1);

          2.本單位領(lǐng)導(dǎo)xxIE看了之后,如果給你蓋了一個(gè)戳:(即該中斷使能位IE=1),那么恭喜你,這份申請(qǐng)書(shū)可以提交到更高一級(jí)的部門(mén);如果沒(méi)蓋(xxIE=0),那么對(duì)不起,先放我這里吧,等我們研究研究好后再說(shuō)。如果你不開(kāi)心,要拿回申請(qǐng)書(shū)撕掉,呵呵,那么IF=0;你的購(gòu)房請(qǐng)求之夢(mèng)破滅;

          3.xxIE領(lǐng)導(dǎo)將根據(jù)戶口,將這些請(qǐng)求書(shū)給分類,一類是外地遷來(lái)的戶口,提交給戶口辦公室PEIE主任審查,PEIE主任如果給你蓋了個(gè)戳(PEIE=1),那么,他將會(huì)把申請(qǐng)書(shū)提交給銀行的GIE科長(zhǎng)批準(zhǔn),否則就是放在這里再研究研究或者你要回來(lái)撕毀;一類是本地戶口,可直接提交給銀行的GIE科長(zhǎng)批準(zhǔn),然后你將申請(qǐng)書(shū)帶到GIE科長(zhǎng)的辦公室。

          4. GIE科長(zhǎng)蓋了章之后(GIE=1),然后,你就可以拿著申請(qǐng)書(shū)去找房地產(chǎn)商要房子了(此時(shí)PC指針=0004H),因?yàn)镚IE科長(zhǎng)有很多事情要做,所以他每蓋了一次戳之后(注意是一次不是一個(gè),因?yàn)橐苍S有多個(gè)中斷同時(shí)發(fā)生,也就是說(shuō)有其他地方的人來(lái)請(qǐng)GIE蓋戳),就在辦公室門(mén)外掛了個(gè)牌子:請(qǐng)勿打擾。他自己則休息去了,直到接到RETFIE的電話或者有人打他的手機(jī)。

          5. 房地產(chǎn)商準(zhǔn)備給房子了,不過(guò)你最好得先把各項(xiàng)手續(xù)給填好,叫5w押金,另外協(xié)議阿,合同阿,都得自己搞定,這叫“保護(hù)現(xiàn)場(chǎng)”。

          6. 房地產(chǎn)商開(kāi)始上班了,于是挨個(gè)查“申請(qǐng)書(shū)”是誰(shuí)提交的,以便給你安排你預(yù)定的房子。這個(gè)叫“中斷查詢”。

          7. 查到是你的后,然后打電話讓你過(guò)來(lái),帶你去看房子,把鑰匙給你。這個(gè)交“中斷處理”。

          8. 鑰匙交給你之后,房子你是到手了,不過(guò)這份申請(qǐng)書(shū)就失效了,房地產(chǎn)商將該申請(qǐng)書(shū)銷毀。這個(gè)叫“清除中斷標(biāo)志”。

          9. 好啦,現(xiàn)在你可以去房地產(chǎn)商自己去要回以前交的押金,身份證啊等等。這個(gè)叫“恢復(fù)現(xiàn)場(chǎng)”。

          10. 最后,房地產(chǎn)商辦完了,讓RETFIE小姐打個(gè)電話給GIE科長(zhǎng)(執(zhí)行RETFIE指令),GIE科長(zhǎng)才起來(lái),把“請(qǐng)勿打擾”的牌子取下,讓其他的帶著申請(qǐng)書(shū)的人進(jìn)來(lái)。當(dāng)然,如果你的事情還沒(méi)搞定,GIE科長(zhǎng)的關(guān)系戶打了他的手機(jī)(你在辦事時(shí)-處理中斷時(shí),若有GIE被置1),他也會(huì)開(kāi)門(mén)取下“請(qǐng)勿打擾”的牌子,讓關(guān)系戶進(jìn)來(lái),給他蓋好章。這下就對(duì)不起了,人家有關(guān)系,所以你的事情要馬上停下來(lái),先等關(guān)系戶辦完他的事情之后,再給你辦你的事情。這個(gè)叫“中斷嵌套”,要注意GIE科長(zhǎng)有8個(gè)關(guān)系戶(硬件堆棧的深度為8級(jí))哦。

          二、需要注意的問(wèn)題:

          1. 中斷現(xiàn)場(chǎng)的保護(hù)(可以參考以前的帖子,在xieyubing版主的指點(diǎn)下,有恰當(dāng)?shù)睦?;

          2. 初次上電復(fù)位、電源跌落復(fù)位和其他情況下的復(fù)位,均使得全局中斷位GIE和其他中斷使能位xxIE=0;

          3. 中斷標(biāo)志位的狀態(tài)與該中斷源是否被屏蔽無(wú)關(guān),與全局中斷使能位GIE也無(wú)關(guān)。

          4. 當(dāng)開(kāi)放某一中斷源時(shí),該中斷源就是通過(guò)中斷標(biāo)志向CPU申請(qǐng)中斷的,無(wú)論什么原因,只要標(biāo)志位IF置1(可以用軟件強(qiáng)行置1),均會(huì)產(chǎn)生中斷請(qǐng)求。

          5. 當(dāng)中斷標(biāo)志位為1,如果該中斷被屏蔽或者被禁止了,只要不清除標(biāo)志位,那么該中斷請(qǐng)求會(huì)被潛伏下來(lái),一旦屏蔽解除,立即產(chǎn)生中斷響應(yīng)。反之,如果在屏蔽/禁止條件解除之前清除了該標(biāo)志位,那么則無(wú)中斷請(qǐng)求。

          6. 當(dāng)CPU響應(yīng)任一中斷時(shí),全局中斷使能位GIE會(huì)自動(dòng)清零;當(dāng)中斷返回時(shí),它有自動(dòng)置1。如果在中斷處理期間,用軟件將已經(jīng)清零的GIE位又重新置位,這個(gè)時(shí)候若再出現(xiàn)中斷請(qǐng)求,就可以形成了中斷嵌套。即:在處理某一中斷期間又響應(yīng)了其他中斷請(qǐng)求,就形成了中斷嵌套,此時(shí),前一中斷處理過(guò)程會(huì)被暫停而進(jìn)入新的中斷處理,當(dāng)新中斷處理完畢后,才會(huì)繼續(xù)處理前一個(gè)被擱置的中斷。此方式可以形成多級(jí)嵌套,但不能超過(guò)硬件堆棧的深度8級(jí),以免造成堆棧溢出而不能正常返回。



          評(píng)論


          相關(guān)推薦

          技術(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); })();