按下按钮,把MD20存入DB1.DBW0,又按下,存入DBW2,依次按下,依次存入,
这个怎么做。
我写了个,用了计数比较,有没有简便思路方法
请教大神
最佳答案
写了一段程序,MW140的数写入DB10开始的3个字里,DBW0到DBW4
A M 139.2 //初始化的按钮
FP M 139.3
JCN _025
L 0
T MD 142
_025: NOP 0 //初始化MD142,作为地址的存储器,从DBW0开始,就是说要 加一个按钮作为地址
OPN DB 10 //打开DB10,你可以改成DB1
A M 139.0 //写入的启动按钮
FP M 139.1
JCN _024
L MW 140 //要写入DB10的值,
T DBW [MD 142]
L MD 142
L 16
+D
L 48 //比较下地址的数值,进行限制,防止在DB块里数据没有定义而造成;因为DB里就定义了3个,所以3*16就是48了
<D
JCN _026
TAK
T MD 142
_024: NOP 0
_026: NOP 0
提问者对于答案的评价:
感谢啊,就是M139.2与139.0的关系没搞太懂
同时感谢T,我心
都是我师
最佳答案作者回复:
因为编程的时候没有完全按你的要求来的,所以M139.0就是你说的按钮,M139.2是另一个按钮,用来初始化MD142的,就是地址的值;要是不停的按写入按钮,写满了,那么要重新写的话,就需要初始化MD142;同时我也在程序里做了一个DB块字变量的限制,要根据你需要写入的数值量来考虑;我只定义了3个INT变量,所以是48,一个字两个字节,3个字6个字节,那么就是48;
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc224220.html