GnssNavigationMessage Yapı Referansı

GnssNavigationMessage Yapı Referansı

#include < gps.h >

Veri alanları

size_t boyut
int16_t video
GnssNavigationMessageType tip
NavigasyonMesajDurum durum
int16_t Mesaj Kimliği
int16_t altmesaj_id
size_t veri_uzunluğu
uint8_t * veri

Detaylı Açıklama

Bir GPS navigasyon mesajını (veya bunun bir parçasını) temsil eder.

gps.h dosyasının 2027. satırındaki tanım.

Saha Dokümantasyonu

uint8_t* verileri

Bildirilen GPS mesajının verileri. Big endian formatı (önce MSB) kullanılarak belirtilen baytlar (veya kelimeler).

  • GPS L1 C/A, Beidou D1 ve Beidou D2 için her alt çerçeve 10 adet 30 bit kelime içerir. Her kelime (30 bit), 6, 6 ve 0,6 saniyelik bir zaman periyodunu kapsayan toplam 40 bayt için önce MSB olmak üzere 4 baytlık bir kelimenin (B31 ve B32'yi atlayın) son 30 bitine sığmalıdır. , sırasıyla.
  • Glonass L1 C/A için her dizi, sağlama toplamı dahil 85 veri biti içerir. Bu bitler, önce MSB olmak üzere (B86-B88'i atlayın) 2 saniyelik bir süreyi kapsayacak şekilde 11 bayta sığdırılmalıdır.
  • Galileo F/NAV için her kelime 238 bitten oluşur (senkronizasyon ve kuyruk sembolleri hariç). Her kelime 30 bayta sığmalı, ilk olarak MSB (B239, B240'ı atlayın) ve 10 saniyelik bir süreyi kapsamalıdır.
  • Galileo I/NAV için her sayfa, önce MSB olmak üzere (B229-B232'yi atlayın) 29 bayta sığması gereken toplam 2x114 = 228 bitlik (senkronizasyon ve kuyruk hariç) çift ve tek olmak üzere 2 sayfa bölümü içerir.

gps.h dosyasının 2119. satırındaki tanım.

size_t veri_uzunluğu

Geçerli mesajda yer alan verilerin uzunluğu (bayt cinsinden). Bu değer sıfırdan farklıysa 'veri' aynı boyutta bir diziye işaret etmelidir. örneğin L1 C/A için alt çerçevenin boyutu 40 bayt olacaktır (10 kelime, 30 bit/kelime).

Bu zorunlu bir değerdir.

Gps.h dosyasının 2096. satırındaki tanım.

int16_t message_id

Mesaj tanımlayıcı. Gezinme Mesajının tamamının bir araya getirilebilmesi için bir dizin sağlar.

  • GPS L1 C/A alt çerçevesi 4 ve 5 için bu değer, 1-25 aralığında navigasyon mesajının 'çerçeve kimliğine' karşılık gelir (Alt çerçeve 1, 2, 3, bir 'çerçeve kimliği' içermez ve bu değer -1 olarak ayarlanabilir.)
  • Glonass L1 C/A için bu, 1-5 aralığındaki çerçeve kimliğini ifade eder.
  • BeiDou D1 için bu, 1-24 aralığındaki çerçeve numarasını ifade eder.
  • Beidou D2 için bu, 1-120 aralığındaki çerçeve numarasını ifade eder.
  • Galileo F/NAV nominal çerçeve yapısı için bu, 1-12 aralığındaki alt çerçeve sayısını ifade eder.
  • Galileo I/NAV nominal çerçeve yapısı için bu, 1-24 aralığındaki alt çerçeve sayısını ifade eder.

Gps.h dosyasının 2070. satırındaki tanım.

size_t size

sizeof(GnssNavigationMessage) olarak ayarlandı

gps.h dosyasının 2029. satırındaki tanım.

Alınan navigasyon mesajının durumu. Eşlik hatası olan ve düzeltilemeyen kelimeler içeren herhangi bir navigasyon mesajı göndermenize gerek yoktur.

gps.h dosyasının 2048. satırındaki tanım.

int16_t altmesaj_id

Alt mesaj tanımlayıcısı. Mesaj 'tipi' gerektiriyorsa, bu değer, iletilen mevcut mesaj (veya çerçeve) içerisinde bir alt indeks içerir.

  • GPS L1 C/A, BeiDou D1 ve BeiDou D2 için alt mesaj kimliği, navigasyon mesajının 1-5 aralığındaki alt çerçeve numarasına karşılık gelir.
  • Glonass L1 C/A için bu, 1-15 aralığındaki String numarasını ifade eder.
  • Galileo F/NAV için bu, 1-6 aralığındaki sayfa türünü ifade eder.
  • Galileo I/NAV için bu, 1-10+ aralığındaki kelime türünü ifade eder.

gps.h dosyasının 2087. satırındaki tanım.

int16_t svid

GnssSvInfo::svid'de tanımlandığı şekliyle uydu araç kimlik numarası Bu zorunlu bir değerdir.

gps.h dosyasının 2035. satırındaki tanım.

Yapının içerdiği mesajın türü. Bu zorunlu bir değerdir.

gps.h dosyasının 2041. satırındaki tanım.


Bu yapıya ilişkin belgeler aşağıdaki dosyadan oluşturulmuştur:
  • donanım/libdonanım/include/donanım/ gps.h