Witam, problem z uszkodzeniem danych w pamięci eeprom istnieje i nie występuje tylko przy zapisie jak mogło by się wydawać. Dane w pamięci eeprom mogą zostać uszkodzone nawet podczas ODCZYTU! Sytuacja taka ma miejsce gdy podczas odczytu napięcie zasilania spadnie poniżej minimalnego progu działania właśnie tej pamięci. Rozwiązanie tego problemu jest niebywale proste, wystarczy włączyć moduł Brown-Out Detect z progiem min 2.7V i po problemie. Wrażenie uszkadzania początkowych komórek pamięci eeprom bierze się stąd, że procesor po załączaniu napięcia startuje już przy napięciu 1.8V, ładuje konfigurację z eeprom do ram przy napięciu VCC mniejszym od 2.7V, co skutkuje uszkodzeniem pierwszej, lub kilku pierwszych komórek pamięci. Efekt ten jest widoczny dla wolno narastającego napięcia zasilania połączonego z umieszczonym na początku kodu odczytem pamięci eeprom. Mam nadzieję że trochę rozjaśniłem problematykę ;)
Re: Jak to jest z bezpiecze?stwem danych w EEPROM w
Mar 25, 2010
Last reply: 16 years ago
2 Replies
Dziękuję za odpowiedź. Już jakiś czas temu przeprowadziłem pewne próby. Otóż napisałem jakiś program, który zapisuje/odczytuje dane z EEPROM przy starcie. Potem łączałem/wyłączałem zasilanie. Od czasu do czasu występowały przekłamania. Ustawienie fusebitu BODEN spowodowało, że problem ten przestał występować.
Robbo
Użytkownik "Robbo" snipped-for-privacy@yle.com napisał w wiadomości news:hogmbd$cbt$ snipped-for-privacy@atlantis.news.neostrada.pl...
Nie ja siedzę u nas w mikrokontrolerach, ale z tego co wiem to bywało różnie w historii ATmega. Nawet ostatnio słyszałem, że jakiś nowy, który gdzieś wsadzamy (nie wiem jaki) ma coś pomieszane z EEPROMem. Z tego co wiem errata podaje jakiś sposób, ale próby pokazują, że ten sposób jedynie _prawie_ zawsze działa dobrze. Brown out stosujemy od czasu, gdy go wprowadzili, wcześniej musieliśmy dawać zewnętrzny. P.G.
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required