Hi, ich habe folgendes Problem, ich will meinen avr (mega8) für eine längere Zeit (2-50stunden) in den "Power Down" Mode bringen und ihn dann über einen Interrupt wieder aufwecken. Gibt es dafür ein spezielles Zähl IC oder ist es sinnvoller einen zusätzlichen tiny zählen zu lassen?
Vom Energieverbrauch ist es denke ich besser, du lasst dein mega8 selbst zählen, indem du ihn jede 10s kurz aufweckst, eine Variable veränderts (incrementieren) und dann sofort wieder schlafen legst. Wenn dann deine Variable 360 ist, sind 2 Stunden um, und dein Mega8 war in dieser Zeit >1s an. Müsste deutlich weniger Verbrauchen als ein zusätzliches IC
ich interpretiere das datenblatt so, daß auch die timer schlafen, ich also keinen 10s takt zum aufwachen erzeugen kann.
Hab ich auch gerade gelesen, war mal wieder zu schnell! Wenn man sich aber mit einem OP ein einfachen Rechteckgenrator für 1 Hz baut? Müsste doch auch funktionierern.
Das wäre ja sonst vielleicht eine Aufgabe für eine RTC... Die zieht aber auch Strom. Da könnte man auch gleich den Mega8 selber zählen...
Das kommt darauf an, welchen Schlafmodus man einstellt. Im "idle"-Modus laufen die Timer weiter. Im "ADC noise reduction"-Modus läuft der Timer2 weiter, der aber nur ein 8bit-Timer ist. Die MCU müßte also öfter zum Inkrementieren aufwachen (bei 1MHz Takt mindestens ca. 4 Mal pro Sekunde), aber das ist immer noch fast nichts. Im "power-save"-Modus läuf Timer2 weiter, wenn er mit einen eigenen Takt versorgt wird.
Warum denn gleich "Power-Down Mode" ? Der Power-Save Mode wäre da genau das was du brauchst. Der Unterschied zwischen beiden ist das beim Power-Save der Timer2 noch aktiv ist. Den kannste dann für die nötigen Zeitnahmen nutzen.
Und im Powerdown-Modus läuft der Watchdog weiter. Wenn Du den bisher nicht benutzt hast, kannst Du ihn auch zum Aufwecken des uCs nehmen. Nach dem Reset kannst Du im MCUCS Register erkennen, ob der Watchdog der Grund dafür war. @Ratber: Timer2 läuft nur weiter, wenn er asynchron, d.h. mit einem externen (Uhren-)Quarz, getaktet wird.
>Timer2 läuft nur weiter, wenn er asynchron, d.h. mit einem >externen (Uhren-)Quarz, getaktet wird. Weiß ich. Die Info wird Tobias,wenn er sich dafür entscheidet,ja eh aus dem Datenblatt bekommen. Ne alternative wäre nen Attiny13 bei 1 Mhz mit ca. 0,3mA der als "Externer Wecker" arbeitet oder gleich nen RTC aber ich denke mal das er den Controller schlafen legt um Energie zu sparen also kein Unterschied zur Timergeschichte. An nem Extraqrz wirds wohl nicht scheitern :)
Das Problem bei einem Mega8 ist, dass sich der Hauptquarz (sofern verwendet) und der Uhrenquarz für Timer2 die Pins teilen. Asynchroner Betrieb von Timer2 ist also nur möglich, wenn der uC mit dem internen Oszillator läuft. (Man kann dann allerdings den Uhrenquarz verwenden, um den internen Oszillator zu kalibrieren.)
Mit einer externen RTC würde das ganze recht gut funktionieren. Hab ich schon mal für nen Datenlogger gemacht. z.B. die RTC72421 hat einen Alarmausgang, der dafür benutzt werden kann. Das ganze braucht so ca. 10uA, was i.A. ganz brauchbar dafür wäre. Ansonsten ginge natürlich auch MSP430, dann kannst du das ganze Programmieren wie du willst. Nur stellt sich dann die Frage warum nicht gleich nen MSP430 nehmen, um alles damit zu machen.... die besten Grüße Thomas
> Ne alternative wäre nen Attiny13 bei 1 Mhz mit ca. 0,3mA der als > "Externer Wecker" arbeitet Den Tiny13 kann ich auch aus dem Watchdog-Oszillator takten. Dann läuft er mit 128kHz. Ob der 1/8-Teiler auch mit dem funktioniert, weiß ich nicht. Wenn ja, geht's sogar mit 16kHz. Wobei man beim Tiny13 auch gleich den Watchdog selbst als Interrupt-Quelle nehmen kann. Dann kann man den Tiny auch schlafen legen ;-) > oder gleich nen RTC aber ich denke mal das er den Controller > schlafen legt um Energie zu sparen also kein Unterschied zur > Timergeschichte. Dann halt ADC noise reduction auf dem Mega8. Da hat man den Timer2 auch, und der läuft ganz normal. Das dürtfe doch auch nicht viel Strom schlucken, oder?
>Das Problem bei einem Mega8 ist, dass sich der Hauptquarz (sofern >verwendet) und der Uhrenquarz für Timer2 die Pins teilen. Asynchroner >Betrieb von Timer2 ist also nur möglich, wenn der uC mit dem internen >Oszillator läuft. Ja,is richtig aber die internen 8Mhz. sollten eigentlich ausreichend für die meisten anwendungen sein. @Tobias Gib doich mal mehr Infos zum Verwendungszweck.
@Rolf
>........Das dürtfe doch auch nicht viel Strom schlucken, oder?
Ich hab das jetzt nicht genau im Kopf aber nen RTC ist im Verbruach
wesentlich günstiger als nen Mega8 der halb läuft.
Könnte sich lohnen.
Wie gesagt wissen wir ja nicht viel über das Projekt ansich.
Wie Groß ist die Schaltung,ist sie Portabel usw.
Da müßten eben etwas mehr Informationen her.
Grundsätzlich kann man alles Lösen solange man weiß was erlaubt ist und
was nicht.
Jaja, baut immer nur das Dach zuerst auf und wundert euch dann, warum das Haus nicht drunter paßt. Also zuerst als Fundament eine Strombilanz aufmachen !!! D.h. wieviel Strom habe ich wie lange für die verschiedenen Betriebsarten zur Verfügung ? Erst danach kann man auch anfangen zu überlegen, wie das zu realisieren geht. Bis dahin sind alle Diskussionen gequirlter Mumpitz. Peter
>...Bis dahin sind alle Diskussionen gequirlter Mumpitz. Immer diese krasse schwarz/Weißmalerei. '-) Es geht auch anders. Sehen was man an Funktionalität haben will und dann die Stromversorgung danach Dimensionieren. Oder sehen was man investieren möchte und danach den Umfang derSchaltung realisieren. Oder,oder,oder. Ich kann mich da nur wiederholen. >Da müßten eben etwas mehr Informationen her. >Grundsätzlich kann man alles Lösen solange man weiß was erlaubt ist >und was nicht.
Zur Strombilanz gehört natürlich auch der Rest der Schaltung. Habe ich z.B. einen Spannungsregler oder andere Schaltungsteile, die schon mal 10mA verbraten oder speise aus einem NiCd-Akku mit hoher Selbstentladung, dann lohnt sich keine Diskussion um 100µA mehr oder weniger. Peter
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.