Top Qs
Linha do tempo
Chat
Contexto

Protocolo binário SiRF

Da Wikipédia, a enciclopédia livre

Remove ads

Protocolo binário SiRF, ou do inglês SiRF Binary protocol, é o protocolo de comunicação padrão utilizado por todas as arquiteturas dos produtos da SiRF.

Camadas do protocolo

Resumir
Perspectiva

Transporte

A camada de transporte empacota uma mensagem GPS em dois caracteres de início e dois de parada e adiciona um prefixo de 2 bytes(15 bits) e um checksum também de 2 bytes (15 bits) antes dos dois caracteres de parada. Os valores dos caracteres de início e parada e a escolha de um valor de 15 bits para o checksum e o comprimento assegura que o comprimento e o checksum da mensagem naõ podem ser confundidos com um código de início ou de parada.

Mais informação Início de seqüência, Comprimento de Payload ...

Validação da mensagem

A camada de validação é a parte da camada de transporte, porém opera independentemente. A contagem de bytes refere-se à quantidade de bytes de payload. O checksum (soma de teste) é a soma do payload.

Tamanho do Payload

O tamanho do payload, payload length, é transmitido na ordem do maior byte primeiro seguido pelo menor byte.

Mais informação Byte alto, Byte baixo ...

Mesmo que o protocolo tenha um comprimento máximo de (2¹5 – 1)bytes, considerações práticas requerem que a implementação do módulo GPS SiRF limite esse valor para um número menor. Os programas de recepção SiRF(e.g., SiRFdemo) podem limitar o tamanho real para algo menor que este máximo.

Dados de Payload

Os dados de payload seguem o tamanho do payload. Ele contem o número de bytes especificados pelo tamanho do payload. O tamanho do payload pode conter qualquer valor de 8 bits.

Onde valores de múltiplos bytes estiverem nos dados de payload nem o alinhamento nem a ordem de byte são definidos como parte do transporte apesar de que os payloads SiRF irão usar a ordem do maior fim(big-endian).

Checksum

O checksum é transmitido na ordem do byte mais alto primeiro seguido pelo byte mais baixo. Esta ordem é chamada maior fim(big-endian)

Mais informação Byte alto, Byte baixo ...

O checksum é uma soma de teste de 15 bits dos bytes nos dados de payload. O seguinte pseudo-código define o algoritmo usado.

   A mensagem é o array de bytes a serem enviados pela camada de transporte.
   O msgLen é o número de bytes no array mensagem a ser transmitido.

Index = first

checkSum = 0

while index < msgLen

checkSum = checkSum + mensagem[Index]

checkSum = checkSum AND (2¹5 – 1).

Remove ads

Mensagens de Entrada

Há um conjunto de mensagens que podem ser recebidos por um receptor GPS SiRF, sendo que o tamanho do buffer para essas mensagens de entrada(input messages) é de 912 bytes. A tabela a seguir lista as mensagens de entrada do protocolo juntamente com seus respectivos códigos.

Mais informação Hex, Decimal ...
Remove ads

Mensagens de Saída

Referências

    Loading related searches...

    Wikiwand - on

    Seamless Wikipedia browsing. On steroids.

    Remove ads