CODESYS Development System
运营商:NOT IEC 运算符用于按位 NOT 位操作数。 当相应的输入位产生 0 时,输出位也产生 1,反之亦然。 允许的数据类型: BOOL , BYTE , WORD , DWORD , LWORD 例 100 . 例子 造成 Var1 : 2#0110_1100 英石 Var1 := NOT 2#1001_0011; FBD 本节内容如下 :
CODESYS Development System
运算符:OR IEC 运算符用于按位 OR 位操作数。 当至少一个输入位产生 1 时,输出位也产生 1;否则为 0。 允许的数据类型: BOOL , BYTE , WORD , DWORD , LWORD 例 102 . 例子 造成 Var1 : 2#1001_1011 英石 Var1 := 2#1001_0011 OR 2#1000_1010; FBD 本节内容如下 :
CODESYS Development System
运算符:XOR IEC 运算符用于按位 XOR 位操作数。 当两个输入位中只有一个产生 1 时,输出位也产生 1。当两个输入产生 1 或 0 时,输出产生 0。 允许的数据类型: BOOL , BYTE , WORD , DWORD , LWORD 重要 请注意以下行为 XOR 扩展形式的POU(多于两个输入):成对比较输入,然后比较相应的结果(按照标准,但不一定按照预期)。 例 103 . 例子
CODESYS Development System
运算符:AND_THEN 运算符是 IEC 61131-3 标准的扩展。 这 AND_THEN 运算符仅允许在结构化文本中使用 AND 操作 BOOL 和 BIT 具有短路评估的操作数。这意味着: 当所有操作数产生 TRUE , 操作数的结果也产生 TRUE ;否则 FALSE . 然而, CODESYS 仅当 AND_THEN 运算符是 TRUE .这可以防止空指针出现问题,例如在诸如 IF (
CODESYS Development System
部分变量访问 该表达式符合 IEC 61131-3 标准。 对于 IEC 数据类型变量,可以进行部分变量访问 BYTE , WORD , DWORD 或者 LWORD (数据类型 ANY,ANY_ <类型> )。 句法: <变量名称> 。 % <部分类型> <部分索引> 点运算符后面允许有一个空格 ( . )。百分号后不允许有空格 ( % ) 和部分类型之后。 <变量名称> 的名字 ANY_BIT
CODESYS Development System
地址 小心 如果使用指向地址的指针,则可以在在线更改期间移动地址的内容。如果使用绝对地址,则地址的内容在在线更改期间不会更改。 句法: %<memory area prefix> ( <size prefix> )? <memory position> <memory area prefix> : I | Q | M <size prefix> : X | B | W | D <memory po
CODESYS Development System
职能 在 ST 中,您可以将函数调用用作操作数。 例 194 . 例子: Result := Fct(7) + 3; TIME()函数 此函数产生自系统启动以来经过的时间(以毫秒为单位)。 数据类型是时间。 例 195 . ST 中的示例 systime := TIME(); 本节内容如下 :
CODESYS Development System
运营商:TRUNC IEC 运算符用于转换 REAL 数据类型进入 DINT 数据类型。 CODESYS 只取数字的整数部分。 提示 在 CoDeSys V2.3 , 这 TRUNC 运算符转换 REAL 进入 INT .如果导入 V2.3 项目,则 CODESYS 自动替换 TRUNC 和 TRUNC_INT . 如果 CODESYS 不能用 a 表示输入值 DINT 或者 INT , 那么这个
CODESYS Development System
运算符:TRUNC_INT IEC 运算符用于转换 REAL 数据类型进入 INT 数据类型。 CODESYS 只取数字的整数部分。 提示 TRUNC_INT 对应于 TRUNC 运算符 CoDeSys V2.3 ,此时导入V2.3项目时自动使用。注意变化函数 TRUNC . 如果 CODESYS 不能用 a 表示输入值 DINT 或者 INT , 那么这个函数的结果是未定义的。此类输入值的行为取
CODESYS Development System
操作员:ABS IEC 运算符产生一个数字的绝对值。 输入和输出变量和数字常量的允许数据类型:任何数字基本数据类型 例 139 . 例子 造成 i : 2 英石 i := ABS(-2); FBD 本节内容如下 :