将HC0的值读取并存储在几个VD中

我用200smart,我想读取HC0的值,然后设置6个VD(VD10~VD30),然后将HC0的值以先进先出的形式放入6个VD中 ,比如50ms(或其它)读取一次HC0的值放入VD10,且之前VD10的值后移至VD14,VD14之前的值后移至VD18.......。请问这个该怎么实现呢?

问题补充:
很感谢你们三位的解答,我借鉴了第三位所说的方法,实现了相应的功能,但不知道是否合理。表格指令和间接寻址的一些逻辑还没理解明白,还在一直努力试。

图片说明:

将HC0的值读取并存储在几个VD中    将HC0的值读取并存储在几个VD中    将HC0的值读取并存储在几个VD中   

最佳答案

实际上你的问题是如何应用表格指令。
FIFO、LIFO可以解决你的问题,指令应用参考F1帮助中的例子程序。
补充问题回复:
如果传送的数据少,可以用图2的程序movd做。
图1是几个误区,时间间隔定时器不能够用特殊标志位SM0.0加上升沿,这样不会产生上升沿脉冲,指令也就不可能正确被执行。
你既然想用时间50mS间隔,建议使用定时中断,在所连接的中断子程序进行你的传送操作。

提问者对于答案的评价:
好的,谢谢你的解答,我把错误的修改一下

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc287579.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月30日 下午11:43
下一篇 2020年10月30日 下午11:43

相关推荐