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.