STM32F407 外部中断 个人笔记
IO口
STM32F4有上百个IO口中,每个都可以作为外部中断输入
中断线
- STM32F4的中断控制器支持22个外部中断/事件请求(中断线)
- 对于每个中断线,我们可以设置相应的触发方式(上升沿触发,下降沿触发,边沿触发)以及使能。
- EXTI线0~15:对应外部IO口的输入中断。
- EXTI线16:连接到PVD输出。
- EXTI线17:连接到RTC闹钟事件。
- EXTI线18:连接到USB OTG FS唤醒事件。
- EXTI线19:连接到以太网唤醒事件。
- EXTI线20:连接到USB OTG HS(在FS中配置)唤醒事件。
- EXTI线21:连接到RTC入侵和时间戳事件。
- EXTI线22:连接到RTC唤醒事件。
IO口和中断线的对应:
IO口的引脚数字<->中断线号 (通过多路复用器)
GPIOx.0映射到EXTI0
GPIOx.1映射到EXTI1
...
GPIOx.15映射到EXTI15
中断线 & 中断向量 & 中断服务函数
每个中断向量对应一个中断服务函数
IO口外部中断只被分配了7个中断向量
7个中断向量和16跟中断线对应关系如图:
中断服务函数列表:
代码写法
github地址:https://github.com/YuQiao0303/STM32F407-Examples/tree/master/5.EXTI