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