Die Variablen frägst du ab! Die Timer-Interrupt-routine aktualisiert sie!!!Das war jetzt die Funktion, die der Timer alle 25ms ausführt!
In dieser Funktion, welche alle 25ms ausgeführt wird, wird jede Variable um 25ms hochgezählt. Wenn sie ihr maximum erreicht haben, setzt man wie wieder auf 0! Sie werden NUR von der Timer-Routine beeinflusst!!!
Das läuft alles völlig im hintergrund!
Du musst nur noch beobachten, wann eine dieser Variablen den maximalen wert annimmt!
Und wenn das der Fall ist, dann veränderst die LED!!!
Um auf das im Hauptprogramm noch genauer einzugehen:
WENN irq_25ms GLEICH 25ms IST, DANN SCHAUE OB LED1 AN IST: WENN JA, MACH SIE AUS, WENN NEIN, MACH SIE AN!
WENN irq_50ms GLEICH 50ms IST, DANN SCHAUE OB LED2 AN IST: WENN JA, MACH SIE AUS, WENN NEIN, MACH SIE AN!
WENN irq_75ms GLEICH 75ms IST, DANN SCHAUE OB LED3 AN IST: WENN JA, MACH SIE AUS, WENN NEIN, MACH SIE AN!
Lesezeichen