求助,timerone函数库与外部中断冲突的现象
我在最近一个步进电机控制项目中,使用了timerone函数库,在200us的周期中输出脉冲来驱动步进电机,这个实现了,然后我想利用外部中断源0(Arduino UNO 2# PIN)作为步进电机的接近开关检测,做作为步进电机的限位检测,但是发现只要开启了外部中断,那么timerone函数就失效了,无法输出脉冲,请问大家遇到过这种情况吗?或者请教各位高手,如何实现定时器与外部中断的有效共存的方法?
先谢谢各位!!! 中断的权限太高,直接接管cpu了,依赖cpu的timer肯定要完蛋啊~
既然用定时器了,干嘛还要用中断,直接定时器轮询呗 ourutopia 发表于 2014-11-3 12:10 static/image/common/back.gif
中断的权限太高,直接接管cpu了,依赖cpu的timer肯定要完蛋啊~
既然用定时器了,干嘛还要用中断,直接定时 ...
首先非常感谢您的回复。
您的意思是这两种中断方式存在优先级的问题吗?只是按照我以前用C51的经验来看,定时器中断和外部中断是不应该存在冲突的(优先级是存在的)。
我目前的解决方法确实也是如你所说,把限位检测代码也放到了定时器中断里,定时器中断中一方面去检测限位,如果不到限位点,就继续发送脉冲。
novelcrab 发表于 2014-11-3 13:05 static/image/common/back.gif
首先非常感谢您的回复。
您的意思是这两种中断方式存在优先级的问题吗?只是按照我以前用C51的经验来看 ...
呃~我觉得我的理解可能不对,我是做高层编程的,太底层的我也不懂……别被我干扰啊~
我不是嵌入式开发工程师,所以arduino的底层也了解不多,呵呵
页:
[1]