-
Data: 2014-11-12 12:36:07
Temat: Re: Różny czas pomimo synchronizacji z NTP
Od: "Andrzej W." <a...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2014-11-12 o 12:10, Atlantis pisze:
> Hmm.... Wygląda na to, że Raspberry Pi pokazuje dokładnie ten sam czas,
> który widać np. na epochconverter.com albo currenttimestamp.com.
> To na układzie z Atmegą pojawia się jakaś dziwna różnica, wynosząca od
> kilku do kilkudziesięciu sekund. Mam wrażenie, że nie narasta ona w
> wyniku dryfu wprowadzanego przez timer - zwykle jest ona widoczna już po
> aktualizacji czasu, którą mogę też inicjować ręcznie.
>
> Kod funkcji analizującej pakiet NTP w tej chwili wygląda następująco:
>
> uint8_t client_ntp_process_answer(uint8_t *buf, volatile uint32_t
> *time,uint8_t dstport_l){
>
> uint32_t tm_temp=0;
>
> if (dstport_l){
> if (buf[UDP_DST_PORT_L_P]!=dstport_l){
> return(0);
> }
> }
> if (buf[UDP_LEN_H_P]!=0 || buf[UDP_LEN_L_P]!=56 ||
> buf[UDP_SRC_PORT_L_P]!=0x7b){
> // not ntp
> return(0);
> }
> // copy time from the transmit time stamp field:
> tm_temp = ( ((uint32_t)buf[0x52]<<24) | ((uint32_t)buf[0x53]<<16) |
> ((uint32_t)buf[0x54]<<8) | ((uint32_t)buf[0x55]) );
> tm_temp -= 2208988800UL;
> cli();
> *time = tm_temp;
> //*time = ( ( ((uint32_t)buf[0x52]<<24) |
> ((uint32_t)buf[0x53]<<16) | ((uint32_t)buf[0x54]<<8) |
> ((uint32_t)buf[0x55]) ) - 2208988800UL ); //0x83AA7E80
> sei();
> return(1);
> }
>
Ten kod to interpretuje każdy pakiet UDP co ma 56 bajtów, tak?
Żeby czytać właściwy pakiet warto sprawdzić czy odpowiedź zawiera
znacznik czasu wysłany przez Ciebie w zapytaniu. (RFC4330 Originate
Timestamp).
Ja u siebie czytam czas z pozycji [40:43], widzę, że Ty czytasz [82:85].
Ten bufor to "czyste" dane z pakietu UDP, czy jest tam też jakiś
nagłówek? Bo czytasz znacznie dalej niż długość pakietu UDP.
--
AWa.
Następne wpisy z tego wątku
- 12.11.14 12:43 Atlantis
- 12.11.14 12:49 Atlantis
- 12.11.14 12:59 Marek
- 12.11.14 13:49 Atlantis
- 12.11.14 14:01 Andrzej W.
- 12.11.14 14:06 Atlantis
- 12.11.14 14:19 Atlantis
- 12.11.14 15:02 Marek
- 12.11.14 15:45 Atlantis
- 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
Najnowsze wątki z tej grupy
- "Teleportacja" polskich statków na pd. Bałtyku - rosyjska zabawa w zakłócanie GPS, Galileo, Beidou i GLONASS
- W trakcie porwania prez. Maduro wojsko USONA użyło tajnej broni masowego rażenia: Discombobulator
- antena gsm - kabel - antena gsm
- PID - jeszcze raz
- Zlacze w mikrofonie z lat 80-tych
- Żywica żółknie od UV i wody :(
- Zawory termostatyczne
- Schemat automatyki
- Teoretyczne zagadnienie - ogrzewanie budynku
- Zagadka radiowa
- Prostownik
- Nowy akumulator Donut Lab
- Pilot do zamka/bramy
- Jaka myjka ultradźwiękowa?
- Retro organizer ale współcześnie
Najnowsze wątki
- 2026-01-29 KSeF - 13 wątpliwości
- 2026-01-29 A ja się pochwalę
- 2026-01-29 Warszawa => Mid/Senior IT Recruiter <=
- 2026-01-29 Warszawa => Senior Java Developer <=
- 2026-01-29 Warszawa => IT Recruiter <=
- 2026-01-28 Degradacja
- 2026-01-28 Wysoki Sąd poinstruował czego unikać wyzywając Owsiaka "Równiejszego"
- 2026-01-28 Białystok => Solution Architect (Workday) - Legal Systems <=
- 2026-01-28 Białystok => Preseles Inżynier (background baz danych) <=
- 2026-01-28 Wrocław => Konsultant wdrożeniowy ERP <=
- 2026-01-28 Łódź => Microsoft Engineer <=
- 2026-01-28 Białystok => Tester manualny <=
- 2026-01-27 Tradycja ciągania posłów po sądach za wystąpienia w Sejmie będzie kontynuowana [Lepper 2]
- 2026-01-27 Pierwszy raz sprzedano więcej samochodów zeeletryfikowanych niż ice
- 2026-01-27 Elektryczny Kałasznikow




Jak kupić pierwsze mieszkanie? Eksperci podpowiadają