STACKINT (Ganzzahl-Stack)

Die STACKINT-Anweisung verwaltet einen Stapel ganzzahliger Werte.
Details zum Betrieb:
  • STACKINT enthält eine Erkennungsfunktion für ansteigende Flanken bei PUSH- und POP-Befehlen. Die Maximalgröße des Stapels ist 128. Der OFLO-Wert ist nur nach einem Zurücksetzen gültig (R1 wurde mindestens ein Mal auf TRUE und wieder zurück auf FALSE gesetzt).
  • Die in der Anwendung definierte Stapelgröße (N) kann nicht unter 1 oder über 128 liegen.
    • Wenn N > 1, nimmt STACKINT den Wert 1 an.
    • Wenn N > 128, nimmt STACKINT den Wert 128 an.
Unterstützte Sprachen: Funktionsblockdiagramm, Kontaktplan und Strukturierter Text.
Diese Anweisung gilt für die Controller
Micro810
LC10,
Micro820
L20E,
Micro850
L50E und
Micro870
L70E.
STACKINT
STACKINT
STACKINT-Parameter
Parameter
Parametertyp
Datentyp
Beschreibung
PUSH
Eingang
BOOL
  • TRUE: Anstiegsflanke entdeckt, bei PUSH-Befehl. Fügt den Wert IN oben auf den Stapel hinzu.
  • FALSE: Anstiegsflanke nicht erkannt bei PUSH-Befehl.
POP
Eingang
BOOL
  • TRUE: Anstiegsflanke entdeckt, bei POP-Befehl. Löscht den letzten Wert, der oben auf dem Stapel hinzugefügt wurde.
  • FALSE: Anstiegsflanke nicht erkannt bei POP-Befehl.
R1
Eingang
BOOL
  • TRUE: Setzt den Stapel auf den leeren Zustand zurück.
  • FALSE: Kein Zurücksetzen.
IN
Eingang
DINT
Per Push-Befehl gespeicherter Wert.
N
Eingang
DINT
Von der Anwendung definierte Stapelgröße Die Maximalgröße des Stapels ist 128.
EMPTY
Ausgang
BOOL
  • TRUE: Der Stapel ist leer.
  • FALSE: Der Stapel enthält Werte.
OFLO
Ausgang
BOOL
  • TRUE: Stapelüberlauf. Der Stapel ist voll, und R1 wurde mindestens einmal auf TRUE und wieder zurück auf FALSE gesetzt.
  • FALSE: Die Stapelgröße ist 128 oder weniger. Kein Überlauf.
OUT
Ausgang
DINT
Oberster Wert auf dem Stapel.
OUT ist gleich 0, wenn für OFLO der Wert TRUE zurückgegeben wird.

STACKINT-Beispiele

Beispiel für ein STACKINT Funktionsblockdiagramm
Beispiel für ein STACKINT Funktionsblockdiagramm
Beispiel für einen STACKINT-Kontaktplan
Beispiel für einen STACKINT-Kontaktplan
Beispiel für strukturierten STACKINT-Text
Beispiel für strukturierten STACKINT-Text
(* ST Equivalence: STACKINT1 is an instance of a STACKINT block *) STACKINT1(err_detect, acknowledge, manual_mode, err_code, max_err); appli_alarm := auto_mode AND NOT(STACKINT1.EMPTY); err_alarm := STACKINT1.OFLO; last_error := STACKINT1.OUT;
Ergebnisse
Ergebnisse
Rückmeldung geben
Haben Sie Fragen oder Feedback zu dieser Dokumentation? Bitte geben Sie hier Ihr Feedback ab.
Normal