Zitat Zitat von Bumbum
... Der Beispielcode im Datenblatt des 162 ist falsch ...
Die Beispiele in den Datenblätter hatte ich oft angezweifelt, das hatte sich bisher (bei mir, den m162 kenn ich nicht) nie bewahrheitet.

Dein ursprünglicher Code heißt nach Deinen Angaben:
Code:
EECR = (1<<EEMWE); 
EECR |= (1<<EEWE);
im Datenblatt 2513J–AVR–08/07 steht
Code:
EECR |= (1<<EEMWE); /* start EEPROM write */
EECR |= (1<<EEWE);
? ? ? ?