恭喜,你发布的帖子
发布于 2017-04-05 16:17:28
4楼
L #dbnumber
T MW100
OPN DB[MW100] //将 #dbnumber这个值赋给MW100,也就是MW100的值对应的就是OPN指令打开的DB号
L P#18.0
T MD40 //取初始的地址18.0,对应的从第18个字节开始,对应你的第一个疑问。
L 10
next:T MB50 //LOOP循环指令的格式
L 0
T DBW[MD40] //这个指令要和之前的OPN指令结合起来看对应相应的DB块,MD40对应的是地址的数据,假如 #dbnumber为10,那么这里就是DB10.DBW[MD40],DBW[MD40]是间接寻址的一种表示方式。
L MD40
L P#2.0
-D
T MD40 //指针数据MD40自减两个字节的变量
L MB50
LOOP next //执行循环指令
整个程序的意思就是:将#dbnumber的数据对应的DB块里的数据,从DBW18开始到DBW0,共10个字清零,循环指令执行了10次;
如果不是很理解间接寻址,建议看看如下材料,会对你有所帮助的。
https://support.industry.siemens.com/cs/document/79632832/s7-300和s7-400寻址?dti=0&lc=zh-CN
请填写推广理由:
分享
只看
楼主