首先我們需要知道什么是中斷優(yōu)先級:中斷優(yōu)先級是CPU響應中斷的先后順序
中斷優(yōu)先處理的原則是:
- 先響應優(yōu)先級高的中斷請求,再響應優(yōu)先級低的中斷請求。
- 如果一個中斷請求己被響應,同級的其他中斷請求將被禁止。
- 如果同級的多個中斷請求同時出現(xiàn)
中斷優(yōu)先級是CPU響應中斷的先后順序。中斷優(yōu)先處理的原則是:
- 先響應優(yōu)先級高的中斷請求,再響應優(yōu)先級低的中斷請求。
- 如果一個中斷請求己被響應,同級的其他中斷請求將被禁止。
- 如果同級的多個中斷請求同時出現(xiàn),CPU則按單片機內(nèi)部的自然優(yōu)先級順序響應各中斷請求。
單片機內(nèi)部自然優(yōu)先級順序(由高到低)為:
外部中斷0→定時器0中斷→外部中斷l(xiāng)→定時器1中斷→串行接口中斷
中斷優(yōu)先級的配置:
首先,對STM32中斷進行分組,組0-4.同時,對每個中斷設置一個搶占優(yōu)先級和一個響應優(yōu)先級
搶占優(yōu)先級和響應優(yōu)先級的區(qū)別
高優(yōu)先級的搶占優(yōu)先級是可以打斷正在進行的低搶占優(yōu)先級中斷的。
搶占優(yōu)先級相同的中斷,高響應優(yōu)先級不可以打斷低響應優(yōu)先級的中斷。
搶占優(yōu)先級相同的中斷,當兩個中斷同時發(fā)生的情況下,哪個響應優(yōu)先級高,哪個先執(zhí)行。
如果兩個中斷的搶占優(yōu)先級和響應優(yōu)先級都是一樣的話,則看哪個中斷先發(fā)生就先執(zhí)行。
使用講解 :
實際在使用中我們可以根據(jù)實際情況設置相應的優(yōu)先級分組。
特別注意:一個程序代碼里只能有一個中斷優(yōu)先級分組,存在多個 優(yōu)先級分組可能會導致程序出現(xiàn)奇奇怪怪的錯誤!
-
單片機
+關(guān)注
關(guān)注
6030文章
44489瀏覽量
631990 -
cpu
+關(guān)注
關(guān)注
68文章
10804瀏覽量
210843 -
中斷優(yōu)先級
+關(guān)注
關(guān)注
0文章
22瀏覽量
9339
發(fā)布評論請先 登錄
相關(guān)推薦
評論