Herunterladen Diese Seite drucken

Siemens SIMATIC S7-200 Systemhandbuch Seite 276

Vorschau ausblenden Andere Handbücher für SIMATIC S7-200:

Werbung

Operationssatz
Unterprogramm aufrufen, beginnen und beenden
K
O
P
A
CALL
W
L
SBR
CRET
RET
212
214
Wird ein Unterprogramm aufgerufen, ist der oberste Stackwert immer "1". Deshalb können
Sie in dem Netzwerk, das auf die Operation SBR folgt, Ausgänge und Boxen direkt an die
linke Stromschiene anschließen. In AWL kann die Ladeoperation, die auf die Operation SBR
folgt, entfallen.
Akkumulatoren werden sowohl vom Hauptprogramm als auch von den Unterprogrammen
verwendet. Der Aufruf eines Unterprogramms bewirkt nicht, daß die Akkumulatoren gespei-
chert und später wiederhergestellt werden.
Bild 10-36 zeigt ein Beispiel für Operationen mit Unterprogrammen.
Einschränkungen
Einschränkungen für die Verwendung von Unterprogrammen:
Ordnen Sie alle Unterprogramme nach dem Ende des Hauptprogramms an.
Die Operationen LSCR, SCRE, SCRT und END dürfen Sie in Unterprogrammen nicht
verwenden.
Sie müssen jedes Unterprogramm mit der Operation Unterprogramm absolut beenden
(RET) beenden.
10-88
Die Operation Unterprogramm aufrufen ruft ein
Unterprogramm (n) auf.
n
CALL
Die Operation Unterprogramm beginnen kennzeichnet den
Beginn eines Unterprogramms (n).
n
SBR
Die Operation Unterprogramm bedingt beenden beendet ein
Unterprogramm in Abhängigkeit von dem Zustand der
vorherigen Verknüpfung.
RET
Mit der Operation Unterprogramm absolut beenden muß
jedes Unterprogramm beendet werden.
RET
Operanden:
Ist die Bearbeitung eines Unterprogramms beendet, dann wird
n
das Hauptprogramm an der Operation weiterbearbeitet, die auf
n
die Operation CALL folgt.
Sie können Unterprogramme in maximal acht Ebenen
verschachteln (innerhalb eines Unterprogramms ein weiteres
Unterprogramm aufrufen). Rekursion (ein Unterprogramm ruft
sich selbst auf) ist zulässig, doch sollten Sie Rekursion in
215
216
Unterprogrammen nur mit Vorsicht einsetzen.
Beim Aufrufen eines Unterprogramms wird der gesamte Stack
gespeichert, der oberste Stackwert wird auf "1" gesetzt, alle
weiteren Stackwerte werden auf "0" gesetzt und das
aufgerufene Unterprogramm wird bearbeitet. Ist die Bearbeitung
des Unterprogramms beendet, wird der Stack mit den Werten,
die zum Zeitpunkt des Aufrufs gespeichert waren,
wiederhergestellt. Anschließend wird das aufrufende Programm
weiterbearbeitet.
n:
0 bis 63
Automatisierungssystem S7-200, Systemhandbuch
C79000-G7000-C230-02

Werbung

loading