我也是电机带叶轮
这几天试了几中方法:
1.进中断,关中断,主程序循环N次,这个方法,对于主程序执行比较稳定时间的效果有,但是对于主程序执行时间有时长有时短时,N的值不怎么好确定,N大了影响下次中断判断,短了又没效果。
2.低电平触发,不怎么合理,不好控制,我有时需要长时间维持在低电平状态上。
3.下降沿,进中断,最后出中断消除中断标志,效果不佳。
4.3和1结合,但是问题没有更本解决
5.下降沿触发,计数我不在中断里面执行,在中断里面设置标志,主程序来计数,(主程序有两个标志,一个中断标志位,一个是命令标志位)同时控制电机停止。因为我的问题是电机停止的时候会出现两次进入中断,所有我只读取第一次进入中断的标志,然后电机停止,把命令标志为位清零,这样即使在来一次中断标志位我也不必理睬。同时我在执行下一步电机命令之前,再把命令标志位打开,中断标志位清零。这样就根本解决了进入两次中断导致计数多一部的问题。 |