Mega88 aufwecken aus POWER SAVE Mode

OP #1009611
Lesenswert?

Hi @all,

Umgebung: ATmega88V mit 2 MHz ext. Crystal Osc.

Ich moechte meinen mega88 alle 1 ms bzw. 250 µs aus dem Power Save Mode 
aufwecken. Um das ganze zu realisieren hab ich Timer2 entsprechende 
konfiguriert und schalte fuer die unterschiedlichen Zeiten einfach OCR2A 
um (Timer im CTC Mode, Prescaler 64, -> ~1 ms OCR2A = 0x1F, ~250µs OCR2A 
= 0x07, ISR ist da und enabled). Ohne Sleep und im IDLE Mode 
funktioniert alles wie geplant. Um allerdings aus dem Power Save Mode 
ueber Timer2 aufzuwachen muesste ich meinen Timer asynchron machen. Wie 
geht das? Funktioniert das ueberhaupt mit meinem 2 MHz Crystal oder muss 
das der beschriebene 32,xx kHz Quarz sein? Wenn nein wie kann ich meine 
WakeUp Zeiten aus dem Power Save sonst realisieren?

Bin fuer jeden Tipp dankbar ...

Gruß Uwe
#1009635
Lesenswert?

Wenn du einen 2MHz Quarz dran hängen hast und diesen Oszillator alle 
250µs stillegen willst, dann wird dir die Anschwingzeit des Oszillators 
einen Strich durch die Rechnung machen. Ein Quarzoszillator benötigt 
unangenehm lange bis er sauber schwingt.

In Frage kommt also allenfalls der Standby-Modus, in dem der 
Quarzoszillator weiterhin schwingt. Oder du verwendest den internen 
RC-Oszillator, weil der keine Anschwingzeit hat.

Alternative 1 also: Den Haupttakt aus dem internen RC-Oszillator 
beziehen, einen 32KHz Quarz anschliessen und als asynchronen Taktquelle 
für den Timer2 verwenden. Exakte Zeiten aus dem 32KHz-Timer ableiten und 
den RC-Oszillator ggf. über den 32KHz Takt trimmen (siehe Appnote).

Achtung aber: Im asynchronen Betrieb hat der Timer bestimmte 
Randbedingungen, die allzu kurze Aktivzeiten ausschliessen. Da könnte 
sich ein 250µs Rhythmus möglicherweise als sinnarm erweisen.

Alternative 2: Extern einen 4KHz Interrupt erzeugen.
OP #1009672
Lesenswert?

Hi A.K.,

erst mal vielen, vielen Dank fuer die Tipps haette alles super 
funktioniert allerdings bin ich auf den 2 MHz Quarz angewiesen und das 
CLKOUT des µC geht noch weiter an ein 2tes System das ebenfalls die 2 
MHz braucht. Mist, ... ich hab fast befuerchtet, dass das ganze nicht so 
einfach wird!?! Vielleicht muss ich ja doch nochmal meine HW 
ueberdenken!?

Gruß Uwe
#1009704
Lesenswert?

Mach doch erstmal ne Strombilanz:

Also wieviel Strom hast Du zur Verfügung, wieviel zieht der AVR, wieviel 
die andere Schaltung usw..

Dann erst kannst Du überlegen, wie sich was sparen läßt.
Vielleicht auch einfach durch Spannung runtersetzen (1,8V).

Oder nimm nen extra ATtiny25, der mit 32kHz läuft und den anderen 
aufweckt.


Peter

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren