模拟阿鸣老师的STL程序的疑问

在OB35中调用 1000ms
OPN  DB900
L     P#0.0                       //初始写指针
LAR1  
L     MB   200
L     5                                 //db内5个数据dbw0 dbw2 dbw4 dbw6 dbw8
>=I   
JC    M001                        //如果已读完5个数据则跳转到M001处
L     PIW  256                    //读数据
T     DBW [AR1,P#0.0]       //按写指针指示的地址写数据
+AR1  P#2.0                     //写指针指向下一数据地址//计数器增1
L     MB   200
INC   1
T     MB   200
M001: NOP   0

我想实现的功能是当计数器加1时,piw256的值传给dbw0,再加1时piw256的值传给dbw2,依次类推,请问各位老师上述程序要做哪些修改?

问题补充:
感谢我心飞翔的热心回答,但是我在模拟这段程序时发现,piw256的值是瞬间传给db内的5个值的,假设不在ob35内调用,怎么做到piw256的值每隔1段周期(比如10s)分别传给dbw0,dbw2...dbw8?

图片说明:

模拟阿鸣老师的STL程序的疑问   

最佳答案

OPN  DB900
L     P#0.0                      
LAR1  
L     5                                
M001:T MB200                      
L     PIW  256                   
T     DBW [AR1,P#0.0]      
+AR1  P#2.0                     
L     MB   200
LOOP M001
补充:这个要重新写个重新,在OB35中执行。
OPN  DB900
L     PIW  256                   
T     DBW [MD0]
L     MD0
L     16
+I
T      MD0
L      MD0
L      80
>=I
JCN  M001
L      0
T      MD0
M001:NOP 0
程序没有测试,你试试看吧。

提问者对于答案的评价:
测试可以,谢谢。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月1日 下午1:05
下一篇 2018年12月1日 下午1:05

相关推荐