GnssNavigationMessage 구조체 참조
GnssNavigationMessage 구조체 참조
#include <
gps.h
>
데이터 필드 |
|
size_t | 크기 |
int16_t | svid |
GnssNavigationMessageType | 유형 |
NavigationMessageStatus | 상태 |
int16_t | message_id |
int16_t | submessage_id |
size_t | data_length |
uint8_t * | 데이터 |
상세 설명
필드 문서
uint8_t* data |
보고된 GPS 메시지의 데이터입니다. big-endian 형식 (MSB 먼저)을 사용하여 지정된 바이트 (또는 단어)입니다.
- GPS L1 C/A, Beidou D1, Beidou D2의 경우 각 하위 프레임에는 30비트 단어 10개가 포함됩니다. 각 단어 (30비트)는 4바이트 단어의 마지막 30비트 (B31 및 B32 건너뛰기)에 들어맞아야 하며, MSB가 먼저 적용되어 총 40바이트가 됩니다. 이 40바이트는 각각 6, 6, 0.6초의 시간 간격을 나타냅니다.
- Glonass L1 C/A의 경우 각 문자열에는 체크섬을 포함하여 85비트의 데이터가 포함됩니다. 이 비트는 11바이트에 맞춰야 하며, MSB가 먼저 (B86~B88 건너뛰기) 2초의 시간 간격을 포함합니다.
- Galileo F/NAV의 경우 각 단어는 238비트 (동기화 및 꼬리 기호 제외)로 구성됩니다. 각 단어는 MSB가 먼저 (B239, B240 건너뛰기) 10초의 시간 간격을 포함하도록 30바이트로 맞춰야 합니다.
- Galileo I/NAV의 경우 각 페이지에는 짝수와 홀수의 두 페이지 부분이 포함되며, 총 2x114 = 228비트(동기화 및 꼬리 제외)로 29바이트에 맞춰야 하며, MSB가 먼저 나와야 합니다 (B229~B232 건너뛰기).
size_t data_length |
int16_t message_id |
메시지 식별자 전체 탐색 메시지를 조합할 수 있도록 색인을 제공합니다.
- GPS L1 C/A 하위 프레임 4 및 5의 경우 이 값은 1~25 범위의 내비게이션 메시지의 '프레임 ID'에 해당합니다. 하위 프레임 1, 2, 3에는 '프레임 ID'가 포함되지 않으며 이 값은 -1로 설정할 수 있습니다.
- Glonass L1 C/A의 경우 프레임 ID를 나타내며 범위는 1~5입니다.
- BeiDou D1의 경우 1~24 범위의 프레임 번호를 나타냅니다.
- Beidou D2의 경우 프레임 번호를 나타내며 범위는 1~120입니다.
- Galileo F/NAV 공칭 프레임 구조의 경우 하위 프레임 번호(1~12)를 나타냅니다.
- Galileo I/NAV 공칭 프레임 구조의 경우 1~24 범위의 하위 프레임 번호를 나타냅니다.
int16_t submessage_id |
하위 메시지 식별자입니다. 메시지 '유형'에서 요구하는 경우 이 값에는 전송 중인 현재 메시지 (또는 프레임) 내의 하위 색인이 포함됩니다.
- GPS L1 C/A, BeiDou D1, BeiDou D2의 경우 하위 메시지 ID는 1~5 범위의 내비게이션 메시지의 하위 프레임 번호에 해당합니다.
- Glonass L1 C/A의 경우 1~15 사이의 문자열 번호를 나타냅니다.
- Galileo F/NAV의 경우 1~6 범위의 페이지 유형을 나타냅니다.
- Galileo I/NAV의 경우 1~10+ 범위의 단어 유형을 나타냅니다.
int16_t svid |
GnssSvInfo::svid 에 정의된 위성 차량 ID 번호입니다. mandatory 값입니다.
이 구조체에 관한 문서는 다음 파일에서 생성되었습니다.
- hardware/libhardware/include/hardware/ gps.h