Herunterladen Diese Seite drucken

Danfoss MCO 305 Befehlsreferenz Seite 34

Vorschau ausblenden Andere Handbücher für MCO 305:

Werbung

MCO 305 Befehlsreferenz
Befehlsgruppe
Querverweis
Syntax-Beispiel
34
__ Befehlsreferenz __
DISABLE ALL in Kombination mit selektivem DISABLE
Hierbei ist zu beachten, dass das ENABLE ALL keine Auswirkung auf gleichzeitig
noch gültige selektive Sperrungen hat (z.B. durch DISABLE INT). Eine selektive
Sperrung muss somit auch wieder durch das entsprechende selektive ENABLE
aufgehoben werden!
Interrupt-Behandlung im Interrupt
Während der Ausführung eines Interrupt-Unterprogramms wird automatisch intern
zuerst ein DISABLE ALL ausgeführt. Dies sperrt die Ausführung aller weiterer Inter-
rupts, speichert deren Anforderung jedoch. Am Ende des „aktuellen" Interrupt-
Unterprogramms wird wiederum automatisch ein ENABLE ALL ausgeführt. Mit dem
Abschluss des „aktuellen" Interrupts werden dann die anstehenden, gespeicherten
Interrupts noch ausgeführt. Die Ausführung der Befehle DISABLE ALL und ENABLE
ALL ist somit innerhalb eines Interrupts nicht notwendig und nicht sinnvoll.
Das selektive Sperren einzelner Interrupts innerhalb eines Interrupt-Unterpro-
gramms kann jedoch in Abhängigkeit von der Anwendung sinnvoll und erforderlich
sein. Falls zum Beispiel während der Ausführung eines Interrupts keine weiteren
flankengetriggerten Interrupts akzeptiert und auch nicht gespeichert werden sol-
len, ist ein gezieltes Sperren der Interrupt-Quelle (z.B. mit DISABLE INT) möglich.
In diesem Fall muss der selektive Interrupt später (z.B. mit ENABLE INT) wieder
durch das Applikationsprogramm (z.B. am Ende des aktuellen Interrupt-Unterpro-
gramms) freigegeben werden, um die Ausführung entsprechender Interrupt-Anfor-
derungen künftig wieder zu ermöglichen. Alle flankengetriggerten Interrupts, die
zwischen dem entsprechenden selektiven DISABLE und ENABLE eingetroffen sind,
werden ignoriert und (auch später) nicht mehr ausgeführt. Alle Interrupts, die vor
der selektiven Sperrung (z.B. DISABLE INT) oder nach der erneuten selektiven
Freigabe (z.B. ENABLE INT) eingetroffen sind, werden nach Abschluss des „ersten"
Interrupts abgearbeitet.
INT
ON INT, ON CANMSG, ON COMBIT, ON KEYPRESSED, ON STATBIT, ON PARAM, ON
PERIOD, ON TIME, ENABLE .. Interrupts
DISABLE ALL
/* Alle Interrupts abschalten */
DISABLE STATBIT
/* Interrupt für Statusbit abschalten */
®
MG.34.R1.03 – VLT
ist ein eingetragenes Warenzeichen von Danfoss.

Werbung

loading