Referência de estrutura GnssNavigationMessage

Referência de estrutura GnssNavigationMessage

#include < gps.h >

Campos de dados

tamanho_t tamanho
int16_t svid
GnssNavigationMessageType tipo
NavegaçãoMessageStatus status
int16_t mensagem_id
int16_t submensagem_id
tamanho_t comprimento_dados
uint8_t * dados

Descrição detalhada

Representa uma mensagem de navegação GPS (ou um fragmento dela).

Definição na linha 2027 do arquivo gps.h .

Documentação de campo

dados uint8_t*

Os dados da mensagem GPS reportada. Os bytes (ou palavras) especificados usando o formato big endian (MSB primeiro).

  • Para GPS L1 C/A, Beidou D1 e Beidou D2, cada subquadro contém 10 palavras de 30 bits. Cada palavra (30 bits) deve caber nos últimos 30 bits de uma palavra de 4 bytes (pular B31 e B32), com MSB primeiro, totalizando 40 bytes, cobrindo um período de tempo de 6, 6 e 0,6 segundos. , respectivamente.
  • Para Glonass L1 C/A, cada string contém 85 bits de dados, incluindo a soma de verificação. Esses bits devem caber em 11 bytes, com MSB primeiro (pular B86-B88), cobrindo um período de 2 segundos.
  • Para Galileo F/NAV, cada palavra consiste em 238 bits (excluindo símbolos de sincronização e cauda). Cada palavra deve caber em 30 bytes, com MSB primeiro (pular B239, B240), cobrindo um período de 10 segundos.
  • Para Galileo I/NAV, cada página contém 2 partes de página, pares e ímpares, com um total de 2x114 = 228 bits, (sincronização e cauda excluídas) que devem caber em 29 bytes, com MSB primeiro (pular B229-B232).

Definição na linha 2119 do arquivo gps.h .

tamanho_t comprimento_dados

O comprimento dos dados (em bytes) contidos na mensagem atual. Se este valor for diferente de zero, 'dados' deverão apontar para um array do mesmo tamanho. por exemplo, para L1 C/A o tamanho do subquadro será de 40 bytes (10 palavras, 30 bits/palavra).

Este é um valor obrigatório.

Definição na linha 2096 do arquivo gps.h .

int16_t mensagem_id

Identificador de mensagem. Ele fornece um índice para que a Mensagem de Navegação completa possa ser montada.

  • Para os subquadros 4 e 5 do GPS L1 C/A, este valor corresponde ao 'frame id' da mensagem de navegação, no intervalo de 1-25 (o subquadro 1, 2, 3 não contém um 'frame id' e este valor pode ser definido como -1.)
  • Para Glonass L1 C/A, isso se refere ao ID do quadro, no intervalo de 1 a 5.
  • Para BeiDou D1, refere-se ao número do quadro na faixa de 1-24
  • Para Beidou D2, refere-se ao número do quadro, na faixa de 1-120
  • Para a estrutura nominal do quadro Galileo F/NAV, refere-se ao número do subquadro, na faixa de 1-12
  • Para a estrutura nominal do quadro Galileo I/NAV, refere-se ao número do subquadro na faixa de 1-24

Definição na linha 2070 do arquivo gps.h .

tamanho_t tamanho

definido como sizeof(GnssNavigationMessage)

Definição na linha 2029 do arquivo gps.h .

O status da mensagem de navegação recebida. Não há necessidade de enviar nenhuma mensagem de navegação que contenha palavras com erro de paridade e que não possam ser corrigidas.

Definição na linha 2048 do arquivo gps.h .

int16_t submensagem_id

Identificador de submensagem. Se exigido pelo 'tipo' da mensagem, este valor contém um subíndice dentro da mensagem (ou quadro) atual que está sendo transmitida.

  • Para GPS L1 C/A, BeiDou D1 e BeiDou D2, o ID da submensagem corresponde ao número do subquadro da mensagem de navegação, no intervalo de 1-5.
  • Para Glonass L1 C/A, refere-se ao número da String, no intervalo de 1 a 15
  • Para Galileo F/NAV, refere-se ao tipo de página no intervalo 1-6
  • Para Galileo I/NAV, refere-se ao tipo de palavra no intervalo 1-10+

Definição na linha 2087 do arquivo gps.h .

int16_t svid

Número de identificação do veículo satélite, conforme definido em GnssSvInfo::svid Este é um valor obrigatório.

Definição na linha 2035 do arquivo gps.h .

O tipo de mensagem contida na estrutura. Este é um valor obrigatório.

Definição na linha 2041 do arquivo gps.h .


A documentação desta estrutura foi gerada a partir do seguinte arquivo:
  • hardware/libhardware/include/hardware/ gps.h