當(dāng)MCU接收到一個(gè)中斷信號(hào)時(shí),它會(huì)暫停當(dāng)前正在執(zhí)行的任務(wù),保存現(xiàn)場(chǎng),然后跳轉(zhuǎn)到預(yù)設(shè)的中斷處理程序(Interrupt Service Routine, ISR)去處理這個(gè)中斷。處理完畢后,MCU會(huì)恢復(fù)現(xiàn)場(chǎng),并繼續(xù)執(zhí)行之前被中斷的任務(wù)。
MCU(微控制器)的中斷處理過(guò)程大致可以分為以下幾個(gè)步驟:
1.中斷請(qǐng)求:當(dāng)外部設(shè)備對(duì)單片機(jī)產(chǎn)生中斷請(qǐng)求時(shí),單片機(jī)會(huì)在當(dāng)前程序運(yùn)行到一個(gè)合適的地方時(shí)響應(yīng)這個(gè)中斷請(qǐng)求。
2.中斷檢測(cè):?jiǎn)纹瑱C(jī)通過(guò)檢查中斷請(qǐng)求寄存器,確定是否存在未處理的中斷請(qǐng)求。
3.中斷響應(yīng):一旦檢測(cè)到中斷請(qǐng)求,單片機(jī)會(huì)立即暫停當(dāng)前的任務(wù),保存當(dāng)前的程序計(jì)數(shù)器值等關(guān)鍵信息,這樣在中斷處理完成后,可以返回到原來(lái)的程序繼續(xù)執(zhí)行。
4.中斷處理:?jiǎn)纹瑱C(jī)根據(jù)中斷源,執(zhí)行相關(guān)的中斷服務(wù)程序。這個(gè)過(guò)程也叫做中斷服務(wù)例程。
5.中斷返回:中斷服務(wù)完成后,單片機(jī)恢復(fù)被保存的程序計(jì)數(shù)器值等信息,返回到原來(lái)的任務(wù),繼續(xù)執(zhí)行被打斷的程序。
在具體實(shí)施中,有兩個(gè)關(guān)鍵的機(jī)制,即中斷使能和中斷優(yōu)先級(jí)。
1.中斷使能:?jiǎn)纹瑱C(jī)可以通過(guò)中斷使能寄存器來(lái)開(kāi)啟或關(guān)閉某個(gè)特定的中斷源。只有被使能的中斷才有可能被單片機(jī)響應(yīng)。
2.中斷優(yōu)先級(jí):當(dāng)多個(gè)中斷請(qǐng)求同時(shí)發(fā)生時(shí),單片機(jī)會(huì)根據(jù)設(shè)置的優(yōu)先級(jí)來(lái)選取處理哪個(gè)中斷。具有高優(yōu)先級(jí)的中斷會(huì)優(yōu)先得到處理。
-
微控制器
+關(guān)注
關(guān)注
48文章
8175瀏覽量
159803 -
單片機(jī)
+關(guān)注
關(guān)注
6071文章
45254瀏覽量
659915 -
mcu
+關(guān)注
關(guān)注
147文章
18374瀏覽量
378549 -
中斷處理
+關(guān)注
關(guān)注
0文章
94瀏覽量
11370
發(fā)布評(píng)論請(qǐng)先 登錄
瑞薩RA系列MCU的中斷過(guò)程介紹

瑞薩RA系列MCU的外部引腳中斷詳解

NUC972DF62Y LCD FIFO欠載中斷如何處理?
當(dāng)UART數(shù)據(jù)傳輸過(guò)程中發(fā)生RLS(接收線狀態(tài))中斷時(shí),如何處理PEF、FEF和BIF標(biāo)志?
靜力水準(zhǔn)儀在測(cè)量過(guò)程中遇到誤差如何處理?

請(qǐng)問(wèn)中斷過(guò)多的時(shí)候進(jìn)入硬件錯(cuò)誤如何處置?

單片機(jī)中斷技術(shù)詳解
串口中斷是內(nèi)部中斷還是外部中斷,串口中斷是怎么觸發(fā)的
EE-192:使用C語(yǔ)言在Blackfin處理器上創(chuàng)建中斷驅(qū)動(dòng)系統(tǒng)

與MCU直接相連的ADS8528(芯片2)的INT/BUSY引腳該如何處理?
OMAP5912多媒體處理器中斷參考指南

單片機(jī)有哪些中斷類型
單片機(jī)的中斷機(jī)制
使用CSL來(lái)補(bǔ)充操作系統(tǒng)調(diào)度程序處理級(jí)聯(lián)中斷

評(píng)論