一、CubeMX配置:
定时器配置:
二、代码部分:
初始化中首次开启输入捕获:
HAL_TIM_IC_Start_IT(&htim3,TIM_CHANNEL_1);
interrupt.c中重定义中断函数:
int ccr=0;
int fre=0;
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim){
if(htim->Instance == htim3.Instance){
ccr = HAL_TIM_ReadCapturedValue(htim,TIM_CHANNEL_1);
__HAL_TIM_SetCounter(htim,0);
fre = 1000000 / ccr;
}
}
interrupt.h中声明略