Attribute is_connected
在功能块 FB 中,为每个输入变量(in1 和 in2)声明了局部变量。每个输入变量以属性 is connected 以及输入变量名称为前缀。功能块已分配有 pragma 属性 reflection。
如果调用了功能块的实例,则局部变量会设置为 TRUE,前提是,所分配的输入接收到赋值。
{attribute 'reflection'}
FUNCTION_BLOCK FB
VAR_INPUT
in1: INT;
in2: INT;
END_VAR
VAR
{attribute 'is_connected' := 'in1'}
in1_connection_info: BOOL;
{attribute 'is_connected' := 'in2'}
in2_connection_info: BOOL;
END_VAR
假设:在调用功能块实例时,in1 接收到外部赋值,且 in2 未接收到赋值。这将得到以下代码:
in1_connection_info := TRUE;
in2_connection_info := FALSE;