Datentyp: Implizite Enumeration
Die implizite Enumeration ermöglicht auf einfache Weise die Deklaration einer neuen Enumerationsvariablen, die nur innerhalb der lokalen POU gültig ist. Eine Variable diesen Typs kann eine begrenzte Anzahl von ganzzahligen Werten annehmen, die in der Komponentenliste deklariert werden.
Die implizite Enumeration hat keinen Datentyp-Namen oder Bezeichner.
Deklaration:
<variable name> : ( <list of component names> ) := <initialization>;
| Komma separierte Liste von Komponentennamen mit der gewünschten Anzahl von Komponenten Jede Komponente steht für einen ganzzahligen Wert, beginnend bei 0. Der Wert der nachfolgende Komponente erhöht sich jeweils um 1. Beispiel: Den Komponenten kann auch ein fester Wert zugewiesen werden. Beispiel: |
| Optional Initialisierungswert, üblicherweise eine Komponente |
Aufruf:
PROGRAM PLC_PRG VAR iAlphabet : (Alfa, Bravo, Charlie, Delta, Echo) := Echo; strText : STRING; iNumber : INT; END_VAR
CASE iAlphabet OF Alfa: strText := 'A'; Bravo: strText := 'B'; Charlie: strText := 'C'; Delta: strText := 'D'; Echo: strText := 'E'; END_CASE iNumber := iAlphabet;
Interner Datentyp
Bei einer impliziten Enumeration wird intern ein Datentyp erzeugt, dessen Namen folgendem Schema folgt:
IMPLICIT_ENUM_ <POU name> _ <variable name>
Sie sollten diesen internen Bezeichner jedoch nicht verwenden, da es immer möglich ist, dass der interne Bezeichner anders lautet.