发生高速计数中断时如何暂停脉冲输出?
test1
发布于2014-12-08 16:13
5
0
标签:
在高速脉冲q0.0输出过程中(比如,设定脉冲数量为20000个),发生了高速计数hc0中断事件12(比如,cv=pv=5000),此时,如何暂停脉冲输出,以便在完成中断事务处理后,重新完成q0.0剩余的脉冲?
佳答案
不知道你的hc0是不是工作在12模式。(这个很重要)
如果是,即可以用上面说的思路。
如果不是,你必须更改方案,使用另一个高速计数器(a)去计算你的高速事件。留着hc0用于计算q0.0脉冲当前值。然后在a高速计数器的cv=pv中断里面关闭高速输出的使能位,执行pls指令。这样可以立即停止脉冲。然后要恢复的时候,通过hc0可以得知刚才发过多少个脉冲,然后通过计算知道剩下多少脉冲要发,就安排跟着发完。