回复:课时34提问

西家讲师

官方工程师

  • 帖子

    3342
  • 精华

    0
  • 被关注

    33

论坛等级:奇侠

注册时间:2018-05-23

普通 普通 如何晋级?

发布于 2019-01-14 10:50:19

1楼

当Variant类型的实参指向形如P#DB1.DBX0.0 BYTE 10,指令内部将判断该形参为一个10字节的数组。

-------------------------------------------------------指针结构-------------------------------------------

P#DB1.DBX0.0 BYTE 10这种结构起源于S7-300/S7-400的Any指针,S7-1200无法像S7-300/S7-400一样定义以及拆解Any指针,但是在参数类型为Variant时,可以输入这种指针。并且,如前所述,S7-1200将识别其为数组。

P#DB1.DBX0.0 BYTE 10的解释:指向从DB1.DBX0.0开始的10个字节,并且DB1必须是非优化的DB块,并包含有10字节长度的变量。

P#DB1.DBX位置可以替换成其他DB块号或者I区:P#I,Q区:P#Q以及M区:P#M。

0.0的位置为这种指针的起始地址,例如1.0、100.0,小数点后面必须是0。

BYTE位置可以是以下类型:Bool、Byte、Word、DWord、Int、DInt、Real、Char、Date、TOD、Time类型

10的位置为指针执行前面数据类型的个数,Bool类型注意,可以是1也可以是8的倍数,不能是其他数字。


所以MB100~MB199写成指针就是P#M100.0 BYTE 10

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

S7-1200精英训练营

共有1959条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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