Справочник по структуре GnssNavigationMessage
#include < gps.h >
Поля данных | |
size_t | размер |
int16_t | свид |
GnssNavigationMessageType | тип |
Статус НавигацииСообщения | положение дел |
int16_t | message_id |
int16_t | submessage_id |
size_t | длина_данных |
uint8_t * | данные |
Подробное описание
Полевая документация
uint8_t* данные |
Данные сообщаемого GPS-сообщения. Байты (или слова), указанные в формате с прямым порядком байтов (сначала старший бит).
- Для GPS L1 C/A, Beidou D1 и Beidou D2 каждый подкадр содержит 10 30-битных слов. Каждое слово (30 бит) должно помещаться в последние 30 бит 4-байтового слова (пропустить B31 и B32), начиная со старшего байта, всего 40 байтов, охватывая период времени 6, 6 и 0,6 секунды. , соответственно.
- Для Glonass L1 C/A каждая строка содержит 85 бит данных, включая контрольную сумму. Эти биты должны умещаться в 11 байтов, начиная со старшего бита (пропуская B86-B88), охватывая период времени в 2 секунды.
- В Galileo F/NAV каждое слово состоит из 238 бит (за исключением символов синхронизации и хвоста). Каждое слово должно умещаться в 30 байт, начиная со старшего разряда (пропуская B239, B240), охватывая период времени в 10 секунд.
- Для Galileo I/NAV каждая страница содержит 2 части страницы, четную и нечетную, общей длиной 2x114 = 228 бит (без учета синхронизации и хвоста), которые должны умещаться в 29 байтов, начиная со старшего разряда (пропустить B229-B232).
size_t длина_данных |
Длина данных (в байтах), содержащихся в текущем сообщении. Если это значение отличается от нуля, «данные» должны указывать на массив того же размера. например, для L1 C/A размер подкадра будет составлять 40 байт (10 слов, 30 бит/слово).
Это обязательное значение.
int16_t message_id |
Идентификатор сообщения. Он предоставляет индекс, позволяющий составить полное навигационное сообщение.
- Для подкадров 4 и 5 GPS L1 C/A это значение соответствует «идентификатору кадра» навигационного сообщения в диапазоне 1–25 (подкадр 1, 2, 3 не содержит «идентификатор кадра», и это значение можно установить на -1.)
- Для Glonass L1 C/A это относится к идентификатору кадра в диапазоне 1–5.
- Для BeiDou D1 это относится к номеру кадра в диапазоне 1–24.
- Для Beidou D2 это относится к номеру кадра в диапазоне 1–120.
- Для номинальной структуры кадра Galileo F/NAV это относится к номеру подкадра в диапазоне 1–12.
- Для номинальной структуры кадра Galileo I/NAV это относится к номеру подкадра в диапазоне 1–24.
Статус состояния навигацииMessageStatus |
int16_t submessage_id |
Идентификатор подсообщения. Если этого требует тип сообщения, это значение содержит субиндекс внутри текущего передаваемого сообщения (или кадра).
- Для GPS L1 C/A, BeiDou D1 и BeiDou D2 идентификатор подсообщения соответствует номеру подкадра навигационного сообщения в диапазоне 1–5.
- Для Глонасс L1 C/A это относится к номеру строки в диапазоне от 1 до 15.
- Для Galileo F/NAV это относится к типу страницы в диапазоне 1–6.
- Для Galileo I/NAV это относится к типу слова в диапазоне 1–10+.
int16_t свид |
Идентификатор спутникового транспортного средства, определенный в GnssSvInfo::svid . Это обязательное значение.
Документация для этой структуры была создана из следующего файла:
- оборудование/libhardware/include/hardware/ gps.h