Рейтинг@Mail.ru

Программа расчёта контрольной суммы пакетов в формате NMEA

автор:
Be the first to comment! Приложения
Print Friendly, PDF & Email
Предлагается программа для расчёта контрольной суммы пакета в формате NMEA.

1Краткое описание формата NMEA

NMEA – это формат передачи сообщений, который включает в себя систему сообщений для обмена информацией между навигационными приёмниками и потребителями навигационной информации. Протокол позволяет передавать как сообщения, так и команды навигационному оборудованию. Все команды и сообщения передаются в текстовом виде. Начинается сообщение, как правило, символа $а завершается контрольной суммой сообщения, перед которой стоит разделитель *Примеры сообщений NMEA:

$GNGGA,091101.000,5545.541779,N,03743.152069,E,2,15,0.73,156.623,M,14.370,M,,*7F
$GNVTG,127.54,T,,M,0.00,N,0.00,K,D*23
$GPGSA,A,3,29,26,21,31,16,20,,,,,,,1.32,0.73,1.10*0D

Полное описание протокола NMEA можно скачать тут.

2Описание программы расчёта контрольной суммы пакета формата NMEA

Программа выполнена в виде консольного приложения. Она предельно проста, т.к. выполняет ровно одну функцию: рассчитывает контрольную сумму пакета в формате NMEA. Согласно протоколу, контрольная сумма вычисляется с помощью применения логической операции XOR к числовому коду каждого ASCII-символа пакета, предшествующему контрольной сумме, посимвольно. Следует заметить, что пробел также является символом, который имеет свой код в таблице ASCII (ненулевой). Поэтому при невнимательном вводе пакета можно получить некорректную контрольную сумму.

Внешний вид программы расчёта контрольной суммы пакета в формате NMEA
Внешний вид программы расчёта контрольной суммы пакета в формате NMEA

Вывод результата осуществляется на консоль в виде ASCII строки, представляющей полный пакет с контрольной суммой, а также в виде массива шестнадцатеричных чисел. Последний вариант может понадобиться, если, например, вы будете передавать пакет навигационному приёмнику через COM-порт в hex формате.

Обратите внимание, что в операционных системах ниже Windows 8 для того чтобы скопировать данные из консоли нужно кликнуть на иконку в строке заголовка окна консоли, и в появившемся контекстном меню выбрать Правка – Пометить или Правка – Выбрать всё, а затем нажать Enter.

Для работы программы необходима ОС Windows XP и выше и пакет .NET версии 3.5.

Last modified onСуббота, 23 Ноябрь 2019 12:52 Read 713 times
Ключевые слова: :

Поделиться

Print Friendly, PDF & Email

Leave a comment