STM32F4 NVIC中斷配置(二)

2021-10-08 18:03:18 字數 3300 閱讀 1674

使中斷必須進行中斷優先順序分組配置:

nvic_prioritygroupconfig(優先順序分組);

優先順序分組

主優先順序(搶占優先順序)

子優先順序 (響應優先順序)

描述nvic_prioritygroup_0

00-15

主-0bit,子-4bit

nvic_prioritygroup_1

0-10-7

主-1bit,子-3bit

nvic_prioritygroup_2

0-30-3

主-2bit,子-2bit

nvic_prioritygroup_3

0-70-1

主-3bit,子-1bit

nvic_prioritygroup_4

0-15

0主-4bit,子-0bit

欄位名解釋

nvic_irqchannel

中斷通道

nvic_irqchannelpreemptionpriority

設定搶占優先順序

nvic_irqchannelsubpriority

設定響應優先順序

nvic_irqchannelcmd

使能中斷通道

欄位名解釋

wwdg_irqchannel

視窗看門狗中斷

pvd_irqchannel

pvd 通過 exti 探測中斷

tamper_irqchannel

篡改中斷

rtc_irqchannel

rtc 全域性中斷

fla****f_irqchannel

flash 全域性中斷

rcc_irqchannel

rcc 全域性中斷

exti0_irqchannel

外部中斷線 0 中斷

exti1_irqchannel

外部中斷線 1 中斷

exti2_irqchannel

外部中斷線 2 中斷

exti3_irqchannel

外部中斷線 3 中斷

exti4_irqchannel

外部中斷線 4 中斷

dmachannel1_irqchannel

dma 通道 1 中斷

dmachannel2_irqchannel

dma 通道 2 中斷

dmachannel3_irqchannel

dma 通道 3 中斷

dmachannel4_irqchannel

dma 通道 4 中斷

dmachannel5_irqchannel

dma 通道 5 中斷

dmachannel6_irqchannel

dma 通道 6 中斷

dmachannel7_irqchannel

dma 通道 7 中斷

adc_irqchannel

adc 全域性中斷

usb_hp_cantx_irqchannel

usb 高優先順序或者 can 傳送中斷

usb_lp_can_rx0_irqchannel

usb 低優先順序或者 can 接收 0 中斷

can_rx1_irqchannel

can 接收 1 中斷

can_sce_irqchannel

can sce 中斷

exti9_5_irqchannel

外部中斷線 9-5 中斷

tim1_brk_irqchannel

tim1 暫停中斷

tim1_up_irqchannel

tim1 重新整理中斷

tim1_trg_com_irqchannel

tim1 觸發和通訊中斷

tim1_cc_irqchannel

tim1 捕獲比較中斷

tim2_irqchannel

tim2 全域性中斷

tim3_irqchannel

tim3 全域性中斷

tim4_irqchannel

tim4 全域性中斷

i2c1_ev_irqchannel

i2c1 事件中斷

i2c1_er_irqchannel

i2c1 錯誤中斷

i2c2_ev_irqchannel

i2c2 事件中斷

i2c2_er_irqchannel

i2c2 錯誤中斷

spi1_irqchannel

spi1 全域性中斷

spi2_irqchannel

spi2 全域性中斷

usart1_irqchannel

usart1 全域性中斷

usart2_irqchannel

usart2 全域性中斷

usart3_irqchannel

usart3 全域性中斷

exti15_10_irqchannel

外部中斷線 15-10 中斷

rtcalarm_irqchannel

rtc 鬧鐘通過 exti 線中斷

usbwakeup_irqchannel

usb 通過 exti 線從懸掛喚醒中斷

搶占優先順序與響應優先順序參考優先順序分組

操作呼叫函式/結構體

定義結構體

nvic_inittypedef

配置中斷通道

nvic_irqchannel

設定搶占優先順序

nvic_irqchannelpreemptionpriority

設定響應優先順序

nvic_irqchannelsubpriority

使能外部中斷通道

nvic_irqchannelcmd

//定義結構體

nvic_inittypedef nvic_initstructure;

//配置中斷通道

nvic_initstructure.nvic_irqchannel=中斷通道;

//設定搶占優先順序

nvic_initstructure.nvic_irqchannelpreemptionpriority = 搶占優先順序

//設定響應優先順序

nvic_initstructure.nvic_irqchannelsubpriority = 響應優先順序

//使能外部中斷通道

nvic_initstructure.nvic_irqchannelcmd = enable;

//初始化

nvic_init

(&nvic_initstructure)

;

STM32F4設定NVIC中斷優先順序分組

中斷管理方法 首先,對stm32中斷進行分組,組0 4。同時,對每個中斷設定乙個搶占優先順序和乙個響應優先順序值。分組配置是在暫存器scb aircr中配置 高優先順序的搶占優先順序是可以打斷正在進行的低搶占優先順序中斷的。搶占優先順序相同的中斷,高響應優先順序不可以打斷低響應優先順序的中斷。搶占優...

STM32F103系列NVIC中斷優先順序分組講解

一 簡介 cm3核心支援256個中斷,16個核心中斷,240個外部中斷,並且擁有256級的可程式設計中斷設定。但是stm32只用到了cm3核心的一部分,stm32有84個中斷,包括16個核心中斷和68個可遮蔽中斷,具有16級可程式設計中斷優先順序。stm32f103系列只有60個可遮蔽中斷。二 中斷...

STM32F4外部中斷設定

c void mpuintinit void void mpu exit it handler h define mpu exit gpio gpioa define mpu exit gpio pin gpio pin 1 define mpu exit rccperiph rcc ahb1per...