下面是我用STL写的一个程序(在附图中),这样的程序我要写100个,能不能有简便的方法用间接寻址或LOOP指令达到要求?或者用你们自己的方法?前提是程序简化和在STL的前提下。
图片说明:
最佳答案
这里面的变址内容为A xx(1),FP xx(2) DATA(3) 有3个地方需要变,(1)和(2)固定的偏移,[ar1,p#0.0], [ar1,p#25.0]地址偏移0.1分别就可以表达(1)(2),(3)用TEMP表示,LOOP前初始化为1,LOOP里每次TEMP加1.
L P#0.0
LAR1
L W#16#1
T DATA_TEMP
L 100
NEXT:T CYC_TEMP
L DB_NO //IN接口,DB块号
T DB_NO_TEMP
OPN DB[DB_NO_TEMP]
A DBX[AR1,P#0.0]
FP DBX[AR1,P#25.0]
JCN a0b0
CALL "ATT"
DATA:=DATA_TEMP
TABLE:=DB2.DBW 0
a0b0:CLR
+AR1 P#0.1
L W#16#1
L DATA_TEMP
+I
T DATA_TEMP
L CYC_TEMP
LOOP NEXT
提问者对于答案的评价:
谢谢,我再慢慢研究下
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc234912.html