-
Data: 2014-11-12 15:45:05
Temat: Re: Różny czas pomimo synchronizacji z NTP
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2014-11-12 15:02, Marek pisze:
> Bez synch. późni się czy spieszy?
Spóźnia się. Z każdą chwilą coraz bardziej.
> Pisałeś, że ten *time liczysz w przerwaniu timera 1ms, który odlicza
> czas lokalny, uwzględniłeś czas tych obliczeń *time (maltretujesz
> 8bit mcu obliczeniami na int32, timer powinien być aktywny podczas
> ich trwania)?
W tej chwili używam przerwania 10ms.
Hmm... Uważasz, że operacje na zmiennych mogą zajmować więcej czasu,
przez co różnica odkłada się z każdą sekundą?
Czy to (wraz z czasem potrzebnym na obliczenie nowego czasu z pakietu
NTP) tłumaczyłoby także początkowe, kilkusekundowe opóźnienie,
pojawiające się zwykle po synchronizacji?
Funkcja obsługująca przerwanie wygląda następująco:
ISR(TIMER0_COMPA_vect) {
ten_millis++;
if (ten_millis > 100) {
geiger_pulses[seconds] = TCNT1;
TCNT1 = 0;
seconds = (seconds + 1) % 60;
one_second_tick = 1;
uptime++;
if (rtc) rtc++;
if (ntp_update_timer) ntp_update_timer--;
if (bmp085_update_timer) bmp085_update_timer--;
if (dht_update_timer) dht_update_timer--;
if (graphite_upload_timer) graphite_upload_timer--;
ten_millis = 0;
}
}
Pierwszy blok poleceń w instrukcji warunkowej to obsługa licznika
Geigera (właściwe główny czujnik zamontowany w tym urządzeniu) - co
sekundę ilość impulsów zliczonych przez licznik sprzętowy jest
zapisywana do tablicy, sam licznik jest czyszczony i liczony jest numer
kolejnego pola do zapisania.
Zmienna "one_second_tick" to uint8_t - jej jedyną funkcją jest
przekazywanie do pętli głównej informacji o przekręceniu się licznika
sekund.
Zmiennymi 32bitowymi są jedynie uptime i rtc.
Zmienne bmp085_update_timer i dht_update_timer mają rozmiar ośmiu bitów
- odliczają czas pomiędzy kolejnymi odczytami czujników BMP085 oraz DHT11.
Podobne jest przeznaczenie szesnastobitowych zmiennych ntp_update_timer
oraz graphite_upload_timer, które odliczają czas do kolejnego wysłania
requesta do serwera NTP oraz uploadu wyników pomiarów do Graphite'a.
Jeśli to tu leży przyczyna, to w jaki sposób powinienem wprowadzić
poprawkę? Jak ustalić czas potrzebny do wykonania tych operacji?
Następne wpisy z tego wątku
- 12.11.14 17:21 Jakub Rakus
- 12.11.14 17:43 Atlantis
- 12.11.14 19:50 Jakub Rakus
- 12.11.14 19:53 Marek
- 12.11.14 20:00 Atlantis
- 12.11.14 20:07 Marek
- 12.11.14 20:48 Atlantis
- 12.11.14 21:26 Marek
- 12.11.14 21:29 J.F.
- 12.11.14 21:36 Marek
- 12.11.14 22:20 Atlantis
- 12.11.14 23:14 J.F.
- 12.11.14 23:18 Marek
- 12.11.14 23:20 Jakub Rakus
- 12.11.14 23:24 Atlantis
Najnowsze wątki z tej grupy
- Tfu! Przeklety prostokąt (czyli UPS i "sinus modyfikowany")
- Dalekopis T100 - problem z powrotem karetki
- Diody LED - oświetlenie na choinkę
- ale wiesz, że są gotowce?
- jak wykryć zapalenie żarówki?
- Cyna dylemat
- Mierniki poziomu glukozy (CGM, FGM)
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Kontrola nad prądem - sprawdź jak działa [apka - przyp. JMJ] eLicznik
- NETIA i hasło logowania
- Modulacja FM
- Najgorszy język programowania
- Kol. sukces po polsku: firma Szumisie sp. z o.o.
- Chińska Telefonia 6G - Chcą Nas Sterować Elektrycznie - Jak Kukiełki w Teatrze Lalek!!!
- RS-485 ale automatycznie dwukierunkowy
Najnowsze wątki
- 2025-12-24 New York Times zagrożeniem bezpieczeństwa narodowego USA - POTUS D. Trump
- 2025-12-24 Podżeganie?
- 2025-12-24 => Senior Algorithm Developer (Java/Kotlin) <=
- 2025-12-24 otwarcie drugiej obwodnicy Trójmiasta
- 2025-12-24 Tfu! Przeklety prostokąt (czyli UPS i "sinus modyfikowany")
- 2025-12-23 Prezent dla kierowców od prezydenta Nawrockiego
- 2025-12-23 Warszawa => Asystent ds. Sprzedaży i Rozwoju Klienta <=
- 2025-12-23 Warszawa => Senior IT Recruitment Consultant <=
- 2025-12-22 czy wiedziałeś że?
- 2025-12-22 Unijne KOOOORWY mówią że WYCOFUJĄ się z zakazu rejestracji elektryków
- 2025-12-22 Białystok => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-12-22 Lublin => Project Manager <=
- 2025-12-22 Warszawa => Project Manager (AI and innovation) <=
- 2025-12-22 TVN oczekuje: Za Ziobrem BĘDZIE czerwona nota Interpolu! Czy może Interpol da drugi raz (w) dupę? ;-)
- 2025-12-21 Norweski przepis na pozbywanie się uchodźców odwiedzających kraj z którego "uciekli"




7 pułapek i okazji - zobacz co cię czeka podczas kupna mieszkania na wynajem