01-03-2018, 18:58
Przechowuj informację kiedy ostatnio było wykonane działanie w eeprom procka. Są przykłady w arudino jak zapisać/odczytać. W setup odczyt, po zmianie dnia zapis - ważne by to było tylko RAZ. Drugi lepszy sposób jeśli zegar ma jakiś ram do dyspozycji dla użytkownika, a sam ma zasilanie baterią. http://forum.arduino.cc/index.php?topic=152248.0 przykład zapisu dla DS1307. Ważne by zapis do EEPROM wykonywać z rozwagą, wystarczy wgrać jeden niefortunny szkic by zużyć eeprom - zapis w każdej pętli, która jest wykonywana 16mln razy/s po paru minutach (zapis trochę trwa, więc to nie będzie 16mln), a producent gwarantuje 100 tys. cykli kasowania/zapisu. Przy racjonalnym użytkowaniu, np. 1 raz dziennie wystarczy jego życia na 300lat. Zapis co godzinę też jest OK - starczy na >12lat. Przy zachowywaniu informacji, w którym dniu było wykonane zadanie w RAM podtrzymywanym baterią można po nim jechać na okrągło. I jeszcze uwaga, Eeprom zużywa sie przy kasowaniu, także są funkcje update - dłużej trwa, ale sprawdza czy nie próbujesz zapisać takiej samej wartości jaka już jest w EEPROM w danej komórce.
Miło być decenianym https://buycoffee.to/kaczakat