String in EEPROM schreiben und wieder auslesen

Gast #2226816
Lesenswert?

Hallo zusammen!
Vorab, ich bin ganz neu auf dem Gebiet der uC-Programmierung und habe da 
eine Frage: Ich möchte gerne ein einen String bzw. Zeichenkette in den 
EEPROM speichern. Ich hab nun mal die AVR-Tutorial angeschaut und komme 
da irgendwie nicht so ganz klar wie ich das alles initialisieren und 
übergeben muss.Ich benutzte einen ATmega 2560 und programmiere in C.
Wenn ich jetzt

char vlab[6] = "Hallo";
char glob[6] = "Welt";

in den EEPROM schrieben will und dann wieder auslesen,wie muss ich das 
vorgehen? Wäre nett wenn mir jemand weiterhelfen könnte.

Gruß
#2226820
Lesenswert?

Anfänger schrieb:
> Hallo zusammen!
> Vorab, ich bin ganz neu auf dem Gebiet der uC-Programmierung und habe da
> eine Frage: Ich möchte gerne ein einen String bzw. Zeichenkette in den
> EEPROM speichern. Ich hab nun mal die AVR-Tutorial angeschaut und komme
> da irgendwie nicht so ganz klar wie ich das alles initialisieren und
> übergeben muss.Ich benutzte einen ATmega 2560 und programmiere in C.

Dann solltest du auch das AVR-GCC-Tutorial bemühen und nicht das 
Assembler Tutorial :-)

> Wenn ich jetzt
>
> char vlab[6] = "Hallo";
> char glob[6] = "Welt";
>
> in den EEPROM schrieben will und dann wieder auslesen,wie muss ich das
> vorgehen?

indem du zb die Funktion eeprom_write_block bzw eeprom_read_block 
benutzt.
Die Länge deines Strings kennst du ja beim Schreiben. Beim Lesen 
allerdings kennst du sie nicht. Daher wird es eine gute Idee sein, 
entweder:
* die Länge ebenfalls ins EEPROM zu schreiben (Strings können ja 
traditionell unterschiedlich lang sein)
* oder aber in Analogie zu den üblichen C-Gepflogenheiten, einfach 
solange mittels eeprom_read_byte einzelne Zeichen aus dem EEPROM zu 
lesen, bis das abschliessende \0 Byte auftaucht, das natürlich beim 
Schreiben dann auch mitgeschrieben werden muss.

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