當(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文章
7924瀏覽量
153836 -
單片機(jī)
+關(guān)注
關(guān)注
6065文章
44936瀏覽量
647804 -
mcu
+關(guān)注
關(guān)注
146文章
17880瀏覽量
361407 -
中斷處理
+關(guān)注
關(guān)注
0文章
94瀏覽量
11209
發(fā)布評(píng)論請(qǐng)先 登錄
單片機(jī)中斷技術(shù)詳解
串口中斷是內(nèi)部中斷還是外部中斷,串口中斷是怎么觸發(fā)的
EE-134:為SHARC系列編寫(xiě)C兼容匯編代碼中斷處理程序

EE-192:使用C語(yǔ)言在Blackfin處理器上創(chuàng)建中斷驅(qū)動(dòng)系統(tǒng)

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

單片機(jī)有哪些中斷類(lèi)型
單片機(jī)的中斷機(jī)制
MCU IO口的作用和特點(diǎn)
ARM處理器的異常中斷響應(yīng)過(guò)程
freertos中斷優(yōu)先級(jí)在哪設(shè)置
【「ARM MCU嵌入式開(kāi)發(fā) | 基于國(guó)產(chǎn)GD32F10x芯片」閱讀體驗(yàn)】+閱讀中斷篇
【GD32 MCU 入門(mén)教程】GD32 MCU 常見(jiàn)外設(shè)介紹(4)EXTI 中斷介紹

CKS32F107xx系列MCU的中斷和事件

評(píng)論