I have a problem when using gcc-avr to write internal eeprom. I used
library calls eeprom_write_word, eeprom_write_byte, eeprom_write_block
to write the content. However, I found that when I reset the device by
powering off and on again, the eeprom reading is refill to be all 0xff.
Have I missed some procedures such as saving the content?

Today I browsed my old code projects and found that I have a project
using atmega16 DIP which operates normally to retrieve data from
eeprom. So I suspect that it is atmega16 TQFP version that has this
problem! I have checked 3 devices that the saving is vanished during
power reset!

So, after about 18 articles posted at 10 minute intervals without
quotes and one or two answers in spite of that, you think this is
adequate closure? You don't think that people who read your
articles and at least gave it some thought deserve to know the
answer? May your next problem receive equal attention.

--
"If you want to post a followup via groups.google.com, don't use
the broken "Reply" link at the bottom of the article. Click on

Sorry, actually the answer involves my very careless mistake to save
the setting. I miss to check it as other settings are saved but missed
that. So I have not real it as it does not have learning value. Sorry!

OK. I missed to used it as I changed to google group beta not long
enough and initially cannot find the thread tree at the left hand side.
Now I can pop the tree again and so I will reply at the right position
in the future.

And I found a very strange thing. I read the eeprom at the beginning of
the program. I used the debugger to stop the execution before the
execution of reading eeprom. Then I step over the reading procedure and
found the data is 0xff. I think this remove the suspection of unstable
voltage at startup as the eeprom reading procedure is now stop and then
go.