Forum: Compiler & IDEs Warum löscht WINAVR immer wieder die EESAVE-Fuse


von Otto Richter (Gast)


Lesenswert?

Hallo da draußen,

ich beschreibe vom Programm aus das EEPROM (in einem ATMega128), das
funktioniert auch, aber nach dem nächsten Compiler-Lauf sind die Daten
wieder glöscht.

Ich setze die EESAVE-Fuse, aber nach dem nächsten Compiler-Lauf ist sie
wieder gelöscht.

Ich arbeite mit AVRStudio4 und integriertem gcc.

Hat das was mit dem makefile zu tun? Benutzt der Compiler das makefile
überhaupt noch? Wo kann ich einstellen, dass ich ein *.eep file erzeugt
haben will?

Vielen Dank für Euere Mühe

Otto

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

,,WinAVR'' kann gar nichts löschen, da es kein eigenständiges
Programm ist.

Ich kenne mich mit AVR Studio überhaupt nicht aus, habe aber die
Vermutung, dass es just dieses Teil ist, das die Fuses bügelt.
Die üblichen Makefiles fassen die Fuses jedenfalls nicht an.

von Wolfgang Horn (Gast)


Lesenswert?

Hallo Otto, Du da drinnen, :-)

schließt "nach dem nächsten Compiler-Lauf" vielleicht auch die
Programmierung des AVR mit ein?

Wenn Du JTAG-ICE anwendest, da gibt's bei Studio unter
"Debug->JTAG_Options oder so einen Schalter "preserve EEPROM" oder
so, ich hab's gerade nicht laufen.
Wenn der nicht gesetzt ist, räumt Studio bei jedem neuen Programmieren
den gesamten Chip auf einschließlich EEPROM.

Ciao
Wolfgang

von Slowflyer (Gast)


Lesenswert?

Vielleicht ist es auch etas anderes. Nachdem du die Fuse gesetzt hast
musst du auch im gleichen Reiter unten "program" anklicken. Wenn du
vorher in einen anderen Reiter wechselt, so werden die Fuses nicht
programmiert.

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.