-         

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 22

Thema: ATMega328P EEPROM hat geänderte Werte ohne das geschrieben wurde

  1. #1
    Erfahrener Benutzer Roboter-Spezialist Avatar von sast
    Registriert seit
    30.11.2004
    Alter
    47
    Beiträge
    497

    ATMega328P EEPROM hat geänderte Werte ohne das geschrieben wurde

    Anzeige

    Ich hatte jetzt schon mehrfach mit verschiedenen Controllern der Baureihe ATMega328P Probleme mit dem EEPROM.

    Der Controller greift auf Werte im EEPROM zurück, um sich z.B. seine ID zu holen, oder Grenzwerte auszulesen.
    Nun kommt es vor, dass diese Speicherstellen irgendwann sporadisch andere Werte enthalten.

    Hatte das Problem schon einmal jemand anderes, oder ist das ein generelles Problem bei dem Controller?
    Eigenartigerweise werden nur punktuell Bytes verändert.

    Vielen Dank schon einmal für Eure Hilfe

    sast

    雅思特史特芬
    开发及研究

  2. #2
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.969
    Hallo!

    Ich denke, dass es ein generelles Problem von EEPROM in µC ist. Ich habe deshalb immer wichtige Werte erfolgreich im Programspeicher ("flash") abgelegt der laut Datenblätter von µCs robuster ist.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  3. #3
    Erfahrener Benutzer Roboter-Spezialist Avatar von sast
    Registriert seit
    30.11.2004
    Alter
    47
    Beiträge
    497
    Da macht sich aber eine Änderung schlecht, wenn man nicht jedesmal neu programmieren will. Ich ändere Werte per UART und möchte die dann dauerhaft speichern.

    雅思特史特芬
    开发及研究

  4. #4
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.969
    Wenn das nicht viel Werte sind, könnte man neue laufend verschiebbare Speicherstellen in EEPROM beschreiben, was EEPROM virtuell vergrössert, falls die in Datenblatt (DB) garantierte Anzahl von Schreibzycklen zu schnell überschreitet wäre.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  5. #5
    Erfahrener Benutzer Roboter-Spezialist Avatar von sast
    Registriert seit
    30.11.2004
    Alter
    47
    Beiträge
    497
    Erst einmal danke PICture das du dir die Zeit nimmst, dich mit dem Problem zu beschäftigen.

    Das Problem ist nicht die Anzahl, sondern die Werte sind einfach irgendwann verändert. Vielleicht ist es ein EMV Problem, aber es betrifft auch nicht alle Controller am selben Gerät.

    Ich hatte das Verhalten jetzt zweimal kurz hinter einander. Zuerst in einer Eincontrollerlösung, da dachte ich noch an einen Einzellfall und jetzt aktuell spinnt einer von 3 Controllern am Gerät. Hier tritt allerdings auch statische Aufladung auf, welche durch die Verarbeitung von PP und PE Folie entsteht. Der erste Fall war einfach nur in einer Funksteuerbox eingesetzt. In beiden Fällen habe ich noch je zwei gleichwertige Geräte und bei denen tritt zur Zeit (klopfe dreimal auf Holz) noch kein EEPROM Problem auf.

    雅思特史特芬
    开发及研究

  6. #6
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.969
    Dann müsste die Ursache der Veränderungen gefunden werden um sie beseitigen zu können. Ich würde gegen statische Aufladung die µCs mit an GND angeschlossener Alufolie umwickeln um sie davor zu schützen versuchen, usw.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  7. #7
    Erfahrener Benutzer Roboter-Spezialist Avatar von sast
    Registriert seit
    30.11.2004
    Alter
    47
    Beiträge
    497
    Die Controller befinden sich bereits separat in Alugehäusen. Allerdings ist eine Ableitung nicht möglich, da sich das Gerät auf einem Plastikrohr bewegt.

    雅思特史特芬
    开发及研究

  8. #8
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.969
    Vielleicht könnte man auf dem Rohr geerdete Metallrige (z.B. aus Draht) plazieren, weil es nicht permanenter Kontakt nötig ist, sondern nur die schon vorhandene Ladung ab und zu ableiten.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.03.2011
    Beiträge
    1.398
    Das Flash soll laut Datenblatt für zehntausend Zyklen und das EEPROM für hunderttausend gut sein. Und die Daten sollen sogar bei 85° noch 20 Jahre halten, bei 25° sogar 100. Das da ein generelles Problem vorliegt und das dann nicht in einem Erata dokumentiert ist, kann ich nicht glauben. Eine typische Amerkanische Schadensersatzklage z.B. von einem großen Autohersteller hätte Atmel sonst schon längst in den Ausguß gespült.

    ESD direkt wird es auch nicht sein, da kippt das RAM schneller und der Rechner stürzt ab. Um ein EEPROM Byte zu ändern braucht man schon etwas Energie, deswegen dauerts ja auch länger als das Schreiben ins RAM. Aber ein Absturz könnte es schon sein, ein Interrupt zum falschen Zeitpunkt, der Watchdog oder ähnliches. Und wenn man bei mehreren Controlern gleiche Codeteile verwendet, erklärt das auch das gehäufte Auftreten.

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

  10. #10
    Erfahrener Benutzer Roboter-Spezialist Avatar von sast
    Registriert seit
    30.11.2004
    Alter
    47
    Beiträge
    497
    Hi Klebwax, das mit dem Interrupt versteh ich noch nicht so ganz. Meinst du, dass während des Schreibens auf den EEPROM eine Unterbrechung stattfindet? Das Brennen selbst kann dann wohl auch durch den Interrupt gestört werden?

    Geschrieben wird grundsätzlich nur wenn das Gerät steht. Da könnte ich theoretisch auch die Interrupts deaktivieren, solange die write Routine auf das EEPROM schreibt.
    Im Normalfall lese ich beim Start des Controllers nur den EEPROM aus und danach wird da nichts mehr dran gemacht. Schreiben geschieht nur, wenn etwas drin steht, was ich nicht erwarte, oder wenn ich etwas ändere über die Schnittstelle.
    Das macht aber beim Einsatz des Gerätes niemand. Und schon gar nicht wird die ID verändert ohne Zugriff über UART. Das bereitet mir Kopfzerbrechen.

    PICture das Gerät fährt auf jedem Rohr nur einmal. Da macht es keinen Sinn etwas aufs Rohr zu machen.

    雅思特史特芬
    开发及研究

Seite 1 von 3 123 LetzteLetzte

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 30.06.2011, 19:58
  2. Hat einer von euch nen Würfelprgramm geschrieben?
    Von carlitoco im Forum Robby RP6
    Antworten: 20
    Letzter Beitrag: 18.08.2009, 19:17
  3. Hat jemand ein Can-Bus Applikation mit Bascom geschrieben ?
    Von Stromi im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 6
    Letzter Beitrag: 18.09.2005, 20:06
  4. Wer hat schon ein Programm für Robby geschrieben?
    Von JanPeter im Forum Robby CCRP5
    Antworten: 5
    Letzter Beitrag: 23.12.2003, 22:23
  5. Wer hat schon ein Programm für Robby geschrieben?
    Von JanPeter im Forum Robby CCRP5
    Antworten: 2
    Letzter Beitrag: 15.12.2003, 21:37

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •