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


von Xmega Newbie (Gast)



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

von XMEGA (Gast)


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

von XMEGA (Gast)


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

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


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.

von Xmega Newbie (Gast)


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

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.