我正在使用 TIM2 通用定时器闪烁 LED。
main.c 中的代码
HAL_TIM_Base_Start_IT(&htim2);
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){
if(htim->Instance==TIM2){
HAL_GPIO_TogglePin(GPIOB, LED_Pin);
}
}
单击按钮时,应调用 EXTI 中断以使 LED 快速闪烁 20 次。但是,LED 保持亮起并完全停止闪烁。
void EXTI0_IRQHandler(void)
{
HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0);
}
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin){
if(GPIO_Pin == BT_Pin){
for(volatile int i=20; i>0; i--){
HAL_GPIO_TogglePin(GPIOB, LED_Pin);
HAL_Delay(100);
}
}
}
您能否建议我如何调整 EXTI 的中断 ISR,以便它可以使用 TIM2 以及更快的闪烁。