Herunterladen Inhalt Inhalt Diese Seite drucken

Hitachi HIDICMICRO-EH Handbuch Seite 223

Inhaltsverzeichnis

Werbung

9.1.2
Periodische Programme
(1)
Definition und Funktionsweise
Bei periodischen Programmen handelt es sich um Interrupt-Programme, die während des Betriebs der CPU in festen
Zeitabständen von 10ms, 20ms oder 40ms ausgeführt werden. Die Auswahl eines bestimmten Zeitabstandes wird vom
Anwender durchgeführt.
Das entsprechende vom Anwender geschriebene periodische Programm wird zwischen den Anweisungen INT0 und RTI
platziert, falls das Programm alle 10ms ausgeführt werden soll (entsprechend INT1 und RTI bei 20ms sowie INT2 und
RTI bei 40ms).
Die periodischen Systemprogramme werden alle 10ms ausgeführt, unabhängig davon, ob ein Interrupt-Programm existiert
oder nicht.
Normales
Periodisches
Programm
Programm
Period. System-Programm
(einschl. Routinen zur
Interrupt-Erkennung)
Ausführung des peri-
odischen Programms
Bild 9.9 Zeitlicher Ablauf periodischer Programme am Beispiel von INT1
(2)
Ursachen für Stau-Fehler
Werden periodische Programme sowohl alle 10ms, als auch alle 20ms und alle 40ms ausgeführt, so tritt ein Stau-Fehler
auf und das Programm wird gestoppt, falls das alle 10ms ausgeführte periodische Programm gestartet wurde, bevor die
anderen periodischen Programme beendet wurden (d.h. wenn die periodischen Systempogramme INT0 bis INT2 nicht
innerhalb von 10ms beendet sind).
Periodische System-Programme
Period. Programmaus-
führung alle 10ms
Periodische
Period. Programmaus-
Programme
führung alle 20ms
Period. Programmaus-
führung alle 40ms
Normales Programm
Beispiel 1:
Bevor das periodische 10ms-Pro-
gramm endet, wird der periodische
10ms-Interrupt erneut gestartet.
Bild 9.10 Stau-Fehler während des periodischen Programms (10 ms)
Wird ein periodisches Programm alle 20ms oder eine Kombination zweier periodischer Programme alle 20ms und alle
40ms ausgeführt, so tritt ein Stau-Fehler auf, wenn das periodische 20ms-Programm erneut gestartet wird, bevor alle
anderen periodischen Programme beendet wurden (d.h. wenn die periodischen Systempogramm INT1 und INT2 nicht
innerhalb von 20ms beendet sind).
Wird ein periodisches Programm alle 40ms ausgeführt, so tritt ein Stau-Fehler auf, wenn das periodische 40ms-Programm
erneut gestartet wird, bevor alle anderen periodischen Programme beendet wurden (d.h. wenn das periodische
Systempogramm INT2 nicht innerhalb von 40ms beendet ist).
Periodische
System-Programme
Ausführ. alle 10 ms
Period. Programm
20 ms
Ausführ. alle 20 ms
Period. Programm
Ausführ. alle 40 ms
Period. Programm
Normales Programm
Interrupt
INT1
RTI
10 ms
Stop
INT0
INT0
Beispiel 2:
Bevor das periodische 20ms-Pro-
gramm endet, wird der periodische
10ms-Interrupt erneut gestartet.
9-5
Kapitel 9 - Betrieb und Stop der MICRO-EH
10 ms
Interrupt
INT1
RTI
10 ms
Stop
RTI
INT0
INT1
Beispiel 3:
Bevor das periodische 40ms-Pro-
gramm endet, wird der periodische
10ms-Interrupt erneut gestartet.
Interrupt
INT1
10 ms
Stop
RTI
RTI
INT1
INT2

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis