Witam,
Od zdaje się 5-6 lat dostarczam producentowi maszyn sterownik oparty na Atmel AVR ATmega32. Czasem też robiłem coś na ATmega8. Dawno to już było, gdy tworzyłem oprogramowanie. Jednak pamiętam, ze działy sie wtedy dziwne rzeczy z danymi zapisanymi w pamięci EEPROM. Gdzieś wyczytałem, że pierwsza komórka EEPROM w ATmega8 czasem zmieniała swoją wartość. Mogło być coś w tym, bo pamiętam, że jedno z urządzeń, które miało jakiś bajt konfiguracyjny pod zerowym adresem EEPROM w ATmega8 potrafiło podawać inną wartość tej komórki, niż początkowo zapisana. Z kolei w ATmega32 wykorzystywałem kilkadziesiąt komórek pamięci. Pamiętam, że urządzenie też potrafiło zmienić parametry. Z tego względu zrobiłem tak, że każda wartość była zapisywana nawet w 10 miejscach pamięci. Następnie odczytywałem je wszystkie, a jako wartość właściwą brałem tę, która występowała więcej niż w połowie komórek; komórki o błędnych wartościach nadpisywałem tą właściwą. Teraz mam potrzebę skorzystać z większej ilości pamięci EEPROM i przydałoby się zrezygnować z kopii parametrów. Jak obecnie wygląda sprawa z pamięcią EEPROM w ATmega? Czy można na niej polegać?
Z góry dziękuję za pomoc.
Robbo