"input capture direct mode" 通常指的是定时器(或计数器)的输入捕获模式的一种特定配置。在这种模式下,定时器会直接从外部输入信号(如脉冲宽度调制信号、编码器输出或其他类型的时钟信号)捕获数据。
频率 = 1s/周期
1s = 80 000 000 / 80
1个周期的计数值:我定时器设置的上升沿捕获 ,2个上升沿之间的计数就是 一个周期的计数
HAL_TIM_IC_Start_IT(&htim2,TIM_CHANNEL_1);
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef*htim)//
{
int Fre_value1=0;
if(htim->Instance==TIM2)
{
Fre_value1 = HAL_TIM_ReadCapturedValue(htim,TIM_CHANNEL_1);
__HAL_TIM_SetCounter(htim,0);
Fre1 = (80000000/80)/Fre_value1;
}
}
那怎么求占空比呢?
定时器设置的上升沿捕获 下降沿捕获 上升沿和下降沿之间不就是 1的计数吗?