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口状态取反。
然后即可下载验证