SA0123:INI、ADR 或 BITADR 的用法 检测使用 CODESYS Static Analysis - 特定的运算符 INI , ADR , 和 BITADR . 理由: CODESYS - 特定的运算符会阻止代码的可移植性。 重要性:低 例 106 . 例子 PROGRAM PLC_PRG VAR uiTemp : UINT; TempVarInFUNC : DWORD; END_
SA0147:不寻常的班次操作 -strict 检测不对位域数据类型进行的位移操作( BYTE , WORD , DWORD , LWORD ) 说明:IEC 61131-3 标准只允许对位域数据类型进行位访问。但是,那 CODESYS 编译器还允许对无符号数据类型进行位移操作。 重要性:低 提示 另见严格规则 SA0018 . 例 107 . 例子 PROGRAM PLC_PRG VAR in_
SA0148:异常位访问 -strict 检测未对位域数据类型进行的位访问( BYTE , WORD , DWORD , 和 LWORD )。 IEC 61131-3 标准只允许对位域数据类型进行位访问。但是,那 CODESYS 编译器还允许对无符号数据类型进行位访问。 重要性:低 例 108 . 例子 PROGRAM PLC_PRG VAR iTemp1 : INT; diTemp3 : DIN
Project Structure ¶ Rule #9: Reuse a well-known
Conventions ¶ Rule #10: Use [...] PascalCase rule [...] Analysis . A rule set is
Templates ¶ Rule #8: Not from scratch - Use Templates
The current Rule [...] _show” <-> “INTERNAL”). Rule #5
Interface Design ¶ Rule #5: Design smart Interfaces
Project Information ¶ Rule #3: Fill in the Project
Error Handling ¶ Rule #6: Implement [...] code breaks rule #6