SA0105:多个实例调用
检测被多次调用的功能块的实例。为此,必须使用以下编译指示来标记功能块:
{attribute 'analysis:report-multiple-instance-calls'}理由: 某些功能块的设计方式是在一个循环中只能调用一次。此测试检查是否在多个位置进行呼叫。
重要性:低
PLCopen规则:CP16 / CP20
例 93. 例子
// {attribute 'analysis:report-multiple-instance-calls'} Deactivated
FUNCTION_BLOCK FB_DoA
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
iA : INT;
END_VAR
iA := iA + 1;
{attribute 'analysis:report-multiple-instance-calls'}
FUNCTION_BLOCK FB_DoB
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
iB : INT;
END_VAR
iB := iB + 1;
PROGRAM PLC_PRG
VAR
fbA : FB_DoA;
fbB : FB_DoB;
END_VARfbA(); fbB(); // SA0105 fbA(); fbB(); // SA0105
输出在 留言 看法:
SA0105:多次调用实例“fbB”