|
Schriftgröße
an das Seitenlayout anpassen:
eventuell
anschaulicher?
(Komplette
Beschreibung von Anfang bis Ende)
Mainfunktion
Der Motor startet, anschließend werden die Ports und der
Interrupt0 initialisiert.
Der User
drückt den Taster und die while Schleife zählt bis
die 2 Sekunden Wartezeit vom Taster erreicht sind.
µController:
Der Taster wird noch mal abgefragt.
µController:
Jetzt schaltet der Kontroller die LED an.
Die LED leuchtet nun
durchgehend, wegen der while (1) Schleife.
Wartefunktion
Der
Interrupt wird gestartet.
Die
Zählschleife wird abgefragt.
Wenn der Taster
länger als 2s gedrückt wird, wird die Funktion
gestartet, wenn nicht wird die Funktion abgebrochen.
Die LED wird
angeschaltet und bekommt den Befehl 2s in diesen Zustand zu bleiben.
Jetzt wird die LED
ausgeschaltet und bekommt ein Befehl in diesem Zustand 2s zu
verbleiben.
Danach wird eine
while -Schleife gestartet, welche diesen Vorgang noch zweimal
wiederholt, bevor die LED im Zustand „off“
verbleibt.
Interruptfunktion
Nachdem
die Funktion „Warte“ im Hauptprogramm aufgerufen
wurde, startet diese.
Die
Zählvariable wird zunächst auf ihren Startwert i = 1
gesetzt.
Nun folgt die Abfrage ob i kleiner dem Endwert ist. Dieser ist in der
While-Schleife der Funktion definiert.
Mit der Operation i++ wird die Zählvariable bei jedem
Durchlauf der Schleife um Eins erhöht.
Dies wird so lange wiederholt bis der Endwert erreicht ist.
Nun springt das
Programm aus der Schleife (False → Ende) und führt
die Main-Funktion fort.
|