www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik wie lange hält der interne eeprom?


Autor: marcel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,
wie ist die lebensdauer von dem internen eeprom eine AVRs ?
damit meine ich die tatsächlich lebensdauer und was dann passiert, wenn
der hinüber ist.

atmel sagt:
 Endurance: 100,000 Write/Erase Cycles

also 100000 schreib und lesezyklen.

nehmen wir mal an, ich hab ein avr, der alle 10 min eine int wert in
den eeprom speichert, zb als sicherheitsrestvariablen für einen
neustart.
das teil läuft nun 24 stunden am tag und 365 tage im jahr.
das wäre also 6*24*365*2= 105120 zyklen in 2 jahren.

in schon nur 2 jahren wären also die 100000 übervoll.
was passiert dann ?
läuft dann der ganze controller nicht mehr ?
oder kann der dann nur nicht mehr speichern und lesen ?

wenn ich nun das programm so auslege, dass das programm normal läuft,
fals der wert nicht in gewissen grenzen ist,
würde es dann weiterlaufen ?

grüsse

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ohne Deine Frage beantworten zu können, hätte ich einen Vorschlag: Wie
wäre es, wenn Du immer mal wieder an eine andere EEprom-Zelle/Adresse
schreiben würdest? Dann müßte sich doch die Zeit vervielfachen lassen.
Nur benötigt diese Vorgehensweise eine Verwaltung, so daß nach dem
Neustart klar ist, aus welcher Adresse gelesen werden soll. Das würde
also eine EEprom-Zelle mehr benötigen. Vielleicht kommst Du so auf > 10
Jahre.

Gruß

Autor: Walter Braun (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der EEPROM liefert einfach falsche Daten. Für kontinuierliche
Schreibzugriffe sollte man ein externes IIC EEPROM spendieren und
dieses sockeln. So ist es in den meisten TV Geräten auch gemacht.

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wissenschaftliche Lösung:
Die EE-Variablen statistisch überprüfen, wie oft sie geändert werden.
Nur bei geänderten Werten das EEPROM updaten. Je nach App kann das die
EE-Standzeit vervielfachen.

Ingenieur-Lösung:
Die EE-Variablen x-fach spiegeln. Alle 100.000-mal oder alternativ
immer dann, wenn sich EEprom-Schreibfehler ergeben, auf die nächste
Spiegelseite umschalten.

Vertriebs-Lösung:
Wo ist das Problem, nach 2 Jahren ist die Garantie abgelaufen ??!

Stefan

Autor: Malte Marwedel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>also 100000 schreib und lesezyklen.
Schreib und Löschzyklen. Lesen darft du so häufig wie du willst.

Autor: ulrich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also die angegebenen 100000 sind die garantierten schreibzugriffe unter
ungünstigen bedingungen. meistens funktioniert es in der regel 10x so
oft ich habe ein Atmel schon über 1000 mal mit einen speziellen
programm gebrannt und habe beim 1 mil. mal das programm abgebrochen.
ein externes EEprom ist auch nicht sinvoller da diese auch nicht mehr
schreibzugriffe zulassen. aber da würde ich mir keine sorgen drum
machen.du kannst auch mal ein programm schreiben was nur einen wert in
das eeprom schreibt ausließt und vergleicht dann kommst du auf über
1000 schreibvorgänge in die min. und das macht das EEprom ohne Probleme
auch noch nach 10 tagen :-).

Mfg ulrich radig

Autor: Marco Haufe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi
soein Problem hatte ich auch schon mal.
Wenn Du nur immer wenige Bytes schreiben willst, lege sia dann doch
immer in eine andere Zelle. Du must Dir dann nur was einfallen lassen,
das eine Suchroutine, die nach dem Einschalten läuft, die zuletzt
beschriebene Zelle findet...
VG MArco

Autor: Mario (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Auch mich hat es mal interessiert, wie lange so ein EEPROM hält.
Dazu habe ich zwei Speicherzellen (2 x unsigned long) ständig neu
beschrieben und ausgelesen. Es wurde im Prinzip einfach hochgezählt.
Wie oft die Schleife durchgelaufen wurde, habe ich auch gezählt.
Zusätzlich hielt das Programm an, wenn eine Speicherzelle einen
fehlerhaften Wert lieferte.

Das Ergebnis:
Ich ließ das Ding die ganze Nach laufen.
5,5 Millionen mal funktionierte es. Dann hielt das Programm an. Ein
fehlerhafter Wert wurde gelesen.
Danach ließ ich das Programm wieder auf dieselben zwei Speicherzellen
los. Es funktionierte an die 100 000 mal, dann gab es wieder einen
Fehler.

Also ich habe wegen der Halbarkeit des EEPROMS keine Bedenken mehr.

Tschüss

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die 100.000 Schreibzyklen werden bei Worstcase-Bedingungen (hohe
Temperatur) gemessen und sind eine statistische Aussage. Die 5,5Mio von
Mario sind unter "Normalbedingungen" durchaus realistisch.

Stefan

Autor: marcel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,
danke schon mal für die antworten.
ich hab das programm jetzt geändert, das ca 100mal weniger das eeprom
ansprochen wird.
somit wäre ich schon mal aus dem schneider.
grüsse

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.