STM32外部中断知识点记录:
STM32中断分组:
STM32 的每一个GPIO都能配置成一个外部中断触发源。STM32 通过根据引脚的序号不同将众多中断触发源分成不同的组,比如:PA0~PG0为第一组,那么依此类推,我们能得出一共有16 组,STM32 规定,每一组中同时只能有一个中断触发源工作,那么,最多工作的也就是16个外部中断。STM32F103 的中断控制器支持 19 个外部中断/事件请求。每个中断设有状态位,每个中断/事件都有独立的触发和屏蔽设置。STM32F103 的19 个外部中断为:
线 0~15:对应外部 IO 口的输入中断。
GPIO引脚 | 中断标志位 | 中断处理函数 |
---|---|---|
PA0~PG0 | EXTI0 | EXTI0_IRQHandler |
PA1~PG1 | EXTI1 | EXTI1_IRQHandler |
PA2~PG2 | EXTI2 | EXTI2_IRQHandler |
PA3~PG3 | EXTI3 | EXTI3_IRQHandler |
PA4~PG4 | EXTI4 | EXTI4_IRQHandler |
PA5~PG5 | EXTI5 | EXTI9_5_IRQHandler |
PA6~PG6 | EXTI6 | EXTI9_5_IRQHandler |
PA7~PG7 | EXTI7 | EXTI9_5_IRQHandler |
PA8~PG8 | EXTI8 | EXTI9_5_IRQHandler |
PA9~PG9 | EXTI9 | EXTI9_5_IRQHandler |
PA10~PG10 | EXTI10 | EXTI15_10_IRQHandler |
PA11~PG11 | EXTI11 | EXTI15_10_IRQHandler |
PA12~PG12 | EXTI12 | EXTI15_10_IRQHandler |
PA13~PG13 | EXTI13 | EXTI15_10_IRQHandler |
PA14~PG14 | EXTI14 | EXTI15_10_IRQHandler |
PA15~PG15 | EXTI15 | EXTI15_10_IRQHandler |
线 16:连接到 PVD 输出。
线 17:连接到 RTC 闹钟事件。
线 18:连接到 USB 唤醒事件。
中断线 0-4 每个中断线对应一个中断函数,中断线 5-9 共用中断函数 EXTI9_5_IRQHandler,中断线 10-15 共用中断函数 EXTI15_10_IRQHandler。