Skocz do zawartości

Zapis i odczyt danych z pamięci zegara DS1307


Pomocna odpowiedź

Napisano

Witam,

mam pewny problem a mianowicie chciałbym napisać program który ma za zadanie zapisywanie 3 zamiennych typu double na pamięć ROM modułu ds1307. Chciałbym żeby przy pracy programu zmienne zapisane cały czas się aktualizowały a po zresetowaniu płytki w pętli setup odbyło się sprawdzenie czy wartość jest większa od 0 jeżeli tak żeby ją nadpisało. Robił może ktoś taki program i podpowie jak to  ugryźć ?

Problem z konwersją na hex bo z tego co wyczytałem tak należy zapisywać i odczytywać dane hex. Ale jak ma ograniczoną ilość cykli zapisu to raczej nie ma to sensu żeby to realizować. Myślałem, że nie ma żadnego ograniczenia. 

 

Dnia 30.06.2021 o 21:03, ethanak napisał:

że pamięć EEPROM ( a nie ROM) ma ograniczoną ilość cykli zapisu?

No tylko, ze DS1307 nie ma ani EEPROM ani ROM, bo ma battery backed SRAM, wiec nie ma ograniczenia liczby zapisow.

A przepraszam:

Dnia 30.06.2021 o 20:29, Marcin1922 napisał:

na pamięć ROM modułu ds1307

Nie scalak DS1307, tylko moduł (czyli taki scalak na płytce, z reguły z doklejonym eepromem, bateryjką i goldpinami)

Dnia 30.06.2021 o 21:15, Marcin1922 napisał:

Rozwiąże to raczej w takim przypadku modułem z kartą SD z której będą odczytywane dane

Pomijając drobny fakt, że pamięć flash też nie ma nieskończionej liczby zapisów - wręcz przeciwnie, ma bardziej skończoną niż EEPROM 😉

A w ogóle ile ma być tych zapisów, bo może się okazać że EEPROM wystarczy

Zapis odbywa się co sekundę na kartę SD w konfiguracji data prąd, napięcie , Q ,P ,S ,cosf , KWh

 

I cały problem w tym żeby gdy zabraknie napięcie układ się uruchamia nadpisuje ostatnia wartość kwh i mierzy dalej

 

i zapis co sekundę to kolejne linijki w pliku txt

Karta sd, zapis co minutę. Wytrzymała trochę ponad rok. Podziel to sobie przez 60.

Zainteresuj się czymś co się nazywa FRAM.

I przy okazji jakiś czujnik zaniku napięcia - jeśli zabraknie zasilania to na kondensatorach ma obowiązek zakończyć zapis i nie ma prawa zacząć następnego.

Pytanie: co się stanie jeśli zgubisz jedną linijkę zapisu? Bo ZTCW brakuje jednego parametru (czas).

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...