SA0047: Zugriff auf direkte Adressen

Funktion

Ermittelt direkte Adresszugriffe im Implementierungscode.

Begründung

Symbolische Programmierung ist immer zu bevorzugen: Eine Variable hat einen Namen, der auch eine Bedeutung tragen kann. Einer Adresse ist nicht ansehbar, wofür diese verwendet wird.

Wichtigkeit

Hoch

PLCopen-Regel

N1/CP1

Beispiele:

PROGRAM MAIN
VAR
    bBOOL  : BOOL;
    nBYTE  : BYTE;
    nWORD  : WORD;
    nDWORD : DWORD;
END_VAR
bBOOL  := %IX0.0;                // => SA0047
%QX0.0 := bBOOL;                 // => SA0047
%QW2   := nWORD;                 // => SA0047
%QD4   := nDWORD;                // => SA0047
%MX0.1 := bBOOL;                 // => SA0047
%MB1   := nBYTE;                 // => SA0047
%MD4   := nDWORD;                // => SA0047