Forum: Mikrocontroller und Digitale Elektronik Problem mit EEPROM write Funktion


von H. G. (ledi)


Lesenswert?

Hallo,

ich möchte ein paar Daten in das EEPROM des Tiny44 speichern. Dafür 
verwende ich die write-Funktion wie im Beispiel. Die .eep Datei wird 
zwar nach dem Kompilieren aktualisiert, aber es sind keine Daten 
geschrieben worden!

Wo mache ich hier einen Fehler?
1
#include <avr/io.h>
2
#include <avr/eeprom.h>
3
4
int main(void)
5
{
6
    eeprom_write_byte((uint8_t*)1, 5); // schreibe den Wert 5 an die Speicherstelle 1
7
  
8
    while(1)
9
    {
10
        
11
    }
12
}

von Karl H. (kbuchegg)


Lesenswert?

H. G. schrieb:
> Hallo,
>
> ich möchte ein paar Daten in das EEPROM des Tiny44 speichern. Dafür
> verwende ich die write-Funktion wie im Beispiel. Die .eep Datei wird
> zwar nach dem Kompilieren aktualisiert, aber es sind keine Daten
> geschrieben worden!

?
Woher weißt du das?
Wenn das Programm läuft, dann beschreibt es das EEPROM

von Uwe (Gast)


Lesenswert?

> Die .eep Datei wird zwar nach dem Kompilieren aktualisiert, aber es sind
> keine Daten geschrieben worden!
Du programmierst deinen µC mit einem flash file, dort steht das Programm 
drin, dies fürt der µC dann aus, in diesem Programm steht, daß er in 
sein EEPROM eine 5 an Speicherstelle 1 schreiben soll. Warum denkst du 
das der µC in eine .eep Datei auf deiner Festplatte schreibt ???

Du könntest das EEPROM auslesen (mit deinem Programmiergerät) und in 
.eep Datei reinschreiben, wenn du dort reinguckst müßtest du sehen 
können was im EEPROM des µCs drinn steht.

von H. G. (ledi)


Lesenswert?

Ah, ja - natürlich!
Unter AVR Studio 4 gibt es da im Debug-Menü ein Up/Download Memory, wo 
ich den Inhalt vom EEPROM in eine Datei speichern kann. Gibt es so etwas 
auch unter Atmel Studio 6?

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.