本人新手,我用高速计数器计算Q0.0脉冲数,但是发现调试时,计数器好像没有工作,不明白怎么回事,还有高速计数器HCO不用中断如何读出脉冲数值呢?因为我用触摸屏控制,想要实时暂停功能,还想恢复启动。
问题补充:
因为我想在脉冲的任何时刻都可以暂停,但是我不想调用外部中断,而且现在调试时HC0好像不会计数,这和开中断有关系吗?将HC0中的数值读出这句指令放在哪个位置呢?因为需要重新读一遍脉冲输出指令,才可以将后续的脉冲数走完吧,我对这个顺序有点不明吧。
图片说明:
最佳答案
看你这个高速计数器程序缺少一个开中断指令(ENI)和高速计数器选择指令(HDEF)。
暂停功能实际上可以连接为你的Q0.0不发脉冲就可以了,高速计数器程序段是没有暂停脉冲计数的功能,系统只提供外部复位输入端口。
补充问题回复:
脉冲什么时候暂停取决于输入端的脉冲信号。计数没有和中断无关,与高速计数器几个控制位,装载值、输入端子有关。读取高速计数器值直接读HSC0就可以了。高速计数器例子:
LD SM0.0
MOVB 16#F8, SMB37
HDEF 0, 4
MOVD 0, SMD38
MOVD 24, SMD42
ATCH INT_0:INT0, 10
ENI
HSC 0
提问者对于答案的评价:
谢谢老师的耐心回复,收益良多
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc207551.html