Deklaration eines Sprachelements mit partieller Adresse in ST
logi.CAD 3 ermöglicht es, einen noch nicht festgelegten Speicherort (= eine partielle Adresse) bei den folgenden Sprachelementen zu definieren:
- bei Strukturelementen für einen →strukturierter Datentyp
- bei →Variablen in bestimmten Abschnitten
TYPE name_1: STRUCT name_e1 AT %(I|Q|M)* (* optional_begin *) {OFFSET := value} (* optional_end *) : type := initial-value; name_e2 AT %(I|Q|M)* (* optional_begin *) {OFFSET := value} (* optional_end *) : type := initial-value; ... END_STRUCT; END_TYPE VAR | VAR_INPUT | VAR_OUTPUT | VAR_GLOBAL | VAR_TEMP name_3, name_4, ..., name_n AT %(I|Q|M)* : type := initial-value; name_5 AT %(I|Q|M)*, name_6 AT %(I|Q|M)*, ... : type := initial-value; ... END_VAR
Bedeutung der partiellen Adresse und des Offsets | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Mit Geben Sie eine partielle Adresse laut diesem Aufbau ein:
Erweiterung zur IEC-Norm Als Erweiterung zur →IEC-Norm ist es möglich, mehrere Variablen mit einer partiellen Adressen oder mehrere Variablen mit partiellen Adressen in einer Zeile zu deklarieren. Mit dem optionalen Attribut OFFSET wird ein relativer Offset nach der Adresse definiert. Dieses Attribut wird nur bei Strukturelementen unterstützt.Erweiterung zur IEC-Norm Das Attribut Einschränkungen bzw. Erweiterung zur IEC-Norm
|
Die Deklaration von partiellen Adressen ist innerhalb dieser Abschnitte möglich:
(Informieren Sie sich in der jeweiligen Beschreibung zum Abschnitt über evtl. zusätzliche Möglichkeiten für die Variable.)
Abschnitt | Die Deklaration des Sprachelements erfolgt als: |
---|---|
VAR ... END_VAR | interne Variable (siehe "Deklaration von internen Variablen") |
VAR_INPUT ... END_VAR | Eingangsvariable (siehe "Deklaration von Eingangsvariablen in ST") |
VAR_OUTPUT ... END_VAR | Ausgangsvariable (siehe "Deklaration von Ausgangsvariablen in ST") |
VAR_GLOBAL ... END_VAR | globale Variable (siehe "Deklaration von externen Variablen in ST") |
VAR_TEMP ... END_VAR | temporäre Variable (siehe "Deklaration von temporären Variablen in ST") |
| →strukturierter Datentyp (siehe "Deklaration eines strukturierten Datentyps in ST") |
TYPE MyType1 : STRUCT Elem1 AT %I* : INT; (* Zuweisung eines noch nicht festgelegten Eingangs, keine Offset *) Elem2 AT %Q* {OFFSET := 9} : INT; (* Zuweisung eines noch nicht festgelegten Ausgangs, Offset für 'elem2': 9 *) Elem3 : INT; (* keine Zuweisung einer Adresse *) END_STRUCT; END_TYPE