恭喜,你发布的帖子
发布于 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
请填写推广理由:
分享
只看
楼主