Référence de la struct GnssNavigationMessage
#include <
gps.h
>
Champs de données |
|
size_t | size |
int16_t | svid |
GnssNavigationMessageType | type |
NavigationMessageStatus | état |
int16_t | message_id |
int16_t | submessage_id |
size_t | data_length |
uint8_t * | Données |
Description détaillée
Représente un message de navigation GPS (ou un fragment de celui-ci).
Documentation des champs
uint8_t* data |
Données du message GPS signalé. Les octets (ou mots) spécifiés à l'aide du format big-endian (MSB en premier).
- Pour GPS L1 C/A, Beidou D1 et Beidou D2, chaque sous-cadres contient 10 mots de 30 bits. Chaque mot (30 bits) doit être intégré aux 30 derniers bits d'un mot de 4 octets (ignorez B31 et B32), avec le bit le plus significatif en premier, pour un total de 40 octets, couvrant une période de 6, 6 et 0, 6 secondes, respectivement.
- Pour Glonass L1 C/A, chaque chaîne contient 85 bits de données, y compris la somme de contrôle. Ces bits doivent être répartis sur 11 octets, avec le bit le plus significatif en premier (ignorez les bits B86 à B88), couvrant une période de deux secondes.
- Pour Galileo F/NAV, chaque mot se compose de 238 bits (symboles de synchronisation et de fin exclus). Chaque mot doit être adapté à 30 octets, avec le bit le plus significatif en premier (ignorez B239, B240), couvrant une période de 10 secondes.
- Pour Galileo I/NAV, chaque page contient deux parties, paires et impaires, d'un total de 2 x 114 = 228 bits (synchronisation et fin exclues) qui doivent tenir dans 29 octets, avec le bit le plus significatif en premier (ignorez les bits B229 à B232).
size_t data_length |
Longueur des données (en octets) contenues dans le message actuel. Si cette valeur est différente de zéro, "data" doit pointer vers un tableau de la même taille. Par exemple, pour la C/A L1, la taille de la sous-couche sera de 40 octets (10 mots, 30 bits/mot).
Il s'agit d'une valeur obligatoire.
int16_t message_id |
Identifiant du message. Il fournit un indice permettant d'assembler le message de navigation complet.
- Pour les sous-cadres 4 et 5 du signal GPS L1 C/A, cette valeur correspond à l'ID de trame du message de navigation, compris entre 1 et 25 (les sous-cadres 1, 2 et 3 ne contiennent pas d'ID de trame et cette valeur peut être définie sur -1).
- Pour Glonass L1 C/A, il s'agit de l'ID de trame, compris entre 1 et 5.
- Pour BeiDou D1, il s'agit du numéro de trame compris entre 1 et 24.
- Pour Beidou D2, il s'agit du numéro de frame, compris entre 1 et 120.
- Pour la structure de trame nominale F/NAV de Galileo, il s'agit du numéro de sous-cadre, compris entre 1 et 12.
- Pour la structure de trame nominale Galileo I/NAV, il s'agit du numéro de sous-cadre compris entre 1 et 24.
int16_t submessage_id |
Identifiant du sous-message. Si le type de message l'exige, cette valeur contient un sous-indice dans le message (ou trame) en cours de transmission.
- Pour GPS L1 C/A, BeiDou D1 et BeiDou D2, l'ID de sous-message correspond au numéro de sous-cadres du message de navigation, compris entre 1 et 5.
- Pour Glonass L1 C/A, il s'agit du numéro de chaîne, compris entre 1 et 15.
- Pour Galileo F/NAV, il s'agit du type de page compris entre 1 et 6.
- Pour Galileo I/NAV, il s'agit du type de mot compris entre 1 et 10 +.
int16_t svid |
Numéro d'identification du véhicule satellite, comme défini dans GnssSvInfo::svid Il s'agit d'une valeur obligatoire.
La documentation de ce struct a été générée à partir du fichier suivant :
- hardware/libhardware/include/hardware/ gps.h