检测 POU 中具有写入权限的输入变量 (VAR_INPUT)
理由根据 IEC 61131-3 标准,输入变量不得在 POU 内更改。这种访问方式也会导致错误,使代码的可维护性变差。这表明变量既是输入变量,又是辅助变量。应避免这种双重用途。
重要性:中型
示例
VAR_GLOBAL g_xGlob AT %QX0.0 : BOOL; END_VAR PROGRAM PLC_PRG VAR_INPUT xVarIn1:BOOL; xVarIn2:BOOL; END_VAR VAR iCondition : INT; END_VAR iCondition := iCondition + INT#1; CASE iCondition OF INT#1: g_xGlob := xVarIn1; INT#2: g_xGlob := xVarIn2; ELSE g_xGlob := FALSE; xVarIn1 := FALSE; // SA0037 END_CASE --> SA0037: Write access to input variable 'xVarIn1'