S7-200指针

S7-200指针

现在我把VD320的地址送到累加器AC0,用下面的指令
MOVD &VB320, AC0

然后在把指针AC0所指的值传送到AC1,用下面的指令
MOVD *AC0, AC1

编译的时候,这条指令出错,“指令操作数的储存器寻址范围无效”

是什么原因呢?该如何解决?

最佳答案

1、因为AC0不能用作指针寻址。所以你的程序是错误的。
2、更改下就可以了
MOVD &VB320, AC1

MOVD *AC1, AC0


解释原因,请详细看下面的资料!

间接编址
间接编址使用指针存取内存中的数据。指针是包含另一个内存位置地址的双字内存位置。您只能将V内存位置、L内存位置或累加器寄存器(AC1、AC2、AC3)用作指针。欲建立指针,您必须使用"移动双字"指令,将间接编址内存位置移至指针位置。指针还可以作为参数传递至子程序。

S7-200允许指针存取以下内存区:I、Q、V、M、S、T*仅限当前值)和C(仅限当前值)。您不能使用间接编址存取单个位或存取AI、AQ、HC、SM或内存区。

欲间接存取内存区数据,输入一个"和"符号(&)和需要编址的内存位置,建立一个该位置的指针。指令的输入操作数前必须有一个"和"符号(&),表示内存位置的地址(而并非内存位置的内容)将被移入在指令输出操作数中识别的位置(指针)。

在指令操作数前面输入一个星号(*)指定该操作数是一个指针。

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

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

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

相关推荐

  • step7200

    为什么下载中心不能下载 图片说明:    钻石用户推荐最佳答案 再刷新一下试试,您是需要S7-200的软件吗?给您直接连接:STEP 7 M…

    2021年7月5日
  • S7-200会数据丢失

    S7-200DB块为什么断电之后过一些时候在重启时数据都没有了~ 最佳答案 如果你不打算花200多元人民币买个电池卡来保存数据的话可以直接使用EEPROM 数据写入指令库…

    SIMATIC S7-200 2021年7月5日
  • S7-200模拟量的几个数字

    EM231模拟量输入,12位分辨率,对应的数字量范围应该是0-4096。可是为什么我在看模块规范时0-5V的输入量,对应的分辨率是1.25MV,算下来差4000。之后又看到0-5V…

    SIMATIC S7-200 2021年7月5日
  • 多台Smart 700触摸屏与一台S7-200连接问题

    若有两台Smart 700的触摸屏与一台CPU224XP的PLC连接,两个通信口每一个挂一个触摸屏。那么,在软件上是否还需要设置,才能通信成功呢?记得在wincc&nbs…

    SIMATIC S7-200 2020年11月1日
  • 西门子200通讯问题

    我在做一个系统,有8个站,也就是8个独立的系统,但这8个独立系统都要用到一个共同的模拟量输入,水箱液位。8个系统CPU是224的。有什么好的方法可以解决这个问题,一个液位不可能并联…

    SIMATIC S7-200 2018年3月6日
  • S7-200可编程序CPU224

    我想问下在CPU224和EM231连接后,我通过一个湿度变送器输入一个电流信号(4~20mA)后在PLC内检测到,怎么样将这个信号源转换成我要的实际的相对湿度(RH%)?是不是要通…

    SIMATIC S7-200 2018年12月6日
  • s7-200自由口通讯接收数据出错。

    200和一台激光发射器用485通讯,发数据没问题,但是接收数据时,激光器移动慢的话,可以正常接收数据,如果激光器的移动距离变化快了,返回的数据就会不变了,卡死不动,vb3–vb6…

    2017年6月9日
  • 226通信口故障

    我用CPU226自带的通讯口与台达触摸屏通讯,触摸屏用的是RS485接口。之前使用正常。今天突然出现PLC与触摸屏无法通信,用电脑跟PLC与通信不上,用PC/PPI ca…

    SIMATIC S7-200 2021年7月4日
  • 所有的表格读取和表格写入指令必须用边缘触发器指令激活。

    所有的表格读取和表格写入指令必须用边缘触发器指令激活。 这里的边缘触发器指令是什么意思?或者说哪样的指令是属于边缘触发器指令? 表格读取和表格写入指令&nbsp…

    SIMATIC S7-200 2021年7月5日
  • PID和读系统时间的问题

    S7-200中,系统时钟的读用READ_REC,写用SET_RTC,是不是在两个块中"T"处填的地址VB多少,程序运行时候就会自动进行读写系统时钟了呢?这个问题…

    SIMATIC S7-200 2021年7月5日