關於STM32 NVIC配置的解釋

2022-05-22 21:33:10 字數 443 閱讀 8882

大部分學習用的開發板在配置各個外設的中斷優先順序時,習慣在每個外設的初始化檔案裡都進行nvic group配置,例如在adc和usart都有nvic的配置如下:

adc中:

void adc_nvic_configuration(void)

usart中:

void nvic_configuration(void)

但實際上這種配置是不合理的,即如果假設兩個nvic配置的中斷組不同,如果其中乙個外設引用了最後配置中斷組允許的優先順序之外的值,可能會出現衝突。和老師討論過後,他認為如果之前初始化的優先順序較後面優先順序組設定的值不合理,前面的中斷可能就不能響應,but。。。。。

我實驗時發現,無論如何更改這兩個優先順序配置順序,貌似對我的程式結果沒有影響。

當然老師的建議是在工程中建立systemconfig的檔案進行中斷優先順序組及時鐘等的配置,即中斷優先順序組配置只出現一次,

關於STM32 NVIC配置的解釋

大部分學習用的開發板在配置各個外設的中斷優先順序時,習慣在每個外設的初始化檔案裡都進行nvic group配置,例如在adc和usart都有nvic的配置如下 adc中 void adc nvic configuration void usart中 void nvic configuration v...

關於STM32 NVIC配置的解釋

大部分學習用的開發板在配置各個外設的中斷優先順序時,習慣在每個外設的初始化檔案裡都進行nvic group配置,例如在adc和usart都有nvic的配置如下 adc中 void adc nvic configuration void usart中 void nvic configuration v...

關於STM32 NVIC配置的解釋

大部分學習用的開發板在配置各個外設的中斷優先順序時,習慣在每個外設的初始化檔案裡都進行nvic group配置,例如在adc和usart都有nvic的配置如下 adc中 void adc nvic configuration void usart中 void nvic configuration v...