在 CFC、FBD 和 LD 图形编辑器中对pragma进行评估,使受影响功能块的输入/输出顺序按指定顺序显示。您可以按照所需的顺序将输入/输出的名称分配给属性,从而对顺序进行编程。
语法
{attribute 'pin_presentation_order_inputs' := '<First_Input_Name>, (<Next_Input_Name>, )* ( *, )? (<Next_Input_Name>,)* <Last_Input_Name>'} {attribute 'pin_presentation_order_outputs' := '<First_Output_Name>, (<Next_Output_Name>,)* ( *, )? (<Next_Output_Name>,)* <Last_Output_Name>'}
-
*
终端字符可作为通配符,用于所有未在显示顺序中指定的输入/输出。如果缺少终端字符,则会在末尾添加缺少的输入/输出。
-
( ... )?
括号中的内容可有可无。
-
( ... )*
括号中的内容又是可选的,因此可以完全不出现、一次出现或多次出现。
-
插入位置:功能块声明部分的第一行。




注意

当使用 pragma{attribute 'pingroup' := '<Group_Name>'}
时,不会评估此 pragma。
示例
{attribute 'pin_presentation_order_inputs' := 'input_2,*,input_1'} {attribute 'pin_presentation_order_outputs' := 'output_2, output_1'} FUNCTION_BLOCK POU_BASE VAR_INPUT input_1 : BOOL; input_2 : INT; input_3 : INT; input_4 : INT; END_VAR VAR_OUTPUT output_1 : BOOL; output_2 : INT; output_3 : INT; output_4 : BOOL; END_VAR FUNCTION_BLOCK PLC_PRG VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR pouBase_A: POU_BASE; END_VAR
在功能模块实例pouBase_A
的表示法中,pragmas导致输入和输出引脚的如下排列:
