RTC nastawy czasu za pomocą 3 klawiszy

Masz problem z Arduino? Tutaj możesz szukać pomocy.
ODPOWIEDZ
Valdi
Młodszy majsterkowicz
Posty: 8
Rejestracja: 22 cze 2016, 15:18

RTC nastawy czasu za pomocą 3 klawiszy

Post autor: Valdi » 19 paź 2016, 13:53

A ja mam inne pytanko powiedzmy że mój DS1307 śpieszy się na dobę 10 sec.
I tu jest problem bo nie mam pomysłu (wiedzy) jak zapisać zrobić aby codziennie była korekta o te 10 sec.

pozdrawiam
Valdi

Co miesiąc do wygrania nagrody o wartości ponad 1600 zł!


Awatar użytkownika
macin
Majsterkowicz
Posty: 190
Rejestracja: 1 lip 2012, 11:24
Lokalizacja: Bydgoszcz

Re: RTC nastawy czasu za pomocą 3 klawiszy

Post autor: macin » 19 paź 2016, 15:08

Witam,
na moje powinieneś kupić moduł RTC DS3231, ponieważ miałem ten sam moduł DS1307 co ty i też były cyrki z nim, po zakupie DS3231 mam spokój jakieś pół roku, godzina się nie rozjeżdża i ma od razu baterię podtrzymującą.
zgoda
Majsterkowicz
Posty: 60
Rejestracja: 23 cze 2016, 09:58

Re: RTC nastawy czasu za pomocą 3 klawiszy

Post autor: zgoda » 19 paź 2016, 15:25

DS1307 nie ma korekty temperatury, może stąd masz problemy? W każdym razie nie sądzę żeby się to załatwić programowo bez zewnętrznego źródła (np ntp).
Valdi
Młodszy majsterkowicz
Posty: 8
Rejestracja: 22 cze 2016, 15:18

Re: RTC nastawy czasu za pomocą 3 klawiszy

Post autor: Valdi » 19 paź 2016, 15:44

o coś takiego mi chodziło :)

dziękuję
Valdi
zgoda
Majsterkowicz
Posty: 60
Rejestracja: 23 cze 2016, 09:58

Re: RTC nastawy czasu za pomocą 3 klawiszy

Post autor: zgoda » 19 paź 2016, 16:39

To nie jest korekta czasu, bo nie wiesz ile wynosi różnica, na pałę zatrzymujesz zegar i liczysz że "będzie dobrze". Mało, nie wiesz skąd się ta różnica wzięła. Jeżeli winna jest temperatura, to możesz mieć różnicę 9 minut, a wtedy po takiej "korekcie" będzie ci się późnił o minutę.

Z tego właśnie powodu zegary rtc w komputerach są teraz jedynie pomocniczym wskaźnikiem czasu - bo traciły dokładność i nie dawały się automatycznie korygować bez źródła czasu z zewnątrz.

Jeżeli już musisz polegać wyłącznie na rtc, to weź najlepszy jaki jest i daj możliwość ręcznej korekty, jeżeli nie możesz użyć ntp do pobrania czasu w programie.
Awatar użytkownika
macin
Majsterkowicz
Posty: 190
Rejestracja: 1 lip 2012, 11:24
Lokalizacja: Bydgoszcz

Re: RTC nastawy czasu za pomocą 3 klawiszy

Post autor: macin » 19 paź 2016, 19:12

MrLewerence pisze:Podepnę się z pytankiem.
Jak podzielić format wyświetlania czasu? Chodzi mi o to, że polecenie:

Kod: Zaznacz cały

print(rtc.getTimeStr())
Wyświetla string z pełną formą czasu, np.: 17:00:30,
Chcę wyświetlić każdą grupę oddzielnie. Da się to zrobić?
DS3231.
Tutaj znajdziesz odpowiedz idzie odczytać sekundy, minuty, godziny, ... oddzielnie
Awatar użytkownika
Marhef
Złota rączka
Posty: 1257
Rejestracja: 18 lis 2011, 02:18

Re: RTC nastawy czasu za pomocą 3 klawiszy

Post autor: Marhef » 19 paź 2016, 20:54

A zapisanie tego jako tablicy typu char i pobieranie z niej odpowiednich elementów?
stiven
Złota rączka
Posty: 1641
Rejestracja: 13 maja 2014, 08:47
Lokalizacja: Zielona Góra

Re: RTC nastawy czasu za pomocą 3 klawiszy

Post autor: stiven » 19 paź 2016, 21:06

No właśnie, albo do Stringa. Można też pobawić się tak w zapisywanie godziny, minut i sekund do osobnych zmiennych.

Kod: Zaznacz cały

  String czas = rtc.getTimeStr();
  
  print(czas[0]);
  print(czas[1]);
  print(":");
  print(czas[3]);
  print(czas[4]);
  print(":");
  print(czas[6]);
  print(czas[7]);

Kod: Zaznacz cały

  String czas = rtc.getTimeStr();
  
  String godzina = czas[0] + czas[1];
  String minuty = czas[3] + czas[4];
  String sekundy = czas[6] + czas[7];  
  
  print(godzina);
  print(":");
  print(minuty);
  print(":");
  print(sekundy);
No ale najłatwiej skorzystać z tamtej biblioteki.
ODPOWIEDZ

Strony partnerskie: