Also so richtig kapier ich nicht was Du da machst.
Das EEAR ist üblicherweise das EEPROM Adress Register.
Dort wird üblicherweise die Adresse dezu lesenden / schreibenden EEPROM Speicherplatzes abgelegt.
Glücklicherweise musst Du Dich bei C darum nicht kümmern.
Du musst eine VAriable definieren und dafür sorgen, das diese im EEPROM angelegt wird.
Das sollte so funktionieren:
uint8_t ee_wert EEMEM = 110;
Dabei wird hier auch gleich der Startwert definiert, in diesem Fall 110.
Diesen Wert wird bei der Programmierung des Chips mit übertragen, wenn Du auch das EEPROM gleich mit programmierst.
Dieser Wert ist in deinem Programm beliebig überschreibbar.
Bedenke aber, das ein EEPROM Speicherplatz nur 10000 bis 100000 mal ( Chipabhängig ) überschrieben werden kann.
Ein Überschreiben pro Einschalten dürfte passen.
Ein Überschreiben des Werte bei jedem Programmdurchlauf wird den Speicherplatz in kurzer Zeit killen.
Lesen kann man beliebig oft.
Guck Dir die Speicherverwaltung mal auf einer der zahlreichen Tutorials von AVR GCC an.
Da wird alles gut erklärt.
Lesezeichen