最近用STM32的一个芯片测PWM输入,发现频率有的时候不对,原因是HAL_TIM_IC_CaptureCallback函数里测量的上升沿之间间隔和上升沿下降沿之间间隔,发现有的时候丢了一个上升沿或者下降沿。将这个定时器的优先级该成0,状况好点,但是还出错。输入频率是10000Hz的时候,__HAL_TIM_GetCounter函数测的值,比HAL_TIM_ReadCapturedValue要多2个,即使__HAL_TIM_GetCounter放到前面。
我用的是TIM10和TIM13分别做两路PWM输入捕获,每个定时器都是先测上升沿,之后再测下降沿,再测上升沿的方式,来计算频率和占空比。请各位版主和大佬帮看看,谢谢!@香水城, 呐咯密密, 小叶三千, STM新闻官, lihui567 |