Google is committed to advancing racial equity for Black communities. See how.

عملية

تتضمن هذه الوحدة تجريد المنصة لعمليات الراديو.

ملخص

المهام

otPlatDiagRadioReceiveDone ( otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار وحدة تشخيص OpenThread بالإطار المستلم.
otPlatDiagRadioTransmitDone ( otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار وحدة تشخيص OpenThread بأن الإرسال قد اكتمل.
otPlatRadioAddSrcMatchExtEntry ( otInstance *aInstance, const otExtAddress *aExtAddress)
أضف عنوانًا موسعًا إلى جدول مطابقة عنوان المصدر.
otPlatRadioAddSrcMatchShortEntry ( otInstance *aInstance, otShortAddress aShortAddress)
أضف عنوانًا قصيرًا إلى جدول مطابقة عنوان المصدر.
otPlatRadioClearSrcMatchExtEntries ( otInstance *aInstance)
void
امسح كافة العناوين الممتدة / الطويلة من جدول مطابقة عنوان المصدر.
otPlatRadioClearSrcMatchExtEntry ( otInstance *aInstance, const otExtAddress *aExtAddress)
قم بإزالة العنوان الممتد من جدول مطابقة عنوان المصدر.
otPlatRadioClearSrcMatchShortEntries ( otInstance *aInstance)
void
امسح كافة العناوين القصيرة من جدول مطابقة عنوان المصدر.
otPlatRadioClearSrcMatchShortEntry ( otInstance *aInstance, otShortAddress aShortAddress)
قم بإزالة عنوان قصير من جدول مطابقة عنوان المصدر.
otPlatRadioConfigureEnhAckProbing ( otInstance *aInstance, otLinkMetrics aLinkMetrics, otShortAddress aShortAddress, const otExtAddress *aExtAddress)
تمكين / تعطيل أو تحديث التحقق المعتمد على ACK المعزز في الراديو لبادئ معين.
otPlatRadioDisable ( otInstance *aInstance)
تعطيل الراديو.
otPlatRadioEnable ( otInstance *aInstance)
قم بتمكين الراديو.
otPlatRadioEnableCsl ( otInstance *aInstance, uint32_t aCslPeriod, otShortAddress aShortAddr, const otExtAddress *aExtAddr)
تمكين أو تعطيل مستقبل CSL.
otPlatRadioEnableSrcMatch ( otInstance *aInstance, bool aEnable)
void
تمكين / تعطيل ميزة مطابقة عنوان المصدر.
otPlatRadioEnergyScan ( otInstance *aInstance, uint8_t aScanChannel, uint16_t aScanDuration)
ابدأ تسلسل مسح الطاقة على الراديو.
otPlatRadioEnergyScanDone ( otInstance *aInstance, int8_t aEnergyScanMaxRssi)
void
يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار OpenThread بأن فحص الطاقة قد اكتمل.
otPlatRadioGetCoexMetrics ( otInstance *aInstance, otRadioCoexMetrics *aCoexMetrics)
احصل على مقاييس التعايش اللاسلكي.
otPlatRadioGetCslAccuracy ( otInstance *aInstance)
uint8_t
احصل على الدقة الحالية ، بوحدات ± جزء في المليون ، للساعة المستخدمة لجدولة عمليات CSL.
otPlatRadioGetCslClockUncertainty ( otInstance *aInstance)
uint8_t
احصل على عدم اليقين الحالي ، بوحدات 10 دولارات أمريكية ، للساعة المستخدمة لجدولة عمليات CSL.
otPlatRadioGetPreferredChannelMask ( otInstance *aInstance)
uint32_t
احصل على قناع القناة المفضل للراديو الذي يفضل الجهاز تشكيله.
otPlatRadioGetRegion ( otInstance *aInstance, uint16_t *aRegionCode)
احصل على رمز المنطقة.
otPlatRadioGetRssi ( otInstance *aInstance)
int8_t
احصل على أحدث قياس لـ RSSI.
otPlatRadioGetState ( otInstance *aInstance)
احصل على الحالة الحالية للراديو.
otPlatRadioGetSupportedChannelMask ( otInstance *aInstance)
uint32_t
احصل على قناع القناة المدعوم من الراديو الذي يُسمح للجهاز بتشغيله.
otPlatRadioGetTransmitBuffer ( otInstance *aInstance)
احصل على المخزن المؤقت لإطار الإرسال اللاسلكي.
otPlatRadioIsCoexEnabled ( otInstance *aInstance)
bool
تحقق مما إذا كان راديو coex ممكّنًا أم لا.
otPlatRadioIsEnabled ( otInstance *aInstance)
bool
تحقق مما إذا كان الراديو ممكّنًا أم لا.
otPlatRadioReceive ( otInstance *aInstance, uint8_t aChannel)
انقل الراديو من وضع السكون إلى الاستقبال (قم بتشغيل الراديو).
otPlatRadioReceiveAt ( otInstance *aInstance, uint8_t aChannel, uint32_t aStart, uint32_t aDuration)
جدولة نافذة استقبال الراديو في وقت ومدة محددين.
otPlatRadioReceiveDone ( otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار OpenThread بالإطار المستلم.
otPlatRadioSetChannelMaxTransmitPower ( otInstance *aInstance, uint8_t aChannel, int8_t aMaxPower)
اضبط أقصى قوة إرسال لقناة معينة.
otPlatRadioSetCoexEnabled ( otInstance *aInstance, bool aEnabled)
قم بتمكين راديو coex.
otPlatRadioSetRegion ( otInstance *aInstance, uint16_t aRegionCode)
قم بتعيين رمز المنطقة.
otPlatRadioSleep ( otInstance *aInstance)
انقل الراديو من الاستقبال إلى وضع السكون (قم بإيقاف تشغيل الراديو).
otPlatRadioTransmit ( otInstance *aInstance, otRadioFrame *aFrame)
ابدأ تسلسل الإرسال على الراديو.
otPlatRadioTxDone ( otInstance *aInstance, otRadioFrame *aFrame, otRadioFrame *aAckFrame, otError aError)
void
يستدعي مشغل الراديو هذه الوظيفة لإخطار OpenThread بأن عملية الإرسال قد اكتملت ، مما يوفر كلاً من الإطار المرسل وإطار ack المستلم ، إن أمكن.
otPlatRadioTxStarted ( otInstance *aInstance, otRadioFrame *aFrame)
void
يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار OpenThread بأن الإرسال قد بدأ.
otPlatRadioUpdateCslSampleTime ( otInstance *aInstance, uint32_t aCslSampleTime)
void
تحديث وقت عينة CSL في برنامج تشغيل الراديو.

المهام

otPlatDiagRadioReceive تم

void otPlatDiagRadioReceiveDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار وحدة تشخيص OpenThread بالإطار المستلم.

تُستخدم هذه الوظيفة عند تمكين التشخيصات.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aFrame
مؤشر للإطار المستلم أو NULL إذا فشلت عملية الاستلام.
[in] aError
OT_ERROR_NONE عند تلقي إطار بنجاح ، OT_ERROR_ABORT عندما تم إحباط الاستقبال ولم يتم استلام إطار ، OT_ERROR_NO_BUFS عندما تعذر استقبال إطار بسبب نقص مساحة المخزن المؤقت rx.

otPlatDiagRadioTransmit القيام به

void otPlatDiagRadioTransmitDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار وحدة تشخيص OpenThread بأن الإرسال قد اكتمل.

تُستخدم هذه الوظيفة عند تمكين التشخيصات.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aFrame
مؤشر للإطار الذي تم إرساله.
[in] aError
OT_ERROR_NONE عندما تم إرسال الإطار ، OT_ERROR_CHANNEL_ACCESS_FAILURE tx لا يمكن أن يحدث بسبب نشاط على القناة ، OT_ERROR_ABORT عندما تم إحباط الإرسال لأسباب أخرى.

otPlatRadioAddSrcMatchExtEntry

otError otPlatRadioAddSrcMatchExtEntry(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

أضف عنوانًا موسعًا إلى جدول مطابقة عنوان المصدر.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aExtAddress
يتم تخزين العنوان الموسع المراد إضافته بترتيب بايت صغير الحجم.
إرجاع القيم
OT_ERROR_NONE
تمت إضافة العنوان الممتد بنجاح إلى جدول مطابقة المصدر.
OT_ERROR_NO_BUFS
لا يوجد إدخال متاح في جدول مطابقة المصدر.

otPlatRadioAddSrcMatchShortEntry

otError otPlatRadioAddSrcMatchShortEntry(
  otInstance *aInstance,
  otShortAddress aShortAddress
)

أضف عنوانًا قصيرًا إلى جدول مطابقة عنوان المصدر.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aShortAddress
العنوان القصير المراد إضافته.
إرجاع القيم
OT_ERROR_NONE
تمت إضافة العنوان المختصر إلى جدول مطابقة المصدر بنجاح.
OT_ERROR_NO_BUFS
لا يوجد إدخال متاح في جدول مطابقة المصدر.

إدخالات otPlatRadioClearSrcMatchExt

void otPlatRadioClearSrcMatchExtEntries(
  otInstance *aInstance
)

امسح كافة العناوين الممتدة / الطويلة من جدول مطابقة عنوان المصدر.

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

otPlatRadioClearSrcMatchExtEntry

otError otPlatRadioClearSrcMatchExtEntry(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

قم بإزالة العنوان الممتد من جدول مطابقة عنوان المصدر.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aExtAddress
يتم تخزين العنوان الممتد المراد إزالته بترتيب بايت صغير الحجم.
إرجاع القيم
OT_ERROR_NONE
تمت إزالة العنوان الممتد بنجاح من جدول مطابقة المصدر.
OT_ERROR_NO_ADDRESS
العنوان الممتد ليس في جدول مطابقة عنوان المصدر.

otPlatRadioClearSrcMatchShortE Entries

void otPlatRadioClearSrcMatchShortEntries(
  otInstance *aInstance
)

امسح كافة العناوين القصيرة من جدول مطابقة عنوان المصدر.

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

otPlatRadioClearSrcMatchShortEntry

otError otPlatRadioClearSrcMatchShortEntry(
  otInstance *aInstance,
  otShortAddress aShortAddress
)

قم بإزالة عنوان قصير من جدول مطابقة عنوان المصدر.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aShortAddress
العنوان القصير المراد إزالته.
إرجاع القيم
OT_ERROR_NONE
تمت إزالة العنوان القصير بنجاح من جدول مطابقة المصدر.
OT_ERROR_NO_ADDRESS
العنوان المختصر ليس في جدول مطابقة عنوان المصدر.

otPlatRadioConfigureEnhAckProbing

otError otPlatRadioConfigureEnhAckProbing(
  otInstance *aInstance,
  otLinkMetrics aLinkMetrics,
  otShortAddress aShortAddress,
  const otExtAddress *aExtAddress
)

تمكين / تعطيل أو تحديث التحقق المعتمد على ACK المعزز في الراديو لبادئ معين.

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

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aLinkMetrics
تحدد هذه المعلمة المقاييس المطلوب الاستعلام عنها. حسب المواصفات 4.11.3.4.4.6 ، يمكن تحديد مقياسين على الأكثر. ان التحقيق يتم تعطيل إذا aLinkMetrics هي المختصة بالبت 0.
[in] aShortAddr
العنوان المختصر لبادئ الفحص.
[in] aExtAddr
عنوان المصدر الممتد الخاص بادئ الاختبار. aExtAddr يجب ألا NULL .
إرجاع القيم
OT_ERROR_NONE
تم بنجاح تكوين الفحص المستند إلى ACK المحسن.
OT_ERROR_INVALID_ARGS
aExtAddress غير NULL .
OT_ERROR_NOT_FOUND
أشار المبادر من قبل aShortAddress لم يتم العثور عند محاولة مسح.
OT_ERROR_NO_BUFS
لا يمكن دعم المزيد من البادئ.

otPlatRadioDisable

otError otPlatRadioDisable(
  otInstance *aInstance
)

تعطيل الراديو.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
إرجاع القيم
OT_ERROR_NONE
تم الانتقال بنجاح إلى معطل.
OT_ERROR_INVALID_STATE
لم يكن الراديو في حالة سكون.

otPlatRadioEnable

otError otPlatRadioEnable(
  otInstance *aInstance
)

قم بتمكين الراديو.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
إرجاع القيم
OT_ERROR_NONE
تم التمكين بنجاح.
OT_ERROR_FAILED
لا يمكن تمكين الراديو.

otPlatRadioEnableCl

otError otPlatRadioEnableCsl(
  otInstance *aInstance,
  uint32_t aCslPeriod,
  otShortAddress aShortAddr,
  const otExtAddress *aExtAddr
)

تمكين أو تعطيل مستقبل CSL.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aCslPeriod
فترة CSL ، 0 لتعطيل CSL.
[in] aShortAddr
عنوان المصدر القصير لنظير مستقبل CSL.
[in] aExtAddr
عنوان المصدر الممتد لنظير مستقبل CSL.
إرجاع القيم
kErrorNotImplemented
لا يدعم برنامج تشغيل الراديو CSL.
kErrorFailed
أخطاء أخرى خاصة بالنظام الأساسي.
kErrorNone
تم تمكين CSL أو تعطيله بنجاح.

otPlatRadioEnableSrcMatch

void otPlatRadioEnableSrcMatch(
  otInstance *aInstance,
  bool aEnable
)

تمكين / تعطيل ميزة مطابقة عنوان المصدر.

تتحكم ميزة مطابقة عنوان المصدر في كيفية قيام طبقة الراديو بتحديد بت "الإطار المعلق" لـ acks المرسلة استجابة لأوامر طلب البيانات من الأطفال.

إذا تم تعطيلها ، يجب أن تقوم طبقة الراديو بتعيين "الإطار المعلق" على جميع أوامر طلب البيانات.

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

يوفر جدول مطابقة عنوان المصدر قائمة العناصر الفرعية التي يوجد إطار معلق لها. يمكن إضافة عنوان قصير أو عنوان ممتد / طويل إلى جدول مطابقة عنوان المصدر.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aEnable
تمكين / تعطيل ميزة مطابقة عنوان المصدر.

otPlatRadioEnergyScan

otError otPlatRadioEnergyScan(
  otInstance *aInstance,
  uint8_t aScanChannel,
  uint16_t aScanDuration
)

ابدأ تسلسل مسح الطاقة على الراديو.

تُستخدم هذه الوظيفة عندما يوفر الراديو إمكانية OT_RADIO_CAPS_ENERGY_SCAN.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aScanChannel
القناة المراد مسح الطاقة عليها.
[in] aScanDuration
المدة بالمللي ثانية للقناة المراد فحصها.
إرجاع القيم
OT_ERROR_NONE
بدأ مسح القناة بنجاح.
OT_ERROR_NOT_IMPLEMENTED
الراديو لا يدعم مسح الطاقة.

otPlatRadioEnergyScan فعلت

void otPlatRadioEnergyScanDone(
  otInstance *aInstance,
  int8_t aEnergyScanMaxRssi
)

يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار OpenThread بأن فحص الطاقة قد اكتمل.

تُستخدم هذه الوظيفة عندما يوفر الراديو إمكانية OT_RADIO_CAPS_ENERGY_SCAN.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aEnergyScanMaxRssi
تمت مصادفة الحد الأقصى لـ RSSI على القناة الممسوحة ضوئيًا.

otPlatRadioGetCoexMetrics

otError otPlatRadioGetCoexMetrics(
  otInstance *aInstance,
  otRadioCoexMetrics *aCoexMetrics
)

احصل على مقاييس التعايش اللاسلكي.

تُستخدم هذه الوظيفة عند تمكين الميزة OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[out] aCoexMetrics
مؤشر إلى بنية مقاييس التعايش.
إرجاع القيم
OT_ERROR_NONE
تم استرداد مقاييس coex بنجاح.
OT_ERROR_INVALID_ARGS
aCoexMetrics كان NULL.

otPlatRadioGetCslAccuracy

uint8_t otPlatRadioGetCslAccuracy(
  otInstance *aInstance
)

احصل على الدقة الحالية ، بوحدات ± جزء في المليون ، للساعة المستخدمة لجدولة عمليات CSL.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
الانجراف الحالي لجدولة CSL rx / tx ، بوحدات من ± جزء في المليون.

otPlatRadioGetCslClock غير مؤكد

uint8_t otPlatRadioGetCslClockUncertainty(
  otInstance *aInstance
)

احصل على عدم اليقين الحالي ، بوحدات 10 دولارات أمريكية ، للساعة المستخدمة لجدولة عمليات CSL.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
عدم اليقين الحالي على مدار الساعة CSL بوحدات من 10 لنا.

otPlatRadioGetPreferredChannelMask

uint32_t otPlatRadioGetPreferredChannelMask(
  otInstance *aInstance
)

احصل على قناع القناة المفضل للراديو الذي يفضل الجهاز تشكيله.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
عائدات
قناع القناة المفضل للراديو.

otPlatRadioGetRegion

otError otPlatRadioGetRegion(
  otInstance *aInstance,
  uint16_t *aRegionCode
)

احصل على رمز المنطقة.

تنسيق منطقة الراديو هو تمثيل 2 بايت من رمز ISO 3166 alpha-2.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[out] aRegionCode
منطقة الراديو.
إرجاع القيم
OT_ERROR_INVALID_ARGS
aRegionCode هو nullptr.
OT_ERROR_FAILED
أخطاء أخرى خاصة بالنظام الأساسي.
OT_ERROR_NONE
تم الحصول على رمز المنطقة بنجاح.

otPlatRadioGetRssi

int8_t otPlatRadioGetRssi(
  otInstance *aInstance
)

احصل على أحدث قياس لـ RSSI.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
عائدات
مؤشر RSSI بالديسيبل عندما يكون صالحًا. 127 عندما يكون RSSI غير صالح.

otPlatRadioGetState

otRadioState otPlatRadioGetState(
  otInstance *aInstance
)

احصل على الحالة الحالية للراديو.

هذه الوظيفة ليست مطلوبة من قبل OpenThread. يمكن استخدامه لتصحيح الأخطاء و / أو لأغراض خاصة بالتطبيق.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
عائدات
الحالة الحالية للراديو.

otPlatRadioGetSupportedChannelMask

uint32_t otPlatRadioGetSupportedChannelMask(
  otInstance *aInstance
)

احصل على قناع القناة المدعوم من الراديو الذي يُسمح للجهاز بتشغيله.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
عائدات
قناع القناة المدعوم من الراديو.

otPlatRadioGetTransmitBuffer

otRadioFrame * otPlatRadioGetTransmitBuffer(
  otInstance *aInstance
)

احصل على المخزن المؤقت لإطار الإرسال اللاسلكي.

OpenThread يشكل 802.15.4 إطار IEEE في هذا المخزن المؤقت ثم يدعو otPlatRadioTransmit() لنقل الطلب.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
عائدات
مؤشر إلى المخزن المؤقت لإطار الإرسال.

otPlatRadioIsCoexEnabled

bool otPlatRadioIsCoexEnabled(
  otInstance *aInstance
)

تحقق مما إذا كان راديو coex ممكّنًا أم لا.

تُستخدم هذه الوظيفة عند تمكين الميزة OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
عائدات
TRUE إذا تم تمكين coex الراديو ، خطأ في خلاف ذلك.

otPlatRadioIsEnabled

bool otPlatRadioIsEnabled(
  otInstance *aInstance
)

تحقق مما إذا كان الراديو ممكّنًا أم لا.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
عائدات
TRUE إذا تم تمكين الراديو ، FALSE خلاف ذلك.

otPlatRadioReceive

otError otPlatRadioReceive(
  otInstance *aInstance,
  uint8_t aChannel
)

انقل الراديو من وضع السكون إلى الاستقبال (قم بتشغيل الراديو).

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aChannel
القناة المراد استخدامها للاستلام.
إرجاع القيم
OT_ERROR_NONE
تم الانتقال بنجاح إلى الاستلام.
OT_ERROR_INVALID_STATE
تم تعطيل الراديو أو الإرسال.

otPlatRadioReceiveAt

otError otPlatRadioReceiveAt(
  otInstance *aInstance,
  uint8_t aChannel,
  uint32_t aStart,
  uint32_t aDuration
)

جدولة نافذة استقبال الراديو في وقت ومدة محددين.

تفاصيل
العوامل
[in] aChannel
القناة الإذاعية التي سيتم استقبالها.
[in] aStart
وقت بدء نافذة الاستلام بالميكروثانية.
[in] aDuration
مدة نافذة الاستلام بالميكروثانية
إرجاع القيم
OT_ERROR_NONE
تمت جدولة نافذة الاستلام بنجاح.
OT_ERROR_FAILED
لا يمكن جدولة نافذة الاستلام.

otPlatRadioReceive تم

void otPlatRadioReceiveDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار OpenThread بالإطار المستلم.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aFrame
مؤشر للإطار المستلم أو NULL إذا فشلت عملية الاستلام.
[in] aError
OT_ERROR_NONE عند تلقي إطار بنجاح ، OT_ERROR_ABORT عندما تم إحباط الاستقبال ولم يتم استلام إطار ، OT_ERROR_NO_BUFS عندما تعذر استقبال إطار بسبب نقص مساحة المخزن المؤقت rx.

otPlatRadioSetChannelMaxTransmitPower

otError otPlatRadioSetChannelMaxTransmitPower(
  otInstance *aInstance,
  uint8_t aChannel,
  int8_t aMaxPower
)

اضبط أقصى قوة إرسال لقناة معينة.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aChannel
قناة الراديو.
[in] aMaxPower
الحد الأقصى للطاقة في ديسيبل ، تمرير OT_RADIO_RSSI_INVALID سيعطل هذه القناة.
إرجاع القيم
OT_ERROR_NOT_IMPLEMENTED
لم يتم تنفيذ الميزة
OT_ERROR_INVALID_ARGS
القناة المحددة غير صالحة.
OT_ERROR_FAILED
أخطاء أخرى خاصة بالنظام الأساسي.
OT_ERROR_NONE
تم بنجاح تعيين أقصى قدرة إرسال.

otPlatRadioSetCoexEnabled

otError otPlatRadioSetCoexEnabled(
  otInstance *aInstance,
  bool aEnabled
)

قم بتمكين راديو coex.

تُستخدم هذه الوظيفة عند تمكين الميزة OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aEnabled
TRUE لتمكين coex الراديو ، FALSE خلاف ذلك.
إرجاع القيم
OT_ERROR_NONE
تم التمكين بنجاح.
OT_ERROR_FAILED
لا يمكن تمكين coex الراديو.

otPlatRadioSetRegion

otError otPlatRadioSetRegion(
  otInstance *aInstance,
  uint16_t aRegionCode
)

قم بتعيين رمز المنطقة.

تنسيق منطقة الراديو هو تمثيل 2 بايت من رمز ISO 3166 alpha-2.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aRegionCode
منطقة الراديو.
إرجاع القيم
OT_ERROR_FAILED
أخطاء أخرى خاصة بالنظام الأساسي.
OT_ERROR_NONE
تم تعيين رمز المنطقة بنجاح.

otPlatRadio النوم

otError otPlatRadioSleep(
  otInstance *aInstance
)

انقل الراديو من الاستقبال إلى وضع السكون (قم بإيقاف تشغيل الراديو).

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
إرجاع القيم
OT_ERROR_NONE
انتقلت بنجاح إلى وضع السكون.
OT_ERROR_BUSY
كان الراديو يبث.
OT_ERROR_INVALID_STATE
تم تعطيل الراديو.

otPlatRadioTransmit

otError otPlatRadioTransmit(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

ابدأ تسلسل الإرسال على الراديو.

المتصل يجب أن تشكل إطار IEEE 802.15.4 في المنطقة العازلة التي تقدمها otPlatRadioGetTransmitBuffer() قبل طلب النقل. كما تشمل القناة ونقل الطاقة في otRadioFrame هيكل.

يتكون تسلسل الإرسال من:

  1. انتقال الراديو للإرسال من إحدى الحالات التالية:
    • استلم إذا كان RX قيد التشغيل عندما يكون الجهاز في وضع الخمول أو OT_RADIO_CAPS_SLEEP_TO_TX غير مدعوم
    • وضع السكون في حالة إيقاف تشغيل RX عندما يكون الجهاز في وضع الخمول ويتم دعم OT_RADIO_CAPS_SLEEP_TO_TX.
  2. ينقل psdu على القناة المحددة وبقدرة الإرسال المحددة.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aFrame
مؤشر للإطار المراد إرساله.
إرجاع القيم
OT_ERROR_NONE
تم الانتقال بنجاح إلى الإرسال.
OT_ERROR_INVALID_STATE
لم يكن الراديو في حالة الاستقبال.

otPlatRadioTxDone

void otPlatRadioTxDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otRadioFrame *aAckFrame,
  otError aError
)

يستدعي مشغل الراديو هذه الوظيفة لإخطار OpenThread بأن عملية الإرسال قد اكتملت ، مما يوفر كلاً من الإطار المرسل وإطار ack المستلم ، إن أمكن.

عندما يوفر راديو OT_RADIO_CAPS_TRANSMIT_SEC القدرة، طبقة منصة الإذاعة بتحديث aFrame مع العداد إطار الأمن والقيم مؤشر الرئيسية التي تحتفظ بها الراديو.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aFrame
مؤشر للإطار الذي تم إرساله.
[in] aAckFrame
مؤشر إلى إطار ACK ، NULL إذا لم يتم تلقي ACK.
[in] aError
OT_ERROR_NONE عندما تم إرسال الإطار ، OT_ERROR_NO_ACK عندما تم إرسال الإطار ولكن لم يتم استلام ACK ، OT_ERROR_CHANNEL_ACCESS_FAILURE tx لا يمكن أن يحدث بسبب نشاط على القناة ، OT_ERROR_ABORT عندما تم إحباط الإرسال لأسباب أخرى.

بدأت otPlatRadioTx

void otPlatRadioTxStarted(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

يستدعي برنامج تشغيل الراديو هذه الطريقة لإخطار OpenThread بأن الإرسال قد بدأ.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى بنية مثيل OpenThread.
[in] aFrame
مؤشر للإطار الذي يتم إرساله.

otPlatRadioUpdateClSampleTime

void otPlatRadioUpdateCslSampleTime(
  otInstance *aInstance,
  uint32_t aCslSampleTime
)

تحديث وقت عينة CSL في برنامج تشغيل الراديو.

يتم تخزين الوقت النموذجي في برنامج تشغيل الراديو كنسخة لحساب المرحلة عند إرسال ACK باستخدام CSL IE.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aCslSampleTime
أحدث وقت عينة.