PLC间接寻址好难呀看不明白,求大神解答
200plc的间接寻址先要理解&和*:操作数前加&代表取地址,加*号表示该操作数为地址指针
(1) VW100~VW146取初始地址&VB100,这里100代表起始“字节”,所以是VB而非VW。
(2) MOVW *VD10,VW30 这里面*VD10并不是双字,这段指令表示把VD10为起始地址的长度为一个WORD的数据送入VW30。
(3) 题目里说了VD20是读取的实时小时值,&VB100是一个初始地址100,不是一回事,也是放不进去的。
(4)这里偏移两次,是因为从VW100~VW146共48个字节对应24个小时的有功功率,可以看出每个小时的有功功率占用2个字节的长度,所以偏移两次。
举个例子:例如想要知道晚上23点时的有功功率数值,那么VD20=23,初始地址100+23+23=146,根据题意将VW146传送给VW30即可。
LD SM0.0
MOVD &VB100,VD10 把VB100的初始地址指针100放入VD10(地址指针32位)
+D VD20,VD10 VD10先偏移23个字节
+D VD20,VD10 VD10再偏移23个字节,此时VD10中地址指针为&VB146
MOVW *VD10,VW30 将*VD10指向的VW146放入VW30
谢谢大神,第三和第四个问题也说一下哈,还是看不懂