STM32共定义了20个外部中断,都是通过边沿进行触发,不支持电平触发。在20个外部中断中EXTI0--EXTI15对应了16组GPIO,如下图
文章图片
EXTI0上处理函数是EXTI0_IRQHandler()。
EXTI1上处理函数是EXTI1_IRQHandler()。
EXTI2上处理函数是EXTI2_IRQHandler()。
EXTI3上处理函数是EXTI3_IRQHandler()。
EXTI4上处理函数是EXTI4_IRQHandler()。
EXTI5--EXTI9的处理函数是EXTI9_5_IRQHandler()。
EXTI10--EXTI15的处理函数是EXTI15_10_IRQHandler()。
如果电路设计上讲PA0和PB0都作为中断输入引脚,那么当EXTI0中断到达时,软件是无法确定这个中断时来自PA0还是PB0,因此需要额外的电平检测电路,从设计的简洁性来讲,应该将外部中断错开使用,防止出现上面提到的问题。
除了上面提到的16个外部中断线之外,还有4个外部中断线:
EXTI16------PVD输出;
EXTI17------RTC Alarm event;
EXTI18------USB Wakeup event;
【STM32|STM32外部中断映射】EXTI19------Ethernet Wakeup event;(仅在互联性器件)
推荐阅读
- stm32|基于STM32和freeRTOS智能门锁设计方案
- 日常分享|共享充电宝方案原理,具体部件组成以及主控MUC参数
- #|ARM裸机开发(汇编LED灯实验(I.MX6UL芯片))
- STM32|STM32的四种IO输出模式
- STM32 远程升级(ISP / IAP)
- RK3399|[RK3399][Android7.1] 调试笔记 --- 解决开关按键时产生的Pop声
- stm32|stm32f103can总线过滤器配置
- STM32CubeMX配置SDIO模式(非DMA方式)
- STM32|如何建一个STM32F030标准库工程模板
- STM32 时钟RCC相关配置参考stm32f10x_rcc.h