Разбираюсь с форматами, как программист. Начал с ПОРТА 30003, прием, расшифровка, отображение на карте(своей).
MSG,4,5,211,4CA2D6,10057,2008/11/28,14:53:49.986,2008/11/28,14:58:51.153,,,408.3,146.4,,,64,,,,,
MSG,8,5,211,4CA2D6,10057,2008/11/28,14:53:50.391,2008/11/28,14:58:51.153,,,,,,,,,,,,0
MSG,4,5,211,4CA2D6,10057,2008/11/28,14:53:50.391,2008/11/28,14:58:51.153,,,408.3,146.4,,,64,,,,,
Затем Basic AVR Format, благо открытых исходников хватает, расшифровал, отобразил.
*8D3C484899045DAE0807FFD23686;
*02E617B0D9F419;
*5D504DE20CDCC9;
Дошел до Timestamped AVR Format, и тут споткнулся.
@01D7F90185AE8D3C484899045DAE0807FFD23686;
@01D7F9029C1302E617B0D9F419;
@01D7F90634285D504DE20CDCC9;
Идея вроде бы понятна. Первые шесть байт - это тики внутреннего генератора 12 мГц. (У меня microADSB, иначе "свисток").
Прежде чем двигаться дальше, в практическом программировании алгоритма MLAT, решил это проверить. Начал измерять тики, и оказалось, что плавает значение за одну секунду.
Как я понимаю, внутри "свистка" работает счетчик, от своего внутреннего генератора. Когда принимается пакет, к нему пристыковывается текущее значение этого счетчика и передается в формате Timestamped AVR Format. Через равные промежутки времени, например через минуту, счетчик должен приращиваться на одинаковое количество тиков. А у меня так не выходит. Уважаемые форумчане, кто в теме, объясните где я не прав. "Гуглил" 2 дня подряд, ответа на свой вопрос не нашел.
Ссылки на все программы: http://188.168.58.111:8080/index.html
Прошу всех, кто пользуется моими связывающими клиентами, обновить программы по ссылке выше. Нашел ошибку, влияющую на целостность данных при передаче их большого объема. 28.06.2014