مرجع هيكل GnssNavigationMessage

مرجع هيكل GnssNavigationMessage

#include < gps.h >

حقول البيانات

size_t مقاس
int16_t svid
GnssNavigationMessageType يكتب
NavigationMessageStatus حالة
int16_t معرف الرسالة
int16_t submesage_id
size_t طول البيانات
uint8_t * بيانات

وصف تفصيلي

يمثل رسالة ملاحة GPS (أو جزء منها).

التعريف في السطر 2027 من الملف gps.h .

التوثيق الميداني

uint8_t* البيانات

بيانات رسالة GPS المبلغ عنها. البايتات (أو الكلمات) المحددة باستخدام تنسيق endian الكبير (MSB أولاً).

  • بالنسبة لنظام تحديد المواقع GPS L1 C/A وBeidou D1 وBeidou D2، يحتوي كل إطار فرعي على 10 كلمات بطول 30 بت. يجب أن تتناسب كل كلمة (30 بت) مع آخر 30 بت في كلمة مكونة من 4 بايت (تخطي B31 وB32)، مع MSB أولاً، بإجمالي 40 بايت، وتغطي فترة زمنية قدرها 6 و6 و0.6 ثانية. ، على التوالى.
  • بالنسبة لـ Glonass L1 C/A، تحتوي كل سلسلة على 85 بتة بيانات، بما في ذلك المجموع الاختباري. وينبغي أن تكون هذه البتات ملائمة لـ 11 بايت، بحيث يكون MSB أولاً (تخطي B86-B88)، ويغطي فترة زمنية قدرها ثانيتان.
  • بالنسبة لـ Galileo F/NAV، تتكون كل كلمة من 238 بت (باستثناء رموز المزامنة والذيل). يجب أن تكون كل كلمة مكونة من 30 بايت، بحيث تكون MSB أولاً (تخطي B239، B240)، وتغطي فترة زمنية قدرها 10 ثوانٍ.
  • بالنسبة لـ Galileo I/NAV، تحتوي كل صفحة على جزأين من الصفحة، زوجي وفردي، بإجمالي 2x114 = 228 بت، (باستثناء المزامنة والذيل) والتي يجب أن تكون مناسبة لـ 29 بايت، مع MSB أولاً (تخطي B229-B232).

التعريف في السطر 2119 من الملف gps.h .

size_t data_length

طول البيانات (بالبايت) الموجودة في الرسالة الحالية. إذا كانت هذه القيمة مختلفة عن الصفر، فيجب أن تشير "البيانات" إلى مصفوفة بنفس الحجم. على سبيل المثال، بالنسبة للمستوى L1 C/A، سيكون حجم الرتل الفرعي 40 بايتة (10 كلمات، 30 بتة/كلمة).

هذه قيمة إلزامية.

التعريف في السطر 2096 من الملف gps.h .

int16_t message_id

معرف الرسالة فهو يوفر فهرسًا بحيث يمكن تجميع رسالة التنقل الكاملة.

  • بالنسبة للإطارين الفرعيين 4 و5 لنظام GPS L1 C/A، تتوافق هذه القيمة مع "معرف الإطار" لرسالة التنقل، في النطاق من 1 إلى 25 (لا يحتوي الإطار الفرعي 1 و2 و3 على "معرف الإطار" وهذه القيمة يمكن ضبطها على -1.)
  • بالنسبة إلى Glonass L1 C/A، يشير هذا إلى معرف الإطار، في النطاق من 1 إلى 5.
  • بالنسبة لـ BeiDou D1، يشير هذا إلى رقم الإطار في النطاق من 1 إلى 24
  • بالنسبة لـ Beidou D2، يشير هذا إلى رقم الإطار، في نطاق 1-120
  • بالنسبة لهيكل الإطار الاسمي لـ Galileo F/NAV، يشير هذا إلى رقم الإطار الفرعي، في النطاق من 1 إلى 12
  • بالنسبة لبنية الإطار الاسمي لـ Galileo I/NAV، يشير هذا إلى رقم الإطار الفرعي في النطاق من 1 إلى 24

التعريف في السطر 2070 من الملف gps.h .

حجم_حجم

تم ضبطه على sizeof (GnssNavigationMessage)

التعريف في السطر 2029 من الملف gps.h .

حالة رسالة التنقل المستلمة. لا داعي لإرسال أي رسالة تنقل تحتوي على كلمات بها خطأ تماثل ولا يمكن تصحيحها.

التعريف في السطر 2048 من الملف gps.h .

int16_t submesage_id

معرف الرسالة الفرعية إذا كانت هذه القيمة مطلوبة بواسطة "نوع" الرسالة، فإنها تحتوي على فهرس فرعي داخل الرسالة (أو الإطار) الحالي الذي يتم إرساله.

  • بالنسبة لنظام تحديد المواقع GPS L1 C/A وBeiDou D1 وBeiDou D2، يتوافق معرف الرسالة الفرعية مع رقم الإطار الفرعي لرسالة التنقل، في النطاق من 1 إلى 5.
  • بالنسبة لـ Glonass L1 C/A، يشير هذا إلى رقم السلسلة، في النطاق من 1 إلى 15
  • بالنسبة لـ Galileo F/NAV، يشير هذا إلى نوع الصفحة الموجود في النطاق من 1 إلى 6
  • بالنسبة لـ Galileo I/NAV، يشير هذا إلى نوع الكلمة في النطاق من 1 إلى 10+

التعريف في السطر 2087 من الملف gps.h .

int16_t svid

رقم معرف مركبة القمر الصناعي، كما هو محدد في GnssSvInfo::svid هذه قيمة إلزامية.

التعريف في السطر 2035 من الملف gps.h .

نوع الرسالة الموجودة في البنية. هذه قيمة إلزامية.

التعريف في السطر 2041 من الملف gps.h .


تم إنشاء وثائق هذه البنية من الملف التالي:
  • الأجهزة/libhardware/تشمل/الأجهزة/ gps.h