• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Żywotność EEPROM
#9
Jak sobie wybierzesz miejsce, gdzie zapiszesz adres, to je będziesz zapisywał tak samo jak w pierwszym pomyśle do szybkiego zajechania tej komórki, przecież musisz zapisać adres przy każdym zapisie, co 30s.
Jak robisz jeden produkt dla siebie, nie ma to zresztą znaczenia, psujesz komórkę i zmieniasz sobie program co pół roku, choć bez CRC nie będziesz wiedział, że już zepsułeś, przecież program będzie coś odczytywał i używał takich danych.
W produkcie komercyjnym to powinno wytrzymać chociaż 20 lat.
To raczej polega na tym, że w czasie działania programu znasz adres do zapisu kolejnego zestawu liczb, a przy starcie to trzeba odczytać cały EEPROM i znaleźć ten ostatni zapis. Odczyt 1k EEPROM AVR to z 2ms, nieistotny w setup.
CRC to suma kontrolna, masz szereg liczb, przeprowadzasz na nich obliczenia i wstawiasz do kompletu kolejną liczbę, odwrotny algorytm potwierdza, że ten zestaw liczb jest poprawny.
Robisz to za każdym razem gdy odczytujesz DS18B20, też otrzymujesz zestaw liczb, możesz odczytać tylko dwie pierwsze i użyć temperatury, albo odczytać wszystkie i zweryfikować, czy dane, które chcesz użyć zostały wysłane przez czujnik, czy może zostały zebrane losowo ze względu na awarię magistrali/czujnika/zakłócenia.
Zestaw takich danych do zapisania można trzymać w strukturze, w C++ odpowiednikiem jest obiekt, ale i tak są używane struktury w Arduino. Wtedy masz tak samo jak w tablicy wszystkie zmienne ułożone ładnie koło siebie w RAM/EEPROM/FLASH, nie ważne jakiej są wielkości poszczególne zmienne - bajt, dwa czy cztery, algorytmem przejeżdżasz po bajtach licząc CRC i wiesz czy możesz użyć takiego zestawu, czy sięgnąć do poprzedniego. Nawet w przykładach do EEPROM jest CRC 32 , nie wiem czy to nie armata na AVR dla paru bajtów. Są też struktury pokazane w przykładach EEPROM.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
  


Wiadomości w tym wątku
Żywotność EEPROM - przez mateuszmilke97@gmail.com - 11-10-2022, 18:56
RE: Żywotność EEPROM - przez kaczakat - 11-10-2022, 19:07
RE: Żywotność EEPROM - przez Jarewa0606 - 11-10-2022, 20:10
RE: Żywotność EEPROM - przez kaczakat - 11-10-2022, 20:14
RE: Żywotność EEPROM - przez kaczakat - 12-10-2022, 15:29
RE: Żywotność EEPROM - przez kaczakat - 12-10-2022, 21:45

Skocz do:


Przeglądający: 1 gości