[an error occurred while processing this directive]
|
Мастер периодически "пингует" слейва, замеряя время отклика. В отклике приходит и время, насчитанное на слейве. Далее время отклика усредняется фильтром НЧ, выход ФНЧ делится пополам (у меня примерно равно время прохождения в девайс и из девайса). И прибавляется ко времени, пришедшему от девайса. А дальше самое интересное: Время компа и подкорректированное время девайса поступает на петлю автоматического регулирования, выходом которой является средний уход часов девайса от часов компа за 1 час работы (в сотнях наносекунд, так как такая единица выбрана в виндовсе). Далее программа на PC уже сама вычисляет из любого времени, пришедшего из девайса реальное локальное время. При этом в девайсе ничего не корректируется вообще.