发布于 2015-07-30 12:53:29
8楼
1、ms级的间隔定时器不需要启动,也不用停止与清0,它是一个系统 定时器,32位长(足够长了,49天才打一个来回),使用中只需读取使用。感兴趣的两个时间点之差,就是期间的ms数。
2、“1秒左右的脉冲数”,也对应了低频的情况。假如只有1Hz,1秒左右只数1个脉冲,也没什么问题。超时在主程序判别就行了,用普通的100ms定时器,大于某个值,比如1.5秒,输入中断没有发生,就认为超时。
3、HC14并不用来整波形,只是个滞后的比喻。假如测出来是3000rpm,因为测量误差,个位数总在跳,看着不爽。可以在内部设一个标记,转速是上升还是下降,如果当前测出来的速度和标记的方向相同,但是和显示的绝对差值在0.2%以内(约6rpm),维持原显示不更新;如果方向相反,但是绝对差值不超过某一值(比如2倍的0.2%,比同向的值大,也就是滞后的意思),也不更新显示值。