ST变量定义
基本语法
变量定义语法如下:
VAR_变量类型 变量类型
变量名 数据类型:= 初始值;
END_VAR
举例:
VAR_OUTPUT RETAIN
Motor1: BOOL := FALSE;
Message: STRING(10);
END_VAR
可以以逗号隔开的方式连续定义几个相同类型的变量:
VAR_变量类型 变量类型
变量名1,变量名2,变量名3 : 数据类型 :=初始值;
END_VAR
如:
SB1, SB2, SB3 : BOOL := FALSE;
数组变量
元素的数量以及数组的上下界可指定:
VAR
arrData : ARRAY[1..ARRAY_UPPER_BOUND] OF INT;
END_VAR
VAR
array01 : ARRAY[2..8] OF LREAL := [16.1, 34.1, 4.1, 43.1, 35.1, 2.1, 65.1];
array02 : ARRAY[-1..2] OF LREAL := [16.1, 34.1, 9.1, 13.1];
array03 : ARRAY[-3..-1] OF LREAL := [16.1, 34.1, 8.1];
END_VAR
地址变量
变量定义使用AT关键字可以指定地址 变量。下例中iVar变量是字类型,映射到输入区域偏移10字节的位置
iVar AT %IW10: WORD;
fVar AT %ID10: REAL; (*注意浮点类型变量在直接地址使用D*)
数组变量将使用从IO内存偏移位置访问连续内存空间: iArr AT %IW10: ARRAY[0..2] OF WORD;