quote:以下是引用凌飞翼在2012-11-29 20:53:24的发言:
波动原因就是采样分辨率太低了,这个问题很容易解决。
两个建议:
1、增加中断脉冲数。
2、用定时中断从高速计数器中取脉冲数(转速低的话就把中断周期选长些)。
对于方法1的做法我也想到了,不过在低速的时候会反应迟缓,不过也没办法了,只能这么做了。
对于方法2,我以前尝试过,但是被我放弃了,原因是:用定时中断的话,定时中断的时间是一个整数值,采集的脉冲数是一个整数值,在经过运算,得到的转速的所有的数值有点类似等差数列,是离散的数值而不是连续变化的数值。比如用100ms中断,还是12个齿,经过计算得出最后的转速值为脉冲数*10*60/12=脉冲数*50,这样的话当脉冲个数为1时是50,为2时是100.但是50到100之间的转速是测量不出来的