User manual

S7-200 Befehlssatz Kapitel 6
161
Beispiel: Interruptoperationen
M
A
I
N
Netzwerk 1 //Im ersten Zyklus:
//1. Interruptprogramm INT_0 als Interrupt
// Fallende Flanke für E0.0 definieren.
//2. Alle Interruptereignisse freigeben.
LD SM0.1
ATCH INT_0, 1
ENI
Netzwerk 2 //Wird ein E/A-Fehler erkannt,
//Interrupt Erkennung fallende Flanke für E0.0 deaktivieren.
//Dieses Netzwerk ist optional.
LD SM5.0
DTCH 1
Netzwerk 3 //Wenn M5.0 eingeschaltet ist,
//alle Interrupts sperren.
LD M5.0
DISI
I
N
T
0
Netzwerk 1 //Interruptprogramm für fallende Flanke E0.0:
//Aufgrund eines E/A-Fehlers Interruptprogramm bedingt
//beenden.
LD SM5.0
CRETI
Beispiel: Zeitgesteuerter Interrupt zum Lesen des Werts eines Analogeingangs
M
A
I
N
Netzwerk 1 //Im ersten Zyklus, Unterprogram m 0 aufrufen.
LD SM0.1
CALL SBR0
S
B
R
0
Netzwerk 1 //1. Intervall für zeitgesteuerten Interrupt 0 auf
// 100 ms setzen.
//2. Zeitgesteuerten Interrupt 0 (Ereignis 10) INT_0 zuordnen.
//3. Alle Interruptereignisse freigeben.
LD SM0.0
MOVB 100, SMB34
ATCH INT_0, 10
ENI
I
N
T
0
Netzwerk 1 //Wert von AEW4 alle 100 ms lesen.
LD SM0.0
MOVW AEW4, VW100