SA0005: Ungültige Adressen und Datentypen

Funktion

Ermittelt ungültige Adress- und Datentypspezifikationen.

Für Adressen sind die folgenden Größenpräfixe gültig. Abweichungen davon führen zu einer ungültigen Adressspezifikation.

  • X für BOOL
  • B für 1-Byte-Datentypen
  • W für 2-Byte-Datentypen
  • D für 4-Byte-Datentypen

Begründung

Variablen, die auf direkten Adressen liegen, sollten möglichst mit einer Adresse assoziiert werden, die ihrer Datentypbreite entspricht. Es kann für den Leser des Codes zur Verwirrung führen, wenn beispielsweise ein DWORD auf eine BYTE-Adresse gelegt wird.

Wichtigkeit

Niedrig

SA0005: Ungültige Adressen und Datentypen 1:

Mit den empfohlenen Platzhaltern %I* oder %Q* wird eine flexible und optimierte Adressierung von TwinCAT automatisch durchgeführt.

Beispiele:

PROGRAM MAIN 
VAR
    nOK   AT%QW0   : INT;
    bOK   AT%QX5.0 : BOOL;
 
    nNOK  AT%QD10  : INT;        // => SA0005
    bNOK  AT%QB15  : BOOL;       // => SA0005
END_VAR