ปฏิบัติการวิทยุ
โมดูลนี้มีกระบวนการ Abstraction ของแพลตฟอร์มสำหรับการปฏิบัติงานทางวิทยุ
สรุป
ฟังก์ชัน |
|
---|---|
otPlatDiagRadioReceiveDone(otInstance *aInstance, otRadioFrame *aFrame, otError aError)
|
void
ไดรเวอร์วิทยุเรียกใช้วิธีการนี้เพื่อแจ้งโมดูลการวินิจฉัย OpenThread เกี่ยวกับเฟรมที่ได้รับ
|
otPlatDiagRadioTransmitDone(otInstance *aInstance, otRadioFrame *aFrame, otError aError)
|
void
คนขับวิทยุเรียกวิธีการนี้เพื่อแจ้งโมดูลการวินิจฉัย OpenThread ว่าการส่งข้อมูลเสร็จสมบูรณ์แล้ว
|
otPlatRadioAddCalibratedPower(otInstance *aInstance, uint8_t aChannel, int16_t aActualPower, const uint8_t *aRawPowerSetting, uint16_t aRawPowerSettingLength)
|
เพิ่มกำลังที่ปรับเทียบของช่องที่ระบุไปยังตารางการปรับเทียบพลังงาน
|
otPlatRadioAddSrcMatchExtEntry(otInstance *aInstance, const otExtAddress *aExtAddress)
|
เพิ่มที่อยู่ที่ขยายลงในตารางการจับคู่ที่อยู่ต้นทาง
|
otPlatRadioAddSrcMatchShortEntry(otInstance *aInstance, otShortAddress aShortAddress)
|
เพิ่มที่อยู่แบบสั้นในตารางการจับคู่ที่อยู่ต้นทาง
|
otPlatRadioClearCalibratedPowers(otInstance *aInstance)
|
ล้างค่ากำลังที่ปรับเทียบทั้งหมดออกจากตารางการปรับเทียบพลังงาน
|
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)
|
เปิด/ปิดใช้งานหรืออัปเดตการตรวจสอบแบบปรับปรุงแล้วในวิทยุสำหรับ Initiator ที่ระบุ
|
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
รับความแม่นยำของกล่องที่แย่ที่สุดโดยประมาณในปัจจุบัน (ความเบี่ยงเบนสูงสุด ± ค่าเบี่ยงเบนจากความถี่น้อย) ของนาฬิกาวิทยุท้องถิ่นในหน่วย PPM
|
otPlatRadioGetCslUncertainty(otInstance *aInstance)
|
uint8_t
ความไม่แน่นอนแบบคงที่ (เช่น
|
otPlatRadioGetPreferredChannelMask(otInstance *aInstance)
|
uint32_t
รับมาสก์ช่องแบบวิทยุที่อุปกรณ์ต้องการสร้าง
|
otPlatRadioGetRawPowerSetting(otInstance *aInstance, uint8_t aChannel, uint8_t *aRawPowerSetting, uint16_t *aRawPowerSettingLength)
|
รับการตั้งค่าพลังงานดิบสำหรับช่องที่ระบุ
|
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)
|
ตั้งค่ากำลังส่งสูงสุดสำหรับช่องใดช่องหนึ่ง
|
otPlatRadioSetChannelTargetPower(otInstance *aInstance, uint8_t aChannel, int16_t aTargetPower)
|
ตั้งค่าพลังงานเป้าหมายสำหรับแชแนลที่ระบุ
|
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 ในไดรเวอร์วิทยุ
|
ฟังก์ชัน
otPlatDiagRadioReceiveDone
void otPlatDiagRadioReceiveDone( otInstance *aInstance, otRadioFrame *aFrame, otError aError )
ไดรเวอร์วิทยุเรียกใช้วิธีการนี้เพื่อแจ้งโมดูลการวินิจฉัย OpenThread เกี่ยวกับเฟรมที่ได้รับ
ใช้เมื่อเปิดใช้การวินิจฉัย
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
otPlatDiagRadioTransmitDone
void otPlatDiagRadioTransmitDone( otInstance *aInstance, otRadioFrame *aFrame, otError aError )
คนขับวิทยุเรียกวิธีการนี้เพื่อแจ้งโมดูลการวินิจฉัย OpenThread ว่าการส่งข้อมูลเสร็จสมบูรณ์แล้ว
ใช้เมื่อเปิดใช้การวินิจฉัย
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
otPlatRadioAddCalibratedPower
otError otPlatRadioAddCalibratedPower( otInstance *aInstance, uint8_t aChannel, int16_t aActualPower, const uint8_t *aRawPowerSetting, uint16_t aRawPowerSettingLength )
เพิ่มกำลังที่ปรับเทียบของช่องที่ระบุไปยังตารางการปรับเทียบพลังงาน
aActualPower
คือกำลังขาออกจริงที่วัดได้เมื่อพารามิเตอร์ของโมดูลฮาร์ดแวร์วิทยุตั้งค่าเป็น aRawPowerSetting
การตั้งค่าพลังงานดิบคืออาร์เรย์ไบต์แบบทึบแสง OpenThread ไม่ได้กำหนดรูปแบบของการตั้งค่าพลังงานดิบ รูปแบบของอุปกรณ์นี้เกี่ยวข้องกับฮาร์ดแวร์วิทยุและควรกำหนดโดยนักพัฒนาซอฟต์แวร์ในไดรเวอร์วิทยุของแพลตฟอร์ม ตัวอย่างเช่น หากฮาร์ดแวร์ของวิทยุมีทั้งชิปวิทยุและชิป FEM การตั้งค่ากำลังไฟฟ้าดิบอาจเป็นชุดค่าผสมของเครื่องบันทึกพลังงานวิทยุและค่าเกนของ FEM
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||
แสดงผลค่า |
|
otPlatRadioAddSrcMatchExtEntry
otError otPlatRadioAddSrcMatchExtEntry( otInstance *aInstance, const otExtAddress *aExtAddress )
เพิ่มที่อยู่ที่ขยายลงในตารางการจับคู่ที่อยู่ต้นทาง
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioAddSrcMatchShortEntry
otError otPlatRadioAddSrcMatchShortEntry( otInstance *aInstance, otShortAddress aShortAddress )
เพิ่มที่อยู่แบบสั้นในตารางการจับคู่ที่อยู่ต้นทาง
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioClearCalibratedPowers
otError otPlatRadioClearCalibratedPowers( otInstance *aInstance )
ล้างค่ากำลังที่ปรับเทียบทั้งหมดออกจากตารางการปรับเทียบพลังงาน
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioClearSrcMatchExtEntries
void otPlatRadioClearSrcMatchExtEntries( otInstance *aInstance )
ล้างที่อยู่แบบขยาย/ยาวทั้งหมดออกจากตารางการจับคู่ที่อยู่ต้นทาง
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
otPlatRadioClearSrcMatchExtEntry
otError otPlatRadioClearSrcMatchExtEntry( otInstance *aInstance, const otExtAddress *aExtAddress )
นําที่อยู่แบบขยายออกจากตารางการจับคู่ที่อยู่ต้นทาง
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioClearSrcMatchShortEntries
void otPlatRadioClearSrcMatchShortEntries( otInstance *aInstance )
ล้างที่อยู่แบบย่อทั้งหมดออกจากตารางการจับคู่ที่อยู่ต้นทาง
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
otPlatRadioClearSrcMatchShortEntry
otError otPlatRadioClearSrcMatchShortEntry( otInstance *aInstance, otShortAddress aShortAddress )
นำที่อยู่แบบสั้นออกจากตารางการจับคู่ที่อยู่ต้นทาง
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioConfigureEnhAckProbing
otError otPlatRadioConfigureEnhAckProbing( otInstance *aInstance, otLinkMetrics aLinkMetrics, otShortAddress aShortAddress, const otExtAddress *aExtAddress )
เปิด/ปิดใช้งานหรืออัปเดตการตรวจสอบแบบปรับปรุงแล้วในวิทยุสำหรับ Initiator ที่ระบุ
หลังจากการตรวจสอบ ACK ที่ปรับปรุงแล้วได้รับการกำหนดค่าโดยผู้เริ่มใช้การตรวจสอบเฉพาะ ค่า Enhanced-ACK ที่ส่งไปยังโหนดดังกล่าวควรมี IE เฉพาะผู้ให้บริการที่มีข้อมูลเมตริกลิงก์ วิธีนี้แจ้งให้วิทยุเริ่ม/หยุดรวบรวมข้อมูลเมตริกลิงก์และรวม IE เฉพาะผู้ให้บริการที่มีข้อมูลใน Enhanced-ACK ที่ส่งไปยังผู้เริ่มต้นการตรวจสอบ
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||
แสดงผลค่า |
|
otPlatRadioDisable
otError otPlatRadioDisable( otInstance *aInstance )
ปิดใช้วิทยุ
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioEnable
otError otPlatRadioEnable( otInstance *aInstance )
เปิดใช้วิทยุ
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioEnableCsl
otError otPlatRadioEnableCsl( otInstance *aInstance, uint32_t aCslPeriod, otShortAddress aShortAddr, const otExtAddress *aExtAddr )
เปิดหรือปิดใช้ตัวรับ CSL
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatRadioEnableSrcMatch
void otPlatRadioEnableSrcMatch( otInstance *aInstance, bool aEnable )
เปิด/ปิดใช้ฟีเจอร์การจับคู่ที่อยู่ต้นทาง
ฟีเจอร์การจับคู่ที่อยู่ต้นทางจะควบคุมวิธีที่เลเยอร์วิทยุกำหนดบิต "เฟรมที่รอดำเนินการ" สำหรับแอคที่ตอบสนองต่อคำสั่งคำขอข้อมูลจากรายการย่อย
หากปิดใช้ เลเยอร์วิทยุต้องตั้งค่า "เฟรมรอดำเนินการ" บนคำสั่งขอข้อมูลทั้งหมด
หากเปิดใช้ เลเยอร์วิทยุจะใช้ตารางการจับคู่ที่อยู่ต้นทางเพื่อระบุว่าจะตั้งค่าหรือล้างบิต "เฟรมที่รออยู่" ในคำสั่งขอข้อมูลหรือไม่
ตารางการจับคู่ที่อยู่ต้นทางจะแสดงรายการย่อยที่มีเฟรมที่รอดำเนินการ สามารถเพิ่มที่อยู่แบบสั้นหรือที่อยู่ที่ขยาย/ยาวลงในตารางการจับคู่ที่อยู่ต้นทางได้
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
otPlatRadioEnergyScan
otError otPlatRadioEnergyScan( otInstance *aInstance, uint8_t aScanChannel, uint16_t aScanDuration )
เริ่มต้นลำดับการสแกนพลังงานทางวิทยุ
ใช้เมื่อวิทยุมีความสามารถในการ OT_RADIO_CAPS_ENERGY_SCAN
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatRadioEnergyScanDone
void otPlatRadioEnergyScanDone( otInstance *aInstance, int8_t aEnergyScanMaxRssi )
ไดรเวอร์วิทยุเรียกใช้วิธีการนี้เพื่อแจ้ง OpenThread ว่าการสแกนพลังงานเสร็จสมบูรณ์แล้ว
ใช้เมื่อวิทยุมีความสามารถในการ OT_RADIO_CAPS_ENERGY_SCAN
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
otPlatRadioGetCoexMetrics
otError otPlatRadioGetCoexMetrics( otInstance *aInstance, otRadioCoexMetrics *aCoexMetrics )
ดูเมตริกการใช้งานวิทยุร่วมกัน
จะใช้เมื่อเปิดใช้งานคุณลักษณะ OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioGetCslAccuracy
uint8_t otPlatRadioGetCslAccuracy( otInstance *aInstance )
รับความแม่นยำของกล่องที่แย่ที่สุดโดยประมาณในปัจจุบัน (ความเบี่ยงเบนสูงสุด ± ค่าเบี่ยงเบนจากความถี่น้อย) ของนาฬิกาวิทยุท้องถิ่นในหน่วย PPM
นี่คือนาฬิกาที่ใช้กำหนดเวลาดำเนินการ CSL
ในกรณีที่การใช้งานไม่ได้ประมาณค่าปัจจุบัน แต่แสดงผลค่าคงที่ ค่านี้จะต้องเป็นค่าความถูกต้องในกรณีที่แย่ที่สุดเมื่อเทียบกับเงื่อนไขการทำงานที่คาดไว้ทั้งหมด (อุณหภูมิ แรงดัน ฯลฯ) ของการติดตั้งใช้งาน
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
การกำหนดเวลา CSL rx/tx ปัจจุบันจะเลื่อนใน PPM
|
otPlatRadioGetCslUncertainty
uint8_t otPlatRadioGetCslUncertainty( otInstance *aInstance )
ความไม่แน่นอนแบบคงที่ (เช่น
เสียงรบกวนแบบสุ่ม) ของเวลาถึงของการส่งข้อมูล CSL ที่อุปกรณ์นี้ได้รับในหน่วย 10 ไมโครวินาที
ค่านี้ระบุค่าเบี่ยงเบนเป็นบวกหรือค่าลบคงที่ที่แย่ที่สุดของเวลาถึงจริงๆ ของการส่งจากเวลาในการส่งที่คำนวณเมื่อเทียบกับนาฬิกาวิทยุท้องถิ่นโดยไม่ขึ้นกับเวลาที่ผ่านไป นอกจากความไม่แน่นอนที่เกิดขึ้นเมื่อเวลาผ่านไปแล้ว ตัวอย่างช่อง CSL ("หน้าต่าง RX") ต้องขยายค่าเบี่ยงเบนนี้เพิ่มเป็น 2 เท่าเพื่อให้เครื่องรับสัญญาณท้องถิ่นตรวจพบการรับส่งข้อมูลจริงหากมีเสียงรบกวนเวลาถึงที่สุ่มขึ้น
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
ความไม่แน่นอนของ CSL ในหน่วย 10 คน
|
otPlatRadioGetPreferredChannelMask
uint32_t otPlatRadioGetPreferredChannelMask( otInstance *aInstance )
รับมาสก์ช่องแบบวิทยุที่อุปกรณ์ต้องการสร้าง
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
มาสก์ช่องที่สถานีวิทยุที่ต้องการ
|
otPlatRadioGetRawPowerSetting
otError otPlatRadioGetRawPowerSetting( otInstance *aInstance, uint8_t aChannel, uint8_t *aRawPowerSetting, uint16_t *aRawPowerSettingLength )
รับการตั้งค่าพลังงานดิบสำหรับช่องที่ระบุ
เลเยอร์วิทยุของแพลตฟอร์มควรแยกวิเคราะห์การตั้งค่าพลังงานดิบตามรูปแบบที่กำหนดของเลเยอร์วิทยุ และตั้งค่าพารามิเตอร์ของโมดูลฮาร์ดแวร์วิทยุแต่ละโมดูล
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatRadioGetRegion
otError otPlatRadioGetRegion( otInstance *aInstance, uint16_t *aRegionCode )
รับรหัสภูมิภาค
รูปแบบภูมิภาคของวิทยุคือรูปแบบ 2 ไบต์ ascii ของรหัส ISO 3166 alpha-2
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatRadioGetRssi
int8_t otPlatRadioGetRssi( otInstance *aInstance )
ดูการวัด RSSI ล่าสุด
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
RSSI ใน dBm เมื่อถูกต้อง 127 เมื่อ RSSI ไม่ถูกต้อง
|
otPlatRadioGetState
otRadioState otPlatRadioGetState( otInstance *aInstance )
ดูสถานะปัจจุบันของวิทยุ
OpenThread ไม่ได้กำหนดให้ใช้ ซึ่งอาจใช้เพื่อแก้ไขข้อบกพร่องและ/หรือเพื่อวัตถุประสงค์เฉพาะแอปพลิเคชัน
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
สถานะปัจจุบันของวิทยุ
|
otPlatRadioGetSupportedChannelMask
uint32_t otPlatRadioGetSupportedChannelMask( otInstance *aInstance )
รับมาสก์ช่องวิทยุที่รองรับซึ่งอุปกรณ์ดังกล่าวใช้ได้
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
มาสก์ช่องที่วิทยุรองรับ
|
otPlatRadioGetTransmitBuffer
otRadioFrame * otPlatRadioGetTransmitBuffer( otInstance *aInstance )
รับเฟรมบัฟเฟอร์เฟรมสำหรับสัญญาณวิทยุ
OpenThread จะสร้างเฟรม IEEE 802.15.4 ในบัฟเฟอร์นี้ จากนั้นจะเรียก otPlatRadioTransmit()
เพื่อขอให้ส่ง
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
ตัวชี้ไปยังบัฟเฟอร์เฟรมที่ส่ง
|
otPlatRadioIsCoexEnabled
bool otPlatRadioIsCoexEnabled( otInstance *aInstance )
ตรวจสอบว่ามีการเปิดใช้ Coex ของวิทยุหรือไม่
จะใช้เมื่อเปิดใช้งานคุณลักษณะ OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
TRUE ถ้ามีการเปิดใช้ Coex ของวิทยุ มิฉะนั้นเป็น FALSE
|
otPlatRadioIsEnabled
bool otPlatRadioIsEnabled( otInstance *aInstance )
ตรวจสอบว่าได้เปิดใช้งานวิทยุไว้หรือไม่
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
การส่งคืน |
TRUE ถ้าเปิดใช้งานวิทยุ มิฉะนั้นจะเป็น FALSE
|
otPlatRadioReceive
otError otPlatRadioReceive( otInstance *aInstance, uint8_t aChannel )
เปลี่ยนวิทยุจาก "นอนหลับ" เป็น "รับ" (เปิดวิทยุ)
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioReceiveAt
otError otPlatRadioReceiveAt( otInstance *aInstance, uint8_t aChannel, uint32_t aStart, uint32_t aDuration )
กำหนดเวลาหน้าต่างรับวิทยุตามเวลาและระยะเวลาที่ระบุ
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatRadioReceiveDone
void otPlatRadioReceiveDone( otInstance *aInstance, otRadioFrame *aFrame, otError aError )
ไดรเวอร์วิทยุเรียกใช้เมธอดนี้เพื่อแจ้ง OpenThread เกี่ยวกับเฟรมที่ได้รับ
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
otPlatRadioSetChannelMaxTransmitPower
otError otPlatRadioSetChannelMaxTransmitPower( otInstance *aInstance, uint8_t aChannel, int8_t aMaxPower )
ตั้งค่ากำลังส่งสูงสุดสำหรับช่องใดช่องหนึ่ง
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
แสดงผลค่า |
|
otPlatRadioSetChannelTargetPower
otError otPlatRadioSetChannelTargetPower( otInstance *aInstance, uint8_t aChannel, int16_t aTargetPower )
ตั้งค่าพลังงานเป้าหมายสำหรับแชแนลที่ระบุ
ไดรเวอร์วิทยุควรตั้งค่ากำลังขาออกจริงให้น้อยกว่าหรือเท่ากับกำลังเป้าหมายและใกล้กับกำลังเป้าหมายมากที่สุด
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatRadioSetCoexEnabled
otError otPlatRadioSetCoexEnabled( otInstance *aInstance, bool aEnabled )
เปิดใช้ Coex ของวิทยุ
จะใช้เมื่อเปิดใช้งานคุณลักษณะ OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioSetRegion
otError otPlatRadioSetRegion( otInstance *aInstance, uint16_t aRegionCode )
ตั้งค่ารหัสภูมิภาค
รูปแบบภูมิภาคของวิทยุคือรูปแบบ 2 ไบต์ ascii ของรหัส ISO 3166 alpha-2
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatRadioSleep
otError otPlatRadioSleep( otInstance *aInstance )
เปลี่ยนวิทยุจากโหมดรับเป็นโหมดสลีป (ปิดวิทยุ)
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
แสดงผลค่า |
|
otPlatRadioTransmit
otError otPlatRadioTransmit( otInstance *aInstance, otRadioFrame *aFrame )
เริ่มลำดับการส่งทางวิทยุ
ผู้โทรจะต้องสร้างเฟรม IEEE 802.15.4 ในบัฟเฟอร์ที่ otPlatRadioGetTransmitBuffer()
ระบุไว้ก่อนขอการส่งข้อมูล ช่องสัญญาณและกำลังส่งจะรวมอยู่ในโครงสร้าง otRadioFrame ด้วย
ลำดับการส่งประกอบด้วยข้อมูลต่อไปนี้
- การเปลี่ยนวิทยุเป็นการส่งจากรัฐต่อไปนี้
- รับหาก RX เปิดอยู่เมื่ออุปกรณ์ไม่มีการใช้งาน หรือไม่รองรับ OT_RADIO_CAPS_SLEEP_TO_TX
- เข้าสู่โหมดสลีปหากปิด RX ขณะที่ไม่มีการใช้งานอุปกรณ์และรองรับ OT_RADIO_CAPS_SLEEP_TO_TX
- ส่ง PSD ในช่องและตามกำลังส่งที่กำหนด
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
แสดงผลค่า |
|
otPlatRadioTxDone
void otPlatRadioTxDone( otInstance *aInstance, otRadioFrame *aFrame, otRadioFrame *aAckFrame, otError aError )
ไดรเวอร์วิทยุเรียกใช้ฟังก์ชันนี้เพื่อแจ้ง OpenThread ว่าการส่งเสร็จสิ้นแล้ว โดยจะให้ทั้งเฟรมที่ส่งและเฟรม Ack ที่ได้รับ (หากมี)
เมื่อวิทยุมีความสามารถในการใช้งาน OT_RADIO_CAPS_TRANSMIT_SEC
เลเยอร์แพลตฟอร์มวิทยุจะอัปเดต aFrame
ด้วยตัวนับกรอบความปลอดภัยและค่าดัชนีคีย์ที่วิทยุเก็บรักษาไว้
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
otPlatRadioTxStarted
void otPlatRadioTxStarted( otInstance *aInstance, otRadioFrame *aFrame )
คนขับวิทยุเรียกวิธีการนี้เพื่อแจ้ง OpenThread ว่าการส่งข้อมูลเริ่มขึ้นแล้ว
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
otPlatRadioUpdateCslSampleTime
void otPlatRadioUpdateCslSampleTime( otInstance *aInstance, uint32_t aCslSampleTime )
อัปเดตเวลาตัวอย่าง CSL ในไดรเวอร์วิทยุ
เวลาตัวอย่างจะเก็บอยู่ในไดรเวอร์วิทยุเป็นสำเนาเพื่อคำนวณระยะขณะที่ส่ง ACK ด้วย CSL IE ตัวอย่าง CSL (กรอบเวลา) ของเครื่องรับ CSL จะขยายออกก่อนและหลังเวลาตัวอย่าง เวลาตัวอย่าง CSL จะระบุการประทับเวลาในหน้าต่างตัวอย่าง CSL ซึ่งควรได้รับเฟรมใน "เงื่อนไขที่เหมาะสม" หากไม่มีความไม่ถูกต้อง/การดริฟต์นาฬิกา
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
แหล่งข้อมูล
หัวข้ออ้างอิง API ของ OpenThread จะมาจากซอร์สโค้ดซึ่งพร้อมใช้งานใน GitHub ดูข้อมูลเพิ่มเติมหรือมีส่วนร่วมในเอกสารประกอบของเราได้ที่แหล่งข้อมูล