ATMega 328p Stromausfallssicherung

OP #3405603
Lesenswert?

Hallo
Ich möchte eine kleine Schaltung bauen, welche die 
Durchschnittstemperatur berechnet. Dazu soll jede minute die Temperatur 
gemessen werden und wenn die Stromversorgung unterbrochen 
wird(Abschalten zur Auswertung ), sollen die Daten ins eeprom des ATMega 
328p geschrieben werden. Dazu muss noch kurzfristig Strom zur Verfügung 
stehen. Ich dachte mir,dass ich diesen Strom mithilfe von kondensatoren 
bereitstelle. So weit so gut. Aber wie erkenne ich, wann die 
Stromversorgung aussetzt?
Ich verwende den Arduino Bootloader.
#3405675
Lesenswert?

Roman B. schrieb:
> Aber wie erkenne ich, wann die Stromversorgung aussetzt?

Klassisch: Komparator an die Versorgung und an die Pufferspannung.

Fällt die Versorgung aus, mit dem dann schaltenden Ausgang des 
Komparators einen möglichst hoch priorisierten Interrupt auslösen. 
Dessen Handler hat nur noch die Aufgabe, "zu retten was zu retten ist".

Einige Spannungsüberwachungsbausteine haben das auch mit integriert.

Grüße

Stefan
#3405711
Lesenswert?

Markus schrieb:
> Warum nicht andersrum?
>
> Solange Durchschnittswert rechnen, bis zum Neustart des Controllers, bei
> ersten Zyklus des Controllets ein Register hoch und dort den neuen Wert
> ablegen.

Ungünstig. Mit diesem Verfahren müssten ja laufend die aktuellen 
Messwerte ins EEPROM geschrieben werden. Das geht nicht lange gut, da 
ein EEPROM nur eine begrenzte Anzahl Schreibzyklen hat.
Gast #3405745
Lesenswert?

...wobei ich empfehle, mal auszurechnen, wie lange es denn gut gehen 
soll. PKW werden beispielsweise meist auf ca. 3000 Betriebsstunden 
ausgelegt, bei 100.000 garantierten Schreib-Zyklen ins EEPROM könnte man 
also alle zwei Minuten ins EEPROM schreiben. Wenn es um eine USV geht, 
die zwei Jahre lang 24/7 in Betrieb ist, sieht das natürlich anders aus.

MfG, Arno

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