CubeMX按如下设置:
在main.c中添加中断响应函数:
/* USER CODE BEGIN 4 */
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
//外界消抖按键,实现按键与LED同步亮灯
if(GPIO_Pin==KEY_Pin)
{
if(HAL_GPIO_ReadPin(KEY_GPIO_Port, KEY_Pin)){ //check pin state
HAL_GPIO_WritePin(LED_GPIO_Port,LED_Pin,GPIO_PIN_SET);
}
if(!HAL_GPIO_ReadPin(KEY_GPIO_Port, KEY_Pin)){
HAL_GPIO_WritePin(LED_GPIO_Port,LED_Pin,GPIO_PIN_RESET);
}
}
}
编译下载,外部接消抖按键和LED,即可实现按键与LED同步点亮。