s7-200数据存储问题

本人刚接触s7-200,现在要做个东西,需要存储数据,问题是这样的。我用一个触发指令去存数,比方说用I0.0触发后,将一组数据存储到VD0中,下一次I0.0导通后将另一个数据存储到VD4中,依次向下存,要存100条,这100条是要日后读取的,即我随便查其中的一条都能显示出对应当初存的数据,这段程序我无从下手,FOR循环和间接寻址我能大概开明白,但是还是不会用,忘请高手能编写一段例程让我参考下,样本啊,链接啥的就不用发了。谢谢

最佳答案

用间接寻址的方法,假设原始数据放在VD200中

LD     SM0.1
MOVB   0, MB1
MOVD   &VB0, MD10     //将VD0的地址存入MD10

LD     SM0.0
AB<    MB1, 100  //判断存储次数
=      M0.0

LD     I0.0
EU
A      M0.0
MOVD   MD10, AC1    
MOVD   VD200, *AC1  //间接寻址,将VD200的数据存储到AC1所指的地址里
INCB   MB1   //存储次数+1
+D     4, MD10 //存储地址递增,因为是双字,所以要加4

提问者对于答案的评价:
十分感谢,基于您的程序稍加改动已经完成了存储功能了。。。。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日 下午2:08
下一篇 2020年11月1日 下午2:08

相关推荐