ATMEGA8 EPROM Datenverlust

OP #2845437
Lesenswert?
• ▲
▼
Ich habe ein Atmega8 auf einem eigenen Board und dieser vergisst ab und 
zu die Werte die im Eprom gespeichert sind. Also komplett weg sind sie 
nicht nur falsch oder total falsch. Es tritt gerade nach Ein- und 
Ausschalten auf. Die Software ist komplett die aus dem Tutorial und 
hatte immer wunderbar funktioniert. Was ist da faul?
OP #2845467
Lesenswert?
• ▲
▼
Danke! Ich habe jetzt etliche Threads gelesen und bin dem Burn out 
Syndrom schon etwas näher gekommen. So wie ich es jetzt verstanden habe, 
ist das doch aber ein Schutz vor wirrem Zeug wenn der Controller etwas 
in das EPROM schreiben will und die Schaltung ausgeschaltet wird. Das 
mache ich ja gar nicht, sondern der Controller steht und wartet auf 
gutes Wetter, wird ausgeschaltet und beim Einschalten sind die Werte 
komisch. Oder habe ich da war nicht ganz richtig verstanden?
#2845502
Lesenswert?
• ▲
▼
Tino Kühn schrieb:
> Oder habe ich da war nicht ganz richtig verstanden?

Vermutlich...

Tino Kühn schrieb:
> So wie ich es jetzt verstanden habe,
> ist das doch aber ein Schutz vor wirrem Zeug wenn der Controller etwas
> in das EPROM schreiben will und die Schaltung ausgeschaltet wird.

Nööö, Du musst nicht während des Schreibens abschalten, es reicht, wenn 
die Versorgungsspannung beim Nichtstun zu langsam abfällt (oder 
ansteigt). Kommt sie unter einen kritischen Wert, kann der AVR Blödsinn 
machen, z.B. EEP-Bits kippen lassen. Ich ging bisher davon aus, dass 
dies nur an der zuletzt eingestellten EEP-Adresse (eearh:eearl) passiert 
und setzte die Adresse nach jedem Zugriff auf eine unbenutzte Zelle. Ich 
musste mich aber belehren lassen, dass auch die EEP-Adresse bei 
Unterspannung Amok laufen kann.

Der einzige wirksame Schutz ist, den AVR bei Unterspannung in den Reset 
zu zwingen, was früher mit externen Reset-ICs gemacht wurde und heute 
mittels BOD erreicht wird.

Tino Kühn schrieb:
> der Controller steht und wartet auf
> gutes Wetter

Steht er wirklich? (Sleep) Oder klappert er in einer Schleife?

Tino Kühn schrieb:
> Wäre die Aktion einfach den SUT_CKSEL von "6 CK 65 ms" auf 6 CK 0 ms" zu
> ändern?

Keinesfalls, denn die 65 ms verlängertes Reset sind ein guter Schutz 
gegen "dreckige" Versorgungsspannung beim Einschalten.

Kann es sein, dass Du hinter dem Spannungsregler einen größeren Elko 
hast? Das wäre auch eine mögliche Ursache für zu langsames Ansteigen und 
Abfallen der Versorgungsspannung.

...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.