Hast du die BrownOutDet. aktiv?
Da war mal was mit der EEPROM Adresse 00 bei den AVRs.
Der Speicherinhalt konnte durch Spannungsschwankungen korrupt sein.
Versuchs mal mit einer anderen EEprom Adresse.
Hi,
ein seltsames Problem tritt bei meiner Steuerung der Fahrradlampe auf.
https://www.roboternetz.de/phpBB2/vi...=240259#240259
Beim Einschalten kann es passieren, dass die Stecker an meinem Akku kurz einen Wacklig haben.
Beim Start kann es also passieren, dass die Schaltung nur für ganz kurze Zeit mit Strom versorgt wird.
Das Problem was sich dadruch ergibt ist, dass der EEPROM komischerweise dabei verändert wird.
Beim Start meiner Schaltung werden Parameter aus dem EEPROM gelesen und auch geschrieben.
Beim Schreiben im EEPROM werden die Speicherzellen ja zunächst gelöscht und dann neu gesetzt. Kann es sein, dass dieser Vorgang untrbrochen werden kann!?
Was kann man dagegen machen?
Gruß Tobias
Hast du die BrownOutDet. aktiv?
Da war mal was mit der EEPROM Adresse 00 bei den AVRs.
Der Speicherinhalt konnte durch Spannungsschwankungen korrupt sein.
Versuchs mal mit einer anderen EEprom Adresse.
Gruß RePi!
*** Holzhacken ist deshalb so beliebt, weil man bei dieser Tätigkeit den Erfolg sofort sieht. ***
*** (Albert Einstein) ***
BrownOut ist nicht aktiv.
Ich werde mal die Adressen ändern - das Testen wird wohl eine Weile dauern, da das Problem nur gelegentlich auftritt.
Ich würde dann die BOD mal aktivieren.
Gruß RePi!
*** Holzhacken ist deshalb so beliebt, weil man bei dieser Tätigkeit den Erfolg sofort sieht. ***
*** (Albert Einstein) ***
Das BOD hatte ich noch gar nicht beachtet.
Im Datenblatt zum Prozessor, wird bei EEPROM-Operationen empfohlen BOD zu aktivieren.
Ich probiere es aus...
Danke.
ganz klar BOD, illegale spannungsbereiche beim einschalten macht das eeprom hin- und wieder richtig schön durcheinander und schon gibts nur noch fantasiewerte
Wie gesagt:
-- BOD aktivieren
-- EE-Adresse 0 nicht benutzen
-- nach einem RESET eine Zeit lang warten, bis das Programm losgeht (zB 10-50ms oder so). Zusammen mit einer gepufferten VCC sollte die Zeit auch bei nem Wackler reichen um den EEPROM konsistent zu halten
Disclaimer: none. Sue me.
Auf welchen Wert sollte ich BOD festlegen? Vcc ist 5V
Der Controller läuft mit 8Mhz, Untergrenze für Vcc wäre 2,7V
Also stelle ich BOD mal auf diese 2.7V ein...
Hi,
2,7V ist ok wenn der Rest deiner Schaltung damit auch noch klar kommt.
Normalerweise nimmt man die Spg., die knapp unter deiner Versorgungsspg. liegt.
Also bei 5V so 4,7V BOD oder was es da so zur Auswahl gibt.
Die 2,7V BOD nimmt man bei 3V Vcc.
Gruß RePi!
*** Holzhacken ist deshalb so beliebt, weil man bei dieser Tätigkeit den Erfolg sofort sieht. ***
*** (Albert Einstein) ***
Ich habe BOD auf 4,3V eingestellt.
Dazu warte ich 50ms beim Start bevor ich den Speicher lese.
0x00 wird nicht mehr benutzt.
Das ganze funktioniert einwandfrei. Danke nochmal
Lesezeichen