STM32的中斷優先級別理解20210524


https://blog.csdn.net/dahailinan/article/details/80693781

 

 

 

 

理解:

1、STM32  總共有4個bit用來描述中斷的種類,4個bit一共有5種組合【搶占式優先級別+副優先級(響應優先級)】,分組就決定了搶占優先級占用的bit數。組0也就是表示0個bit為搶占優先級。

2、搶占式優先級別高的可以打斷低優先級別的工作,相同搶占優先級的不能相互打斷。

3、副優先級高的中斷來臨是,序號低的優先處理【響應】。

 

 

 

前提條件1:組別優先順序(第0組優先級最強,第4組優先級最弱):NVIC_PriorityGroup_0>NVIC_PriorityGroup_1>NVIC_PriorityGroup_2>NVIC_PriorityGroup_3>NVIC_PriorityGroup_4
前提條件2:“組”優先級別>“搶”占優先級別>“副”優先級別
前提條件3:同一組優先級別中,不同的搶占級別之間,其中一搶占級別正在做事,另外搶占級別不能打斷他;(即”同一組優先級下的中斷源間,沒有中斷嵌套“)
前提條件4:不同組優先級別間,依據優先級強弱,優先級別高的組的中斷源可以打斷優先級別低的組的正在做的事情;(即:不同組優先級間,可以中斷嵌套)

 

對於上面的理解:

STM32中,每個設備都可以配置不同的 中斷組,搶占優先級,響應優先級。

 

具體舉例:

項目需要2個串口,但是不是兩個串口同時使用,只是隨機使用其中一個,程序對2個串口的優先級需要配置;

 

要求兩個串口工作的時候不能相互打斷,最好也不鞥你被其他程序打斷,那么可以把2個串口都設置成 NVIC_PriorityGroup_0   分組0【0個bit表示搶占優先級】,副優先級可以分別設置為1,2

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM