PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 24 h warten



Snakey
26.02.2007, 13:12
Hallo zusammen,

ich bin ganz neu hier und habe mal eine wahrscheinlich blöde Frage:
Ich habe einen Attiny12, intern 1,8MHz, kein externer Quarz.

Wie stelle ich es an, dass er mithilfe eines Timers oder Schleifen, nur einmal täglich etwas macht, also zwischendurch 24 h wartet ?

Oder ist es sinnvoller, ne Schaltuhr davor zu schließen und die Aufgabe beim Start einmal durchzuführen ?

Generell würde es mich aber schon interessieren, wie man so lange wartet...

Gruß,
Snakey

coCo
26.02.2007, 13:40
Hi,
du stellst den Timer einfach so ein, dass er jede Sekunde einen Interrupt auslöst. Im Interrupt wird eine Zählervariable jdesmal hochgezählt. In deiner Hauptschleife vergleichst du die Variable mit der gewünschten Zeit, also für 24h: 24*60*60 = 86400. Wenn die Variable auch 86400 enthält, dann sind 24h um.

MfG

Snakey
26.02.2007, 14:14
Hallo,

danke erstmal.
Aber bekomme ich denn mit einem Teiler die 1,8MHz auf eine Sekunde herunter ?
Der muß doch dann ziemlich hoch sein ?

Gruß,
Snakey

zerush
26.02.2007, 15:14
prescaler = 1024
Timer immer um 5 preloaden
=> 7 mal pro sekunde wird die timer-routine ausgeführt

also dann einfach die variable bis 605079 hochzählen
(abweichung dann 0,1s pro tag)