mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik XMEGA64 Probleme mit EEPROM (Resets)


Autor: Xmega Newbie (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
seit neustem beschäfte ich mich mit dem atXmega64A3. Beim Schreiben ins 
EEPROM bekomme ich Probleme. Die Software sollte das EEPROM auslesen und 
danach Werte ins EEPROM schreiben. Anschließend wieder vom EEPROM 
auslesen. Wie im Textfile, welches ein Log der Seriellen Schnittstelle 
darstellt zu sehen ist, führt der µC mehrere Resets durch und speichert 
zudem den Wert nicht richtig. (Es sollte einmal lesen der Zahl 1 (70), 
Zahl 2 (80) und Zahl 3 (90) kommen und nach Prog auf EEPROM nochmals 
dieser Dreizeiler. Aber man sieht, er fängt mehrmals von vorne an und 
liefert die falsche Zahl.

Vielleicht kann mir jemand von euch weiterhelfen?

Zusätzlich zu meinem File hab ich noch die *.c und *.h-Files von der 
Atmel Homepage (AVR1315 Accessing the XMEGA EEPROM) verwendet. Diese hab 
ich auch noch angehängt (eeprom_driver.c, eeprom_driver.h und 
avr_compiler.h)

Danke im Voraus
Xmega Newbie

Autor: XMEGA (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Servus

Xmega Newbie schrieb:
> Vielleicht kann mir jemand von euch weiterhelfen?


#define Y_STORE 0x00
#define Y_PAGE  0x01


EEPROM_WriteByte(X_PAGE, Y_STORE, test); // lesen
test = EEPROM_ReadByte(X_PAGE, Y_STORE); // schreiben

und nicht vergessen die Atmel Treiber eeprom_driver.h - .c einzubinden!

Gruß XMEGA

Autor: XMEGA (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Servus nochmal,

XMEGA schrieb:
> // lesen

Entschuldige, ich habe die Bemerkung: // lesen // schreiben vertauscht!
Kein Beinbruch- man kann es ja an Hand der Befehle erkennen.

Gruß XMEGA

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt ein Erratum für den XMega bei bestimmten Revisionen, was das 
EEPROM betrifft. Einfach mal in´s Datenblatt schauen. Unter bestimmten 
Bedingungen werden 1-2 Befehle im Flash falsch ausgeführt, wenn das 
EEPROM beschrieben wird. Das kann einen Reset auslösen.

Autor: Xmega Newbie (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für eure Hilfe,
das Problem war der Zugriff aufs EEPROM. Mit einer kleinen Pause 
funktioniert es jetzt. Ich kannte das Errata nicht.

Gruß
Xmega Newbie

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.