Skip to main content

ExST 分配:S=

当 Set 分配的操作数切换到 TRUE, 然后 TRUE 分配给运算符左侧的变量。变量已设置。

<variable name> S= <operand name> ;

变量和操作数具有数据类型 BOOL.

64. 例子
PROGRAM PLC_PRG
VAR
        xOperand: BOOL := FALSE;
        xSetVariable: BOOL := FALSE;
END_VAR

xSetVariable S= xOperand;

当操作数 xOperand 从切换 FALSETRUE, 然后 TRUE 也分配给变量 xSetVariable.但是变量保持这个状态,即使操作数继续改变它的状态。



多项任务

重要

在代码行内有多个赋值的情况下,单个赋值不是从右到左处理的,而是所有赋值都引用代码行末尾的操作数。

65. 例子
FUNCTION funCompute : BOOL
VAR_INPUT
        xIn : BOOL;
END_VAR
IF xIn = TRUE THEN
        funCompute := TRUE;
        RETURN;
END_IF

PROGRAM PLC_PRG
VAR
        xSetVariable: BOOL;
        xResetVariable: BOOL := TRUE;
        xVar: BOOL;
END_VAR
xSetVariable S= xResetVariable R= funCompute(xIn := xVar);

xResetVariable 得到 R= 返回值的赋值 funCompute. xSetVariable 得到 S= ht 返回值的赋值 funCompute,但不是从 xResetVariable.