pythonworld 发表于 2016-1-12 12:51:53

一直对stm32 timer输入捕获不太明白,求指点!

一直对stm32 timer输入捕获不太明白。例如:如何用输入捕获测量PWM信号或是脉冲信号的周期。
是捕获一次脉冲信号还是连续捕获,计算平均值?如何通过输出捕获寄存器的值来计算信号的周期等。请坛友指点一二!!

圆点博士后 发表于 2016-1-12 13:39:47

这个我一直也没搞懂

逍遥李 发表于 2016-1-13 08:41:44

关于测量PWM周期是连续还是一次看你要求和PWM信号源的稳定性,是否连续捕获求平均这已经是你算法要求了和捕获没有任何关系了。
关于捕获值计算周期:
定时器之所以能定时,其本质上就是一个计数器对定时器时钟进行计数,所以假设定时器时钟频率为xMHZ,则定时器计一个数就是1/x 微秒,捕获值这个东西就是脉冲来的时候计数器的计数值,假设脉冲为上升沿,上升沿来的时候捕获值是A1,上升沿结束捕获值A2,则上升沿的脉宽:D=(A2-A1)*1/x   ,当然,我说的这个是定时器没有溢出的条件下,定时器溢出的情况自己动动脑子,很容易解决。
页: [1]
查看完整版本: 一直对stm32 timer输入捕获不太明白,求指点!