Forum: Mikrocontroller und Digitale Elektronik Unterprogramm Wecker einer Uhr in ASM für ATmega8 ?


von Olli R. (downunderthunder42)


Angehängte Dateien:

Lesenswert?

Hallo,

ich hab ein Problem mit einer Subroutine einer ATmega-Uhr

und zwar wollte ich, wenn eine bestimmte Zeit erreicht ist, ein Ereignis 
auslösen (LED blinkt für eine Minute z.B.).

Das klappt auch soweit, allerdings habe ich ein Problem bei der 
Erweiterung dieser Funktion.

Ich wollte nun, dass nachdem die LED eine Minute geblinkt hat nach 10 
Minuten nochmals eine Minute blinkt. (Insgesamt soll das Blinken 6 mal 
im Abstand von 10 Minuten wiederholt werden).


Zur Subroutine:

die Zeit sowie die Weckzeit sind im SRAM gespeichert:

dt_minute = Minuten der aktuellen Zeit
dt_hour   = Stunden der aktuellen Zeit

dt_wake_hour = Stunden der Weckzeit
dt_wake_minute = Minuten der Weckzeit

dt_wake_rep_min = Zahl der Minuten um die die Weckzeit erweitert 
(erhöht) werden muss um in 10 Minuten ein erneutes Blinken auszulösen

dt_wake_rep_hou = Zahl der Stunden um die die Weckzeit erweitert 
(erhöht) werden muss um in 10 Minuten ein erneutes Blinken auszulösen

dt_wake_rep_count = Zähler, der dafür sorgt, dass nach 10 Wiederholungen 
gestoppt wird und dt_wake_rep_min und dt_wake_rep_hou zurückgesetzt 
werden.

von Olli R. (downunderthunder42)


Angehängte Dateien:

Lesenswert?

Ok,

Jetzt habe ich die Lösung des Problems selber gefunden.

Ich habe allerdings ne Menge im Proggi geändert.
Das wollte ich hier nicht alles beschreiben.

Schaut einfach mal in die geänderte Routine vielleicht hilft's jemandem 
irgendwann.


Gruß


Olli

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.