Forum: Mikrocontroller und Digitale Elektronik EEPROM auslesen AVR Studio


von Rudolf Z. (rudolf_z37)


Lesenswert?

Hallo zusammen,

ich versuche gerade den EEPROM meines ATmega32 16PU aus zu lesen.
Laut AVR Studio 5 klappt das super, ich habe auch eine .hex Datei dazu 
raus bekommen. Jedoch ist die im Hex-Editor 2Kbyte groß. Der ATmega32 
hat eigentlich 1Kbyte EEPROM.

Dann habe ich mal geschaut ob ich einen, ins EEPROM geschriebenen Wert 
auch in der .hex wiederfinden kann. dazu habe ich auf die Adresse 0x20 
einfach mal ein 'A' gesetzt und nochmal den EEPROM ausgelesen.

Jedoch finde ich das 'A' in der Hex Datei nicht. Ich bin mir sicher das 
die Daten auch wirklich in den EEPROM geschrieben wurden weil ich die 
Daten nach Reset und Spannungsverlust nicht verliere.

Meine Vermutung ist das mein AVR Studio nicht das EEPROM ausliest 
sondern den RAM. Wie stelle ich das ein, wenn meine Vermutung richtig 
ist.

Schreiben tu ich folgendermaßen:
1
void EEPWriteByte(uint16_t addr, uint8_t val)
2
{
3
  eeprom_write_byte((uint8_t *)addr, val);
4
}
5
6
//Und hier der Aufruf der Funktion:
7
EEPWriteByte(0x20, 'A');

Danke schon jetzt für eure Antworten.

von Spess53 (Gast)


Lesenswert?

Hi

>Jedoch ist die im Hex-Editor 2Kbyte groß. Der ATmega32
>hat eigentlich 1Kbyte EEPROM.

In einer Hex-Datei belegt jedes Byte 2 Zeichen (Byte). Dazu kommen 
kommen noch einige Zusatzinformationen. 1k EEPROM ergibt eine Dateigröße 
von 2,3..2,4 KByte.

>Jedoch finde ich das 'A' in der Hex Datei nicht.
Das versteckt sich als $41.

MfG Spess

von Rudolf Z. (rudolf_z37)


Lesenswert?

Na klar... jetzt sehe ich es auch... oh man verzeiht mir diese dumme 
Frage :(

Danke :)

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.