S7-200手册里面S7-200的数据的存取

&和*的用法

最佳答案

直接寻址:已知具体的地址找某人A,例如x街x号x-x-x房间,你到此即可找到该房间里的某人A..。
、间接性寻址:不直接知道具体的地址找某人A,但直接知道某人B的地址,因为某人B知道某人A的地址。因此,你首先据某人B的地址要找到该房间里的某人B.。从某人B那里知道了某人A的地址,然后,你据某人A的地址间找到该房间里的某人A..。俗称,兜圈子。
参考链接:
《我们为什么要学习间接寻址》
http://blog.plcjs.com/blog-16037-9291.html
《直接寻址,间接寻址,存储器寻址是什么意思》
http://www.it8g.com/XiTong/201002/34911.htm

看看这个:
LD SM0.0
MOVD   &VB0, LD10   建立一个指针。
+D     VD1004, LD10    指针增加的字节数。
MOVB   *LD10, VB1900   把指针里面的起始数据增加到VB1900开始的地址中。

应该改成这样才对
LD SM0.0
MOVD   &VB0, AC0
+D     VD1004, AC0
MOVB   *AC0, VB1900

如果VB200=12,执行MOVB &VB200,AC1,MOVB *AC1 , AC0
后AC0的内容是什么?

答:AC0=12。问题不大。

从这个简单的问题上可以看出来没有什么区别,其实很大的分支的。你要知道指针地址和使用指针就有点区别了。

   MOVB &VB200,AC1
      MOVB *AC1 , AC0
 这两条指令的作用应该是等同于:
   MOVB VB200,AC0

也可以用MOVD  $VB200,AC0。但是如果用MOVD  VB200,AC0这个就是错误。另外MOVD   VD200,AC0这个是正确的。


MOVB &VB200,AC1 把VB200的地址(VB200的起始地址)作为指针存入AC1。


 MOVB *AC1 , AC0将AC1所指向的字节(VB201)的值送入到AC0。

这里显然可以看出两种不同的地址。


具体可以参考一下《S7-200系统手册》内容在第四章,PLC的基本概念。


文档连接:

http://www.ad.siemens.com.cn/download/DocList.aspx?TypeId=1&CatFirst=1&CatSecond=2&CatThird=-1


1109582  S7-200可编程控制器系统手册


参考:http://www.ad.siemens.com.cn/service/answer/solved_80106_1028.html

专家奖励分:5分

提问者对于答案的评价:
好的   谢谢

专家置评

已阅,最佳答案正确。

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

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

相关推荐

  • S7-200温度回差控制。写不出来了~~~~

    我想用S7-200写一个温度控制程序。程序写出来,想加个回差控制。不知该怎么写 硬件:S7-200  222CN,EM231模拟量输入模块,4-20M…

    SIMATIC S7-200 2021年7月5日
  • 急!!!!200编程电缆问题

    今天给200的传程序,发现前两天用的好好的电缆今天用不了了 适配器上的三个灯只在插入USB的一瞬间亮一两秒钟,然后就一个都不亮了,程序也传不了,设置都和前两天一样的,电脑…

    SIMATIC S7-200 2021年7月5日
  • s7200的数字量输出

    我用的是s7200 -cpu224CN,为什么在程序中显示Q0.1为亮,但是硬件中Q0.1的灯不亮呢?换了别端子的也不行 最佳答案 1、出现这类情况大多都是接错了线导致的…

    SIMATIC S7-200 2020年11月1日
  • PLC 的实时时钟问题

    我也是在 PLC 里面添加了两条程序,一个是读时钟的,一个是写时钟的,但为什么我在触摸屏上就不能修改呢? 还有,我在V4.0 STEP&nb…

    SIMATIC S7-200 2020年11月1日
  • S7-200自由口通讯能接收到数据,但在改编应用程序后乱码

    我用S7-200的自由口通讯接收扫码器的数据,初始化子程序什么的都没有问题。一开始编程调用接收到的数据作为条件来编程也是没问题的,但后面根据设备情况修改了程序,然后状态表显示的VB…

    SIMATIC S7-200 2017年10月24日
  • EM231采集1.6Mpa压力变送器

    算法公式,以及拨码,用第6个接线的算法 最佳答案 dip开关设置,参见图示:无论那种输入,最终一定是将外部数据转换为内部数据。如0-10V的电压信号输入,一定只能转换为内部数据0-…

    2021年7月5日
  • 用增量式编码器来检测电机速度

    用定时中断 怎么才能做到实时读到的高速计数器的值是恒定值 这样比例转化才能是一定电机速度 就可以做到实时电机速度检测 最佳答案 刚做完类似的例子,首先…

    SIMATIC S7-200 2021年7月5日
  • 西门子200编程

    200编程:用一个for循环实现一个LED灯亮灭5次,我按照文档编的程序就是不好使,恳请大侠帮忙!用梯形图。急急急 最佳答案 一个for循环必然在一个扫描周期做结束,而你用普通的输…

    SIMATIC S7-200 2020年10月31日
  • S7-200大批量字符串比较的思路

    接到公司一个项目,用扫描枪提取条形码,用提取到的数值(11个字节,也就是11个16进制的数)与750个机型作比较(每个机型也是11个字符构成的),有相同则指示灯点亮。(公司CPU等…

    SIMATIC S7-200 2017年12月8日
  • 程序错误,还请各位帮忙

    问题出在主程序的网络8和网络9上,在线监控时温度传感器1:VD0的数值是31.5,低温设置点:VD364为15,高温设置点:VD368为45,但是网络8和网络9同时输出报警,温度1…

    SIMATIC S7-200 2020年11月1日