Ein- und Ausgänge in Struktur

bonatus

Level-1
Beiträge
239
Reaktionspunkte
49
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich hab mal eine relative einfache Frage zu TwinCat:

Kann ich Ein- und Ausgangsvariablen auch in einer Struktur deklarieren?

Kann es zu irgendwelchen Komplikationen kommen?

z.B.:
Code:
TYPE XXX_800 :
STRUCT
    (*Inputs XXX*)
    Poti_Spindel AT %IB100:BYTE;     (*Gibt Stellung des Spindelpotis wieder 0..31*)
    Poti_Feed_XXX AT %IB101:BYTE;                (*Gibt Stellung des Vorschubpotis wieder 0..31*)
    Tasten_1_bis_16_XXX AT %IW102:WORD;        (*Gibt die Schalterstellung der Tasten wieder- Belegung siehe Anleitung*)
    Encoder_XXX AT %IW104:WORD;                (*Bewegung des Handrads*)
    Status_XXX AT %IB106:BYTE;                    (*Betriebsinformationen des XXX
                                                    Bit 0    1 - Funkverbindung erfolgreich hergestellt
                                                    Bit 1    1 - Initialisierungsfehler XXX 800
                                                    Bit 2    1 - keine serielle Verbindung zum XXX*)
    (*Outputs XXX*)
    LED_1_bis_12_XXX AT%QW100:WORD;                (*Ansteuerung der Status LEDs - Belegung siehe Anleitung*)
    TextZeile_1_XXX AT%QB102:ARRAY[1..12] OF BYTE;    (*Ansteuerungs der TextZeile 1 im Display*)
    TextZeile_2_XXX AT%QB114:ARRAY[1..12] OF BYTE;    (*Ansteuerungs der TextZeile 2 im Display*)
END_STRUCT
END_TYPE
gruß bonatus
 
Kann man (gibt kein Fehler beim Übersetzen).

Ist aber nicht zweckmäßig. Strukturen sind ja dafür da, dass diese mehrfach instanziiert werden. Dadurch würden mehrere Variablen mit dieser Struktur und damit mit den gleichen Adressen existieren. Bei Veränderung des Wertes einer Variablen, würden dann alle Werte der Variablen mit der gleichen Adresse ebenfalls geändert werden.

Daher unzweckmäßig, lieber nicht machen!
 
Zurück
Oben