معالج بيانات الشبكة

تشمل هذه الوحدة وظائف تتحكم في تنفيذ حِزمة سلسلة المحادثات.

الملخّص

مواقد الخط

otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount) مَعلمة typetype
bool(*
تحدّد هذه الوسيطة نوع المفوَّض (الوظيفة الدالة) للتحكُّم في سلوك إلقاء نظرة خاطفة/عملية poke.
otNcpHandlerJoinLegacyNode)(const otExtAddress *aExtAddress) مَعلمة typetype
void(*
لتعريف نوع المعالج (مؤشر الدالة) لبدء عملية الانضمام.
otNcpHandlerSetLegacyUlaPrefix)(const uint8_t *aUlaPrefix) مَعلمة typetype
void(*
لتعريف نوع المعالج (مؤشر الدالة) لإعداد بادئة ULA القديمة.
otNcpHandlerStartLegacy)(void) مَعلمة typetype
void(*
لتعريف نوع المعالج (مؤشر الدالة) لبدء شبكة قديمة.
otNcpHandlerStopLegacy)(void) مَعلمة typetype
void(*
لتعريف نوع المعالج (مؤشر الدالة) لإيقاف شبكة قديمة.
otNcpHdlcSendCallback)(const uint8_t *aBuf, uint16_t aBufLength) مَعلمة typetype
int(*
يُستخدم مؤشر الدالة هذا لإرسال بيانات NCP بترميز HDLC.
otNcpLegacyHandlers مَعلمة typetype
لتعريف بنية تحتوي على جميع المعالجات القديمة (مؤشرات الدوال).

الدوال

otNcpHandleDidReceiveNewLegacyUlaPrefix(const uint8_t *aUlaPrefix)
void
يتم استدعاء رد الاتصال هذا من خلال حِزمة البيانات القديمة لإشعارك بأن بادئة ULA القديمة قد تم تغييرها.
otNcpHandleLegacyNodeDidJoin(const otExtAddress *aExtAddr)
void
يستدعي هذا معاودة الاتصال الحزمة القديمة لإعلامها بأنّ عقدة جديدة قديمة قد انضمّت إلى الشبكة.
otNcpHdlcInit(otInstance *aInstance, otNcpHdlcSendCallback aSendCallback)
void
تهيئة NCP استنادًا إلى إطار HDLC
otNcpHdlcReceive(const uint8_t *aBuf, uint16_t aBufLength)
void
ويتم استدعاء هذه الدالة بعد استلام بيانات NCP ذات الترميز HDLC.
otNcpHdlcSendDone(void)
void
يتم استدعاء هذه الدالة بعد انتهاء إرسال NCP.
otNcpPlatLogv(otLogLevel aLogLevel, otLogRegion aLogRegion, const char *aFormat, va_list aArgs)
void
كتابة سجل سلسلة المحادثات باستخدام otNcpStreamWrite.
otNcpRegisterLegacyHandlers(const otNcpLegacyHandlers *aHandlers)
void
تسجِّل هذه الطريقة مجموعة من المعالجات القديمة باستخدام NCP.
otNcpRegisterPeekPokeDelagates(otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate)
void
تسجِّل هذه الطريقة دالات مفوَّضة/غير واضحة مع وحدة NCP.
otNcpSpiInit(otInstance *aInstance)
void
إعداد NCP استنادًا إلى إطار SPI.
otNcpStreamWrite(int aStreamId, const uint8_t *aDataPtr, int aDataLen)
إرسال البيانات إلى المضيف من خلال مصدر بيانات محدّد

التشريعات

otNcpLegacyHandler

لتعريف بنية تحتوي على جميع المعالجات القديمة (مؤشرات الدوال).

مواقد الخط

otNcpDelegateAllowPeekPoke

bool(* otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount)

تحدّد هذه الوسيطة نوع المفوَّض (الوظيفة الدالة) للتحكُّم في سلوك إلقاء نظرة خاطفة/عملية poke.

وتُسمَّى وظيفة التفويض هذه لتحديد ما إذا كان سيتم السماح بإلقاء نظرة خاطفة على منطقة ذاكرة معيّنة أو خريقها. يُستخدَم هذا الإعداد في حال تفعيل دعم NCP لأوامر Look/Poke.

التفاصيل
المعلَمات
[in] aAddress
عنوان منطقة الذاكرة.
[in] aCount
عدد وحدات البايت للنظرة السريعة أو التعتيم.
طلبات الإرجاع
TRUE للسماح بنظرة سريعة/خانة من منطقة الذاكرة المحددة، أو خطأ بخلاف ذلك.

otNcpHandlerJoinLegacyNode

void(* otNcpHandlerJoinLegacyNode)(const otExtAddress *aExtAddress)

لتعريف نوع المعالج (مؤشر الدالة) لبدء عملية الانضمام.

تم استدعاء لبدء إجراء ربط قديم إلى أي عقدة أو عُقدة معينة.

التفاصيل
المعلَمات
[in] aExtAddress
إشارة إلى العنوان الموسّع للعقدة للانضمام أو إلى فارغ إذا كنت ترغب في الانضمام إلى أي عقدة مجاورة.

otNcpHandlerSetLegacyulaPrefix

void(* otNcpHandlerSetLegacyUlaPrefix)(const uint8_t *aUlaPrefix)

لتعريف نوع المعالج (مؤشر الدالة) لإعداد بادئة ULA القديمة.

تم استدعاء تعيين بادئة ULA القديمة.

التفاصيل
المعلَمات
[in] aUlaPrefix
مؤشر إلى المخزن المؤقت يحتوي على بادئة ULA القديمة.

otNcpHandlerStartLegacy

void(* otNcpHandlerStartLegacy)(void)

لتعريف نوع المعالج (مؤشر الدالة) لبدء شبكة قديمة.

تم استدعاء لتشغيل الشبكة القديمة.

otNcpHandlerStopLegacy

void(* otNcpHandlerStopLegacy)(void)

لتعريف نوع المعالج (مؤشر الدالة) لإيقاف شبكة قديمة.

تم استدعاء لإيقاف الشبكة القديمة.

otNcpHdlcSendCallback

int(* otNcpHdlcSendCallback)(const uint8_t *aBuf, uint16_t aBufLength)

يُستخدم مؤشر الدالة هذا لإرسال بيانات NCP بترميز HDLC.

التفاصيل
المعلَمات
[in] aBuf
مؤشر إلى مخزن مؤقت يحتوي على إخراج.
[in] aBufLength
طول بيانات الإخراج المخزنة في المخزن المؤقت.
طلبات الإرجاع
عدد وحدات البايت التي تمت معالجتها بواسطة رد الاتصال.

otNcpLegacyHandler

struct otNcpLegacyHandlers otNcpLegacyHandlers

لتعريف بنية تحتوي على جميع المعالجات القديمة (مؤشرات الدوال).

الدوال

otNcpHandleDoneReceiveNewLegacyLaPrefix

void otNcpHandleDidReceiveNewLegacyUlaPrefix(
  const uint8_t *aUlaPrefix
)

يتم استدعاء رد الاتصال هذا من خلال حِزمة البيانات القديمة لإشعارك بأن بادئة ULA القديمة قد تم تغييرها.

التفاصيل
المعلَمات
[in] aUlaPrefix
مؤشر إلى بادئة رسالة ULA المُستلَمة

otNcpHandleLegacyNodeDoneJoin

void otNcpHandleLegacyNodeDidJoin(
  const otExtAddress *aExtAddr
)

يستدعي هذا معاودة الاتصال الحزمة القديمة لإعلامها بأنّ عقدة جديدة قديمة قد انضمّت إلى الشبكة.

التفاصيل
المعلَمات
[in] aExtAddr
مؤشر للعقدة الموسّعة.

otNcpHdlcInit

void otNcpHdlcInit(
  otInstance *aInstance,
  otNcpHdlcSendCallback aSendCallback
)

تهيئة NCP استنادًا إلى إطار HDLC

التفاصيل
المعلَمات
[in] aInstance
بنية المثال المفتوح.
[in] aSendCallback
مؤشر الدالة المستخدَم لإرسال بيانات NCP.

otNcpHdlcReceive

void otNcpHdlcReceive(
  const uint8_t *aBuf,
  uint16_t aBufLength
)

ويتم استدعاء هذه الدالة بعد استلام بيانات NCP ذات الترميز HDLC.

التفاصيل
المعلَمات
[in] aBuf
مؤشر إلى المخزن المؤقت.
[in] aBufLength
طول البيانات المخزنة في المخزن المؤقت.

otNcpHdlcSendDone

void otNcpHdlcSendDone(
  void
)

يتم استدعاء هذه الدالة بعد انتهاء إرسال NCP.

otNcpPlatLogv

void otNcpPlatLogv(
  otLogLevel aLogLevel,
  otLogRegion aLogRegion,
  const char *aFormat,
  va_list aArgs
)

كتابة سجل سلسلة المحادثات باستخدام otNcpStreamWrite.

التفاصيل
المعلَمات
[in] aLogLevel
مستوى السجل.
[in] aLogRegion
منطقة السجلّ.
[in] aFormat
مؤشر إلى سلسلة التنسيق
[in] aArgs
va_list تطابق aFormat.

otNcpRegisterLegacyHandler

void otNcpRegisterLegacyHandlers(
  const otNcpLegacyHandlers *aHandlers
)

تسجِّل هذه الطريقة مجموعة من المعالجات القديمة باستخدام NCP.

يتم استخدام مجموعة المعالجات التي توفرها البنية aHandlers بواسطة رمز NCP لبدء/إيقاف الشبكة القديمة. يمكن أن يكون aHandlers فارغًا لإيقاف الدعم القديم على NCP. يمكن أن تكون المعالجات الفردية في بنية المعالجات المحددة فارغة أيضًا.

التفاصيل
المعلَمات
[in] aHandlers
مؤشر إلى بنية المعالج.

otNcpRegisterPeekPokeDelatates

void otNcpRegisterPeekPokeDelagates(
  otNcpDelegateAllowPeekPoke aAllowPeekDelegate,
  otNcpDelegateAllowPeekPoke aAllowPokeDelegate
)

تسجِّل هذه الطريقة دالات مفوَّضة/غير واضحة مع وحدة NCP.

يتم استدعاء دوال المفوَّض من خلال وحدة NCP لتحديد ما إذا كان سيتم السماح بنظرة سريعة على منطقة ذاكرة معيَّنة أو خريقها. في حال ضبط مؤشر المفوَّض على القيمة "خالٍ"، يسمح ذلك بعملية/نظرة سريعة على أي عنوان.

التفاصيل
المعلَمات
[in] aAllowPeekDelegate
تفويض مؤشر الدالة لتشغيل عملية إلقاء نظرة سريعة.
[in] aAllowPokeDelegate
تفويض مؤشر الدالة لتشغيل وظيفة الخيط.

otNcpSpiInit

void otNcpSpiInit(
  otInstance *aInstance
)

إعداد NCP استنادًا إلى إطار SPI.

التفاصيل
المعلَمات
[in] aInstance
بنية المثال المفتوح.

otNcpStreamWrite

otError otNcpStreamWrite(
  int aStreamId,
  const uint8_t *aDataPtr,
  int aDataLen
)

إرسال البيانات إلى المضيف من خلال مصدر بيانات محدّد

تحاول هذه الدالة إرسال البيانات المحدّدة إلى المضيف باستخدام رقم تعريف مصدر بيانات معيّن. ويُعدّ هذا مفيدًا للإبلاغ عن رسائل الخطأ، وتطبيق وحدات التحكم في تصحيح الأخطاء/بيانات التشخيص، والأنواع الأخرى المحتملة من مصادر البيانات.

يُسمح بالكتابة بالكامل أو رفضها. لا تتم محاولة الكتابة جزئيًا.

التفاصيل
المعلَمات
[in] aStreamId
معرّف رقمي لمجموعة البث للكتابة عليه. في حال الضبط على "0"، سيتم الضبط تلقائيًا على مصدر تصحيح الأخطاء.
[in] aDataPtr
مؤشر إلى البيانات المُراد إرسالها في ساحة المشاركات. إذا كانت قيمة DataDataLen غير صفرية، يجب ألا تكون هذه المعلمة فارغة.
[in] aDataLen
عدد وحدات البايت للبيانات من aDataPtr التي يتم إرسالها.
قيم الإرجاع
OT_ERROR_NONE
تم وضع البيانات في قائمة الانتظار للتسليم إلى المضيف.
OT_ERROR_BUSY
لا تتوفّر موارد كافية لإكمال هذا الطلب. وعادةً ما تكون هذه الحالة مؤقتة.
OT_ERROR_INVALID_ARGS
معرّف StreamStream المحدد غير صالح.

وحدات ماكرو

OT_NCP_LEGACY_ULA_Prefix_LENGTH

 OT_NCP_LEGACY_ULA_PREFIX_LENGTH 8

حجم ULA القديم (بالبايت)

المراجع

تنشأ مواضيع واجهة برمجة التطبيقات المرجعية لـ OpenThread من رمز المصدر، المتوفر على GitHub. للاطّلاع على مزيد من المعلومات أو للمساهمة في مستنداتنا، يُرجى الرجوع إلى المراجع.