معالج مساعد للشبكة

تشتمل هذه الوحدة على وظائف تتحكم في تنفيذ حزمة Thread.

ملخّص

تحديدات النوع

otNcpDelegateAllowPeekPoke)(uint32_t aAddress, uint16_t aCount) typedef
bool(*
تحدد هذه السمة نوع التفويض (مؤشر دالة) للتحكم في سلوك التشغيل الخاطف/الخاطفة.
otNcpHdlcSendCallback)(const uint8_t *aBuf, uint16_t aBufLength) typedef
int(*
يتم استدعاء المؤشر لإرسال بيانات NCP مشفّرة بدقة عالية.

الدوال

otNcpHdlcInit(otInstance *aInstance, otNcpHdlcSendCallback aSendCallback)
void
تهيئة NCP استنادًا إلى إطارات HDLC
otNcpHdlcInitMulti(otInstance **aInstance, uint8_t aCount, 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
تكتب سجل OpenThread باستخدام otNcpStreamWrite.
otNcpRegisterPeekPokeDelegates(otNcpDelegateAllowPeekPoke aAllowPeekDelegate, otNcpDelegateAllowPeekPoke aAllowPokeDelegate)
void
لتسجيل وظائف التفويض الخاطفة/الخاطفة مع وحدة NCP.
otNcpSpiInit(otInstance *aInstance)
void
إعداد NCP استنادًا إلى إطارات واجهة SPI.
otNcpStreamWrite(int aStreamId, const uint8_t *aDataPtr, int aDataLen)
إرسال البيانات إلى المضيف من خلال مصدر بيانات محدّد

تحديدات النوع

otNcpDelegateAllowPeekPoke

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

تحدد هذه السمة نوع التفويض (مؤشر دالة) للتحكم في سلوك التشغيل الخاطف/الخاطفة.

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

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

otNcpHdlcSendCallback

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

يتم استدعاء المؤشر لإرسال بيانات NCP مشفّرة بدقة عالية.

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

الدوال

otNcpHdlcInit

void otNcpHdlcInit(
  otInstance *aInstance,
  otNcpHdlcSendCallback aSendCallback
)

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

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

otNcpHdlcInitMulti

void otNcpHdlcInitMulti(
  otInstance **aInstance,
  uint8_t aCount,
  otNcpHdlcSendCallback aSendCallback
)

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

التفاصيل
المَعلمات
[in] aInstances
مصفوفة مؤشرات مثيل OpenThread
[in] aCount
عدد العناصر في الصفيفة
[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
)

تكتب سجل OpenThread باستخدام otNcpStreamWrite.

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

otNcpRegisterPeekPokeDelegates

void otNcpRegisterPeekPokeDelegates(
  otNcpDelegateAllowPeekPoke aAllowPeekDelegate,
  otNcpDelegateAllowPeekPoke aAllowPokeDelegate
)

لتسجيل وظائف التفويض الخاطفة/الخاطفة مع وحدة NCP.

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

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

otNcpSpiInit

void otNcpSpiInit(
  otInstance *aInstance
)

إعداد NCP استنادًا إلى إطارات واجهة SPI.

التفاصيل
المَعلمات
[in] aInstance
بنية النسخة الافتراضية OpenThread

otNcpStreamWrite

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

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

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

يتم قبول الكتابة بالكامل أو رفضها. ولا تتم محاولة إجراء عمليات كتابة جزئية.

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

المراجِع

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