STM32CubeMx 外部中斷實驗
一、實驗說明
實驗平臺:STM32F103RCT6(正點原子mini 板)
實驗內容:使用 按鍵(PC5) 觸發外部中斷 控制LED燈(PA8)的亮滅。(按一下亮,再按一下滅)
二、實驗操作
1、基礎配置
- sys中,選好調試方式,例如jtag-4pin。
- RCC時鐘,晶振選擇。
- 時鐘樹配置。
- 中斷分組配置。
以上步驟可以參考串口中斷實驗。
三、外設配置—外部中斷配置
1)、IO口配置
PC5 配置爲外部中斷模式 如圖。
PA8 接LED燈,配置同上個實驗。
配置中斷優先級。
PA8爲LED燈,配置如上圖。
PC5 配置爲下降沿觸發,上拉。(具體配置爲什麼取決於按鍵的接發)
2)、生成工程
3)、代碼部分
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin);
這是中斷的回調函數,可以寫在gpio.c裏面。寫出如上代碼,即可實現按鍵觸發中斷,控制PA8 LED燈。(注意 這裏沒有加按鍵消抖,但是注意不要把,HAL_Delay() 加入用於消抖,會卡死)
HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_8);
這個可以對IO口狀態取反。
然後即可下載驗證