EEPROM vom AVR, mach ich was falsch?

Gast #760575
Lesenswert?

Hi Leute,

ich weiß nicht, vielleicht lacht ihr gleich weil ich weng doof bin, aber 
ich hab mal ne Frage zum EEPROM von den AVRs.

Ich will einen Wert speichern... ok.

In meiner Hauptroutine wird als allererstes immer das Array Deklariert:
1
uint8_t eeFooByteArray1[3] EEMEM;

Klar ich hab alle anderen Headerfiles usw. eingebunden.
Code funzt schon.

Also ich speicher nun meinen Wert mit
1
eeprom_write_byte(&eeFooByteArray1[0], meinWert);

Rufe ich den Wert nun wieder ab, erhalte ich das Richtige und es scheint 
zu klappen.

So weit so gut.

Schalte ich nun den Strom ab, dann wieder an und möchte nun den Wert mit
1
meinWert = eeprom_read_byte(&eeFooByteArray1[0]);

zurückholen, bekomme ich alles Mögliche, aber garantiert nicht meine 
Zahl die ich vor dem Abschalten reinbuxiert habe.

Wieso klappt das nicht? Was mach ich da falsch? Findet der Controller 
die Adresse nicht mehr?

Was bringt mir n EEPROM, wenn nach dem Abschalten meine Werte im 
Speicher verschollen sind :-P ?

Gruß
Stomper

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren