关于西门子200指针的使用

LD     SM0.1
MOVW   300, VW0
MOVW   0, VW2
MOVW   0, VW12  //上电以上初始化赋值


LD     SM0.0
MOVD   &VB0, VD20   //将VB0开始的初始的地址(vw0)放到VD20
FOR    VW14, 1, 2     //循环2次
+I     *VD20, VW12      //将VD20指向的地址内的数据(vw0)与VW12相加,结果放到VW12
+D     2, VD20         //递增一个字节   


NEXT 
     输出为300吗????????


本程序是我看网上高手改的  不知道对不对    因暂时无PLC测试 还请高手先详解下   感觉西门子的指针和C指针有区别     知道的按我的格式解释下呀

问题补充:
MOVD   &VB0, VD20  //  这里用&VW0有什么区别

+D     2, VD20         //这里地址是VB2的    还是vw2的 (为什么)

最佳答案

LD     SM0.1
MOVW   300, VW0 
MOVW   0, VW2
MOVW   0, VW12  //上电以上初始化赋值

LD     SM0.0
MOVD   &VB0, VD20   //间接寻址将VB0开始的初始的地址(16#08000000)放到VD20,.   VD20的值是134217728.
FOR    VW14, 1, 2     //循环2次。
+I     *VD20, VW12      //将VD20指向的地址内的数据(vw0)与VW12相加,结果放到VW12
+D     2, VD20         //循环一次&VB0+2,结果放到VD20.

NEXT 
     输出为300吗????????不是,下面是我联机监控的数据。
VD20是134217732,VW12是65535,来回跳动。如果修改FOR    VW14, 1, 3 后,VD20是134217734.如果修改FOR    VW14, 1, 5 后,VD20是134217738.

<S7-200 可编程控制器系统手册>下载:
http://www2.ad.siemens.com.cn/download/Upload/AS/manual/1017[2].pdf

补充回答:MOVD   &VB0, VD20  //  这里用&VW0有什么区别,&VW0的间接寻址是VB0了,VB0的值是1。和&VB0区别很大,&VB0的值是16#08000000。


+D     2, VD20         //这里地址是VB2的    还是vw2的 (为什么)都不是,是间接寻址将VB0开始的初始的地址(16#08000000)放到VD20也就是这个MOVD   &VB0, VD20 指令执行后的数据,VD20是134217728.执行+D     2, VD20后,结果VD20是134217732。

手册的解释和这个有很大出入。

提问者对于答案的评价:
理解谢谢大家

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc302739.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月31日 下午3:05
下一篇 2020年10月31日 下午3:05

相关推荐

  • s7-200编程软件最新版本是多少 支持win8了么

    setp7还会支持win8么 最佳答案 200软件有sp9,支持win7,好像没听说有支持win8的软件。STEP7-MicroWINV4.0 SP9下载地址:http:…

    SIMATIC S7-200 2017年10月24日
  • 有没指令是求一个字内位为1的个数的的

    能给个200的全部指令就更好了我邮箱 chinacuit@vip.qq.com谢谢200的系统手册我有 问题补充:问并不是编不出来,是因为三菱的是有这样的指令的。饿哦以为…

    SIMATIC S7-200 2020年11月1日
  • 两台组态王怎么和S7 224XP通讯

    问题1、 两台组态王(PPI或OPC)怎么和S7 224XP通讯?问题2、  1台组态王(PPI或OPC),一触摸屏(PPI协议)怎么和S7…

    SIMATIC S7-200 2020年11月5日
  • s7 200 子程序

    在程序中 SDR 与SCR有什么不同 各有什么用途 问题补充:不是SDR是SBR 是子程序快 但是程序中还有SCR作为子程序快这是…

    SIMATIC S7-200 2021年7月5日
  • S7-200与DTU连接

    S7-200自由口与DTU连接PLC不是3针是RS-485B,8脚是RS-483A吗?为什么按照PLC3脚接DTU的TX/A,PLC的8脚接DTU的TX/B才可以正常发送数据?反过…

    2017年11月16日
  • 以太网与Modbus同时使用

    s7-214xp,通过OPC和以太网模块与上位机通讯,通过cpu通讯口1与仪表modbus通讯,请问可以吗,PLC与上位机怎样设定?组态软件、OPC及STEP 7&nbs…

    SIMATIC S7-200 2017年12月7日
  • 数据采集子程序 没看懂

    这是个数据采集的子程序,里边的运算能看懂,但是里边的LD及后边的数字可以从及开始?我是初学者,希望各位大师指导一下,谢谢! 问题补充:那我可不可以这样排?LD0 &nbs…

    2017年7月26日
  • 如何找到指令帮助

    再看别人的程序时,如何找到指令帮助,为了学习,当看不懂第二步时,如何向下 最佳答案 按F1 ,选中指令然后按F1, 看不懂指令可以看帮助,看不懂为什么要用这个指…

    SIMATIC S7-200 2021年7月5日
  • S7-200与伺服接线

    S7-200如何与伺服驱动器接线 最佳答案 主要就是脉冲、方向、控制电源、I/O信号等。我有200与松下伺服的接线图,已发到你的注册邮箱。 提问者对于答案的评价:谢谢解答,问题解决…

    SIMATIC S7-200 2020年11月1日
  • s7-200测流速

    大家好, 我现在遇到一个难题。想测一个流量计的流速,流量计发出0.2H2—-10H2的脉冲,因为脉冲太小了,涉及到到小数,我想测脉冲的周期,就是一个脉冲到下个脉冲的时…

    SIMATIC S7-200 2020年11月1日