Hallo, ich wollte mal die Experten fragen, wie ich folgendes Problem lösen könnte. Ich verwende einen ATmega128L in einem Projekt, wo ich etwa 3KByte sich schnell verändernder Daten über das Ausschalten hinaus speichern möchte. Da der Zugriff schnell sein muß und sehr oft neue Daten geschrieben werden, möchte ich ungern das EEPROM oder ein externen Flash-Speicher benutzen. 3KByte SRAM im Prozessor sind noch frei. Ein GPS-Modul ist auch vorhanden und dieses benötigt sowieso eine kleine NiCd-Speicherbatterie. Jetzt habe ich mir überlegt, ich könnte doch auch von der NiCd-Speicherbatterie den Atmel speisen und den nach dem Abschalten der Stromversorgung in einen Low-Power-Modus setzen und so mit sehr geringem Stromverbrauch die SRAM-Daten erhalten. Wie würdet Ihr das machen? Folgende Fragen hätte ich speziell: 1. Das System ist 3,3V, es stehen aber auch 5V zur Verfügung. Wie baue ich am besten ein ein möglichst einfaches "Ladegerät" für den NiCd-Akku? Ich dachte an Diode+Widerstand. Ist das sinnvoll? 2. Da der Atmel kein extra Stromversorgungseingang für sein SRAM hat, muß ich dessen gesamte Versorgung über den NiCd-Akku laufen lassen. Um zu vermeiden, daß der Akku im Betrieb stark entladen wird, brauche ich also irgendwie eine "Umschaltung". Gibt es da fertige Lösungen für? Ich habe bei Maxim einige ICs gesehen, aber die sind entweder für 5V oder nirgendwo zu kaufen. 3. Wie kommt der Atmel mit einer sich plötzlich ändernden Versorungssoannung zurecht? (3,3V auf 2,4V) 4. Wie kann ich den Atmel sinnvoll in den Stromsparmodus setzen? Einen Port als Eingang mit pin change Interrupt konfigurieren und direkt an 3,3V legen? 5. Wenn der Atmel im Power-Down-Modus ist, sind dann die Portpins "hi-Z" und können keinen Strom ziehen oder bleiben die Portpins in ihrem aktuellen Zustand? Das wäre zum Beispiel wichtig, um zu verhindern, daß sich der Akku über irgendeine Peripherie schnell entladen kann. Ich danke Euch schonmal für die Mühe! Gruß Michael
Statt NiCd kannst du auch einen kleinen Goldcap verwenden, der grad so lange ausreicht, bis die Daten sicher im EEPROM verstaut sind. 5: Pins bleiben in ihrem Zustand. Man sollte sie also vorher in einen stromlosen Zustand bringen, sonst ist alles Stromsparen für die Katz. 4: Rein in den Powerdown geht's per Programm. Wie es wieder raus geht hängt von deiner Anwendung ab. 3: Im Powerdown egal, da läuft eh nichts. Nur mit laufendem Oszillator wäre ich bei schnellen Änderungen vorsichtig. 2: Wenn's ein Akku/Kondesator sein soll, muss da eh ein Ladewiderstand ran. Also einfach einen zum Ladestrom passenden Widerstand in Reihe dazu. Manche Künstler machen parallel zu dem Widerstand eine Diode, vergessen aber, dass die bei dem Powerdown-Strom nie leiten wird (Spannung über R <<0,6V). Den Arbeitsstrom kriegt der Controller im einfachsten Fall via Diode geliefert. Ggf. Schottky, dabei aber den höheren Sperrstrom beachten.
Hallo Michael, man könnte aber auch die 50Hz der Versorgungsspannung mit dem µC überwachen. Wird ein Netzausfall registriert, dann sofort die Daten im EEPROM ablegen. Beim Wegfall der 50 Hz verbleibt noch genügend Zeit, um die wenigen Byte sicher im EEROM abzulegen, bis der µC keine Versorgungsspannung mehr hat. Vorausgesetzt die Stürtzkondensatoren wurden nicht zu knapp dimensioniert. Bernhard
Erstmal danke für die Antworten. Da ich den NiCd-Akku sowieso brauche, werde ich den auch verwenden. Die einfachste Variante wäre also, ihn über eine Schottky-Diode und einen Ladewiderstand an +3,3V anzuschließen, und die Stromversorgung vom Mikrocontroller und den Backup-Eingang vom GPS-Modul an den Punkt zwischen Ladewiderstand und Schottky-Diode? Zwei Probleme fallen mir auf: Dem µC fehlen dann 400-500mV, das könnte vielleicht ein Problem werden, wenn er mit dem Rest der Schaltung kommuniziert. Könnte man sich hier vielleicht eine Variante ausdenken mit einem MOSFET statt Diode?! Auf welchen Ladestrom soll ich den Ladewiderstand dimensionieren? Das Gerät wird nie im Dauerbetrieb betrieben, höchstens mal 12 Stunden am Stück, und man muß davon ausgehen, daß es auch mal wochenlang gar nicht betrieben wird. Das GPS bräuchte allerdings auf jeden Fall eine Pufferbatterie in der Zeit, da dort die RTC drin ist, die ich auf jeden Fall direkt nach dem Einschalten brauche. Also wohl eher nicht auf Erhaltungsladung dimensionieren? Vielen Dank...
Also wenn Du einen Mega128L hast kannst Du ja den Brown-out auf 4V setzen und einfach die Versorgungsspannung Diodenentkoppelt über den Pufferakku speisen. Die Pins gehen im Brown-out auf Hochohmig (RESET) und somit Stromsparend (Sleepmodes trotzdem möglich). Im Datenblatt steht, dass der SRAM-Inhalt bis 'runter zu 0.5V unbeschädigt bleibt, was ATMEL natürlich nicht garantiert. Ich hab's schon bei einem Datenlogger ausprobiert, das passt schon!
Schottky-Diode zwischen 3,3V und Vcc(Atmel). Ladewiderstand zwischen NiCd und Vcc(Atmel). Ich habe für NiCd vage 1/30 der Kapazität als Erhaltungsladung in Erinnerung. Problem eines MOSFETs ist dessen Diode. Stören die 300-400mV Spannungsverlust denn? Die Pins können Vcc+0,5V, das sollte also kein Problem sein.
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.