Очень понравилась ваша статья. http://radiokot.ru/circuit/digital/home/68/
Есть пару вопросов.
Какую точность привязки по времени дает протокол ntp.
Как протокол привязывается к шкале utc?
вот про формат пакета:В пакете NTP метка времени передаётся в виде 64 бит данных.
Первые 32 бита это целое число, количество секунд с момента Unix Epoch
(чтоб не соврать, это вроде бы 00:00:00 1 January 1970 UTC). То есть
шкала NTP напрямую привязана к шкале UTC.
Вторые 32 бита это дробная часть секунд. Значит, можно кодировать
периоды аж до 1/2^32 сек.
При этом, ясно, что не каждый сервер может дать такую бешенную
точность. Каждый сервер времени характеризуется так называемым
"стратумом", который можно считать оценкой его точности - и значит, с
какой погрешностью можно верить его данным. Чем меньше стратум, тем
точнее метка времени.
Для достижения высокой точности, передаётся целых 4 метки времени (1
туда, 3 обратно) - чтоб учесть задержку распространения пакета по
сети.
Я в своих часах на это плюнул - не получилось нормально обработать. В
этом случае в погрешность добавляется величина, примерно равная пингу
до хоста NTP сервера, т.е. единицы-десятки миллисекунд. Для бытовых
часов этого достаточно.
Вот тут описано неплохо, по-русски:
http://citforum.ru/nets/semenov/4/44/sntp4416.shtml ,
http://time.in.ua/ntp.html


Можно посмотреть на новую версию исходников?Coolish писал(а):
Прошивку я немного правил с момента выкладывания статьи