www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Standby-Power für ATMega im RTC-Betrieb


Autor: Dieter R. (drei)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Aufgabe scheint trivial. Trotzdem habe ich nach stundenlangem Suchen 
keine gescheite Lösung dafür gefunden, auch keine Applikation bei Atmel. 
deshalb frage ich hier mal nach guten Ideen.

1. Ich möchte einen ATmega mit 32-kHz-Quarz mit Echtzeituhr-Funktion 
durchlaufen lassen. Die angeschlossene Peripherie, Treibertransistoren 
usw.  zieht insgesamt um 100 mA, alles wird aus einem 7805 o. ä. 
versorgt.

2. Jetzt fällt die Netz-Stromversorgung aus. Das kann ich irgendwie 
feststellen, das ist hier nicht das Problem. Ich schalte die Peripherie 
ab, legen den ATmega schlafen, so dass er nur noch ein paar uA 
verbraucht (hoffentlich) und nur noch gelegentlich per Timer-Interrupt 
die Uhrzeit inkrementiert.

3. Wie mache ich dafür eine einfache, kostengünstige und betriebssichere 
Stromversorgung? Längstransistor in den VCC-Pfad, mit Akku-Pufferung, 
den Transistor "irgendwie" geschaltet? Gibt es dafür ein passendes IC, 
das alles zusammen erledigt? Eine Atmel-Applikation, die ich übersehen 
habe?

4. Nebenfrage: wie löse ich (auch möglichst einfach) beim Wegbleiben der 
Stromversorgung EINEN Reset aus?

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum nimmste keinen echten RTC dazu? Zur RTC-Stromversorgung im 
abgeschalteten Zustand reicht ein Speicher-C oder eine kleine 
Lithiumbatterie, der µC und das ganze System bleibt dann ganz aus.

Autor: Dieter R. (drei)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weil das ein Chip extra wäre. Kostet Platz+Geld. Beides will ich sparen.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der klassische Lösung besteht in der Entkopplung von Haupt- und 
Backupstromversorgung des Controller vom Rest durch simple 
Schottky-Diode(n). Je nach verlangter Ausfallzeit ist dafür ein 
5,5V-Goldcap am einfachsten (Serienwiderstand nicht vergessen, als 
Strombegrenzung beim Einschalten).

Autor: Dieter R. (drei)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke. Ich hab' wohl zu kompliziert gedacht. Und jetzt noch bitte eine 
einfache Idee für die Reset-Problematik.

Autor: Smokingslim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da hast du deine Appnote von Atmel sehr gut erklärt wie ich finde

http://atmel.com/dyn/resources/prod_documents/doc1259.pdf

Autor: interessent (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Prinzip muss nur vor der Schottky-Diode, die HL-Flanke detektiert 
werden. Dann kann der µC beispielsweise einen Output der extern an Res 
angeschlossen ist, low ziehen. Oder einen Watchdogreset auslösen, wenn 
kein echter Hardwarereset erforderlich ist.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mir ist die Frage nach dem Reset nicht klar. Wenn der Controller 
weiterhin schlafend funktionsfähig bleiben soll, wer soll dann den Reset 
kriegen, er selber ja wohl nicht? Den Zustand der Hauptstromversorgung 
kann der Controller per ADC oder besser noch Comparator (wg. Interrupt) 
ganz gut selber feststellen. Und wenn der Strom so lang weg ist, dass 
auch der Backupstrom ausbleibt - dafür gibt's den Brownout-Detector und 
das entsprechende Statusbit beim Wiederaufwachen.

Autor: Dieter R. (drei)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas Kaiser (1)
Jetzt hab' ich doch noch eine ganz praktische Frage: 3 x 0,1u an die 
VCC-Pins beim ATmega16, zusätzlich noch 1u Tantal oder 10u Tantal oder 
garnichts? Gibt es dafür Richtwerte? Genau für solche Fragen fehlt mir 
eine ordentliche Applikationsschrift.

@Smokingslim
Kannte ich, daher hatte ich ja die Idee. Leider steht dort überhaupt 
nichts über Stromversorgung. "Implementation" behandelt nur die 
Software.

@Andreas Kaiser (2)
Die Frage nach dem Reset ist folgende: mir ist generell nicht wohl bei 
einer Schaltung, die bei wechselnder Güte der Spannungsversorgung 
"unendlich" lange durchläuft. Daher fände ich es sinnvoll, wenn z. B. 
beim Ausbleiben oder bei Wiederkehr der Netzspannung ein Reset-IMPULS 
ausgelöst wird. Auf diese Weise könnte man auch (ohne Reset-Taster) 
einen zwangsweisen Reset auslösen, indem man kurz die Netzversorgung 
unterbricht. Ausdenken kann ich mir zu diesem Thema vieles. Ich will 
aber nicht basteln, sondern was betriebssicheres.  Die Frage ist wieder, 
ob es eine erprobte Standardlösung dafür gibt?

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Jetzt hab' ich doch noch eine ganz praktische Frage: 3 x 0,1u an die
> VCC-Pins beim ATmega16, zusätzlich noch 1u Tantal oder 10u Tantal oder
> garnichts?

Genau so. Nur statt des Tantals einen normalen 10-22µF Elko verwenden, 
Tantal sollte man vorsichtshalber nur dort verwenden, wo keine grösseren 
Ströme fliessen können.

> Die Frage nach dem Reset ist folgende: mir ist generell nicht wohl bei
> einer Schaltung, die bei wechselnder Güte der Spannungsversorgung
> "unendlich" lange durchläuft.

Ist bei Controllern aber ziemlich normal. Die Stromversorgung kannst du 
ihn ja selber überwachen lassen.

Standardlösung ist Watchdog. Wenn's klemmt wird der Controller 
automatisch neu gestartet.

Und wenn dein Programm für Dauerlauf nicht stabil genug ist und du 
vorsichtshalber täglich neu starten willst: Watchdoc auf kürzeste Zeit 
einstellen und "vergessen" zurückzusetzen. Gibt einen wunderschönen 
Reset. Nur deine Uhr kommt dabei natürlich kurz ausser Tritt, also 
überleg's dir ob die normale Funktion vom Watchdog nicht ausreicht.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PS: Hast du schon mal im Datasheet vom Controller unter 
Brownout-Detector nachgelesen. Lohnt sich.

Autor: Dieter R. (drei)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke erstmal. Normaler Elko ist auch billiger.

Wird etwas länger dauern, bis alles fertig ist.

Falls DOCH noch jemand eine erprobte Lösung für die Reset-Frage kennt, 
wäre ich für Anregungen/Kommentare weiterhin dankbar.

Nachtrag @Andreas Kaiser
Ich bin anscheinend mal wieder zu blöd. In meinem 354-seitigen 
Datenblatt finde ich überhaupt nichts über Brownout-Detektor, außer 
einer nichtssagenden Grafik über die Ansprechspannung. Hast du auf die 
Schnelle einen Link dazu?

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Seite 40. Schreibt sich dort "Brown-out", falls du es mit der Suche 
versucht hattest.

Autor: Dieter R. (drei)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh Gott! Ich sollte wohl erstmal das ganze Datenblatt auswendig lernen 
(dann lerne ich auch alle Schreibweisen, wie In-put und Stand-by), bevor 
ich weiter dumme Fragen stelle. Dankeschön.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.