各位大神,我有个需求,就是要把某个MW值逐次存储到DB1,DBW0开始的100个地址里去,(MW是个不停在变化的值),比如,第1次存到DBW0,存完后再运行,第2次存到DBW2,依次类推。
用STL编了个程序,运行起来后,在变量表里观察,只有正常传送到DB1,DBW0,其他后续地址一直不动,也就是没传送进去,看了半天没看出问题来,请有懂的大神们指点指点,谢谢了!!
数据源存放在MW12里,MW12不停的在变化
第1次从MW12存到DB1.DBW0.
存完后,再继续运行
第2次从MW12存到DB1.DBW2.(MW12数值肯定与第一次不一样,MW12在变化的)
继续,重复。。。。
程序如下
OB1
L 0 //装载0
T MW 100 //传送到MW100
T MD 4 //传送到MD4(就是初始化清零)
OPN DB 1 //打开DB 1
L 100 //循环操作次数,100次
M001:T MW 100 //把循环100次数数值装载到MW100中,
固定格式
L MW 12 //进行传送的数值存储于MW12
T DBW [AR2,P#0.0] //写入DB块第一个地址
L MD 4 //装载地址指针
L P#2.0 //地址指针加2(每个相邻字地址相差2)
+D //MD4地址数值加2
T MD 4 //相加后的和又存放在MD4里
L MW 100 //次数减1,跳回M001重复执行,如果MW100=0,跳出循环操作LOOP指令。
//LOOP指令固定格式
LOOP M001