S7-1200有间接寻址功能!!

已锁定

light

  • 帖子

    120
  • 精华

    6
  • 被关注

    4

论坛等级:游侠

注册时间:2003-06-06

普通 普通 如何晋级?

S7-1200有间接寻址功能!!

2299

6

2010-06-01 15:28:24

使用指令FieldRead (通过索引变量从数组中读取数值) 和FieldWrite (通过索引变量向数组中写数值),可以实现间接寻址。
生成一个名为“数据块1”的全局数据块。在数据块中生成名为“数组1”的数组“Array[1..5] of Int”,其元素的数据类型为Int,元素的编号为1~5。
这两条指令不在“指令列表”及“高级指令列表”中。打开程序编辑器,将收藏夹中的空逻辑框插入程序。点击其中红色的“??”,打开下拉式列表框,选中列表框底部的指令“FieldWrite”或“FieldRead”。
点击指令框中的“???”,用下拉式列表框设置要写入或读取的数据类型为Int(见下图)。两条指令的参数MEMBER的实参必须是数组的第一个元素”数据块1”.数组1[1]。指令的输入参数索引值“INDEX”是要读取的数组中的元素的序号,数据类型为DINT(双整数)。参数“VALUE”是要写入或读取的数组中的对应元素的值。

将程序下载到CPU,将CPU切换到RUN模式。打开OB1,启动程序状态监视功能。
右键点击指令FieldWrite的输入参数INDEX的实参MD10,执行出现的快捷菜单中的命令“修改”→“修改值”,将MD10的值修改为3。启用数据块1的监视功能,可以看到输入参数VALUE的值被写入数组元素”数据块1”.数组1[3]中。修改INDEX的值,VALUE的值将被写入INDEX对应的数组元素。
用上述方法设置指令FieldRead的输入参数INDEX的值为3,输出参数VALUE的实参MW20中是读取的数组元素”数据块1”.数组1[3]的值。
S7-1200有间接寻址功能!! 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15095条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。