การวินิจฉัยเป็นค่าเริ่มต้น - แพลตฟอร์ม

โมดูลนี้ประกอบด้วยกระบวนการ Abstraction ของแพลตฟอร์มสำหรับฟีเจอร์การวินิจฉัย

สรุป

การแจกแจง

otGpioMode{
  OT_GPIO_MODE_INPUT = 0,
  OT_GPIO_MODE_OUTPUT = 1
}
enum
กำหนดโหมด GPS

ฟังก์ชัน

otPlatDiagAlarmCallback(otInstance *aInstance)
void
ประมวลผลเหตุการณ์สัญญาณเตือน
otPlatDiagChannelSet(uint8_t aChannel)
void
ตั้งค่าเวอร์ชันเพื่อใช้สำหรับการวินิจฉัยจากโรงงาน
otPlatDiagGpioGet(uint32_t aGpio, bool *aValue)
รับค่า GPS
otPlatDiagGpioGetMode(uint32_t aGpio, otGpioMode *aMode)
รับโหมด GPS
otPlatDiagGpioSet(uint32_t aGpio, bool aValue)
ตั้งค่า GPS
otPlatDiagGpioSetMode(uint32_t aGpio, otGpioMode aMode)
ตั้งค่าโหมด GPS
otPlatDiagModeGet(void)
bool
ระบุว่าเปิดใช้โหมดการวินิจฉัยจากโรงงานแล้วหรือไม่
otPlatDiagModeSet(bool aMode)
void
เปิด/ปิดใช้โหมดการวินิจฉัยเป็นค่าเริ่มต้น
otPlatDiagProcess(otInstance *aInstance, uint8_t aArgsLength, char *aArgs[], char *aOutput, size_t aOutputMaxLen)
ประมวลผลบรรทัดคำสั่งการวินิจฉัยจากโรงงาน
otPlatDiagRadioGetPowerSettings(otInstance *aInstance, uint8_t aChannel, int16_t *aTargetPower, int16_t *aActualPower, uint8_t *aRawPowerSetting, uint16_t *aRawPowerSettingLength)
รับการตั้งค่าพลังงานสำหรับช่องที่ต้องการ
otPlatDiagRadioGetRawPowerSetting(otInstance *aInstance, uint8_t *aRawPowerSetting, uint16_t *aRawPowerSettingLength)
รับการตั้งค่าพลังงานดิบของวิทยุสำหรับโมดูลการวินิจฉัย
otPlatDiagRadioRawPowerSettingEnable(otInstance *aInstance, bool aEnable)
เปิด/ปิดใช้เลเยอร์แพลตฟอร์มเพื่อใช้การตั้งค่าพลังงานดิบที่ otPlatDiagRadioSetRawPowerSetting() กำหนดไว้
otPlatDiagRadioReceived(otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
ประมวลผลเฟรมวิทยุที่ได้รับ
otPlatDiagRadioSetRawPowerSetting(otInstance *aInstance, const uint8_t *aRawPowerSetting, uint16_t aRawPowerSettingLength)
กำหนดการตั้งค่าพลังงานดิบของวิทยุสำหรับโมดูลการวินิจฉัย
otPlatDiagRadioTransmitCarrier(otInstance *aInstance, bool aEnable)
เริ่มต้น/หยุดเลเยอร์แพลตฟอร์มเพื่อส่งคลื่นผู้ให้บริการอย่างต่อเนื่อง
otPlatDiagRadioTransmitStream(otInstance *aInstance, bool aEnable)
เริ่มต้น/หยุดเลเยอร์แพลตฟอร์มเพื่อส่งสตรีมของอักขระ
otPlatDiagTxPowerSet(int8_t aTxPower)
void
ตั้งค่าการส่งพลังงานเพื่อใช้สำหรับการวินิจฉัยจากโรงงาน

การแจกแจง

otGpioMode

 otGpioMode

กำหนดโหมด GPS

พร็อพเพอร์ตี้
OT_GPIO_MODE_INPUT

โหมดป้อนข้อมูลโดยไม่ใช้ตัวต้านทานกระแสไฟฟ้า

OT_GPIO_MODE_OUTPUT

โหมดเอาต์พุต

ฟังก์ชัน

otPlatDiagAlarmCallback

void otPlatDiagAlarmCallback(
  otInstance *aInstance
)

ประมวลผลเหตุการณ์สัญญาณเตือน

รายละเอียด
พารามิเตอร์
[in] aInstance
อินสแตนซ์ OpenThread สำหรับคำขอปัจจุบัน

otPlatDiagChannelSet

void otPlatDiagChannelSet(
  uint8_t aChannel
)

ตั้งค่าเวอร์ชันเพื่อใช้สำหรับการวินิจฉัยจากโรงงาน

รายละเอียด
พารามิเตอร์
[in] aChannel
ค่าแชแนล

otPlatDiagGpioGet

otError otPlatDiagGpioGet(
  uint32_t aGpio,
  bool *aValue
)

รับค่า GPS

รายละเอียด
พารามิเตอร์
[in] aGpio
หมายเลข GPS
[out] aValue
ตัวชี้ที่ตำแหน่งสำหรับใส่ค่า gpio
แสดงผลค่า
OT_ERROR_NONE
ได้รับค่า gpio สำเร็จแล้ว
OT_ERROR_FAILED
เกิดข้อผิดพลาดในแพลตฟอร์มขณะรับค่า GPS
OT_ERROR_INVALID_ARGS
ไม่รองรับ aGpio หรือ aValue เป็นค่าว่าง
OT_ERROR_INVALID_STATE
ไม่ได้เปิดใช้โหมดการวินิจฉัยหรือไม่ได้กำหนดค่า aGpio เป็นอินพุต
OT_ERROR_NOT_IMPLEMENTED
ฟังก์ชันนี้ไม่มีการใช้งานหรือกำหนดค่าในแพลตฟอร์ม

otPlatDiagGpioGetMode

otError otPlatDiagGpioGetMode(
  uint32_t aGpio,
  otGpioMode *aMode
)

รับโหมด GPS

รายละเอียด
พารามิเตอร์
[in] aGpio
หมายเลข GPS
[out] aMode
ตัวชี้ตำแหน่งสำหรับเข้าสู่โหมด GPS
แสดงผลค่า
OT_ERROR_NONE
รับโหมด gpio สำเร็จแล้ว
OT_ERROR_FAILED
โหมดที่แพลตฟอร์มส่งคืนมาไม่มีการใช้งานใน OpenThread หรือเกิดข้อผิดพลาดของแพลตฟอร์มขณะรับโหมด GPS
OT_ERROR_INVALID_ARGS
ไม่รองรับ aGpio หรือ aMode เป็นค่าว่าง
OT_ERROR_INVALID_STATE
ไม่ได้เปิดใช้โหมดการวินิจฉัย
OT_ERROR_NOT_IMPLEMENTED
ฟังก์ชันนี้ไม่มีการใช้งานหรือกำหนดค่าในแพลตฟอร์ม

otPlatDiagGpioSet

otError otPlatDiagGpioSet(
  uint32_t aGpio,
  bool aValue
)

ตั้งค่า GPS

รายละเอียด
พารามิเตอร์
[in] aGpio
หมายเลข GPS
[in] aValue
true เพื่อตั้งค่า gpio เป็นระดับสูง หรือ false หรือไม่เช่นนั้น
แสดงผลค่า
OT_ERROR_NONE
ตั้งค่า gpio สำเร็จแล้ว
OT_ERROR_FAILED
แพลตฟอร์มเกิดข้อผิดพลาดขณะตั้งค่า GPS
OT_ERROR_INVALID_ARGS
ไม่รองรับ aGpio
OT_ERROR_INVALID_STATE
ไม่ได้เปิดใช้โหมดการวินิจฉัยหรือไม่ได้กำหนดค่า aGpio เป็นเอาต์พุต
OT_ERROR_NOT_IMPLEMENTED
ฟังก์ชันนี้ไม่มีการใช้งานหรือกำหนดค่าในแพลตฟอร์ม

otPlatDiagGpioSetMode

otError otPlatDiagGpioSetMode(
  uint32_t aGpio,
  otGpioMode aMode
)

ตั้งค่าโหมด GPS

รายละเอียด
พารามิเตอร์
[in] aGpio
หมายเลข GPS
[out] aMode
โหมด GPS
แสดงผลค่า
OT_ERROR_NONE
ตั้งค่าโหมด gpio สำเร็จแล้ว
OT_ERROR_FAILED
แพลตฟอร์มเกิดข้อผิดพลาดขณะตั้งค่าโหมด GPS
OT_ERROR_INVALID_ARGS
ไม่รองรับ aGpio หรือ aMode
OT_ERROR_INVALID_STATE
ไม่ได้เปิดใช้โหมดการวินิจฉัย
OT_ERROR_NOT_IMPLEMENTED
ฟังก์ชันนี้ไม่มีการใช้งานหรือกำหนดค่าในแพลตฟอร์ม

otPlatDiagModeGet

bool otPlatDiagModeGet(
  void
)

ระบุว่าเปิดใช้โหมดการวินิจฉัยจากโรงงานแล้วหรือไม่

รายละเอียด
การส่งคืน
จะมีค่า TRUE หากเปิดใช้โหมดการวินิจฉัยเป็นค่าเริ่มต้น มิฉะนั้นจะเป็น FALSE

otPlatDiagModeSet

void otPlatDiagModeSet(
  bool aMode
)

เปิด/ปิดใช้โหมดการวินิจฉัยเป็นค่าเริ่มต้น

รายละเอียด
พารามิเตอร์
[in] aMode
TRUE เพื่อเปิดใช้โหมดการวินิจฉัย หรือไม่เช่นนั้น

otPlatDiagProcess

otError otPlatDiagProcess(
  otInstance *aInstance,
  uint8_t aArgsLength,
  char *aArgs[],
  char *aOutput,
  size_t aOutputMaxLen
)

ประมวลผลบรรทัดคำสั่งการวินิจฉัยจากโรงงาน

เอาต์พุตของฟังก์ชันนี้ (เนื้อหาที่เขียนไปยัง aOutput) ต้องสิ้นสุดด้วย \0 และ \0 อยู่ภายในบัฟเฟอร์เอาต์พุต

รายละเอียด
พารามิเตอร์
[in] aInstance
อินสแตนซ์ OpenThread สำหรับคำขอปัจจุบัน
[in] aArgsLength
จำนวนอาร์กิวเมนต์ใน aArgs
[in] aArgs
อาร์กิวเมนต์ของบรรทัดคำสั่งการวินิจฉัย
[out] aOutput
ผลของการดำเนินการวินิจฉัย
[in] aOutputMaxLen
ขนาดบัฟเฟอร์ของเอาต์พุต
แสดงผลค่า
OT_ERROR_INVALID_ARGS
ระบบรองรับคําสั่งนี้ แต่มีการระบุอาร์กิวเมนต์ที่ไม่ถูกต้อง
OT_ERROR_NONE
ประมวลผลคำสั่งเรียบร้อยแล้ว
OT_ERROR_INVALID_COMMAND
คําสั่งไม่ถูกต้องหรือระบบไม่รองรับ

otPlatDiagRadioGetPowerSettings

otError otPlatDiagRadioGetPowerSettings(
  otInstance *aInstance,
  uint8_t aChannel,
  int16_t *aTargetPower,
  int16_t *aActualPower,
  uint8_t *aRawPowerSetting,
  uint16_t *aRawPowerSettingLength
)

รับการตั้งค่าพลังงานสำหรับช่องที่ต้องการ

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in] aChannel
ช่องวิทยุ
[out] aTargetPower
กำลังเป้าหมายในหน่วย 0.01 dBm
[out] aActualPower
กำลังไฟฟ้าจริงในหน่วย 0.01 dBm
[out] aRawPowerSetting
ตัวชี้ไปยังอาร์เรย์ไบต์ของการตั้งค่าพลังงานดิบ
[in,out] aRawPowerSettingLength
เมื่อป้อนข้อมูล ตัวชี้ไปยังขนาด aRawPowerSetting เมื่อเอาต์พุต ตัวชี้ไปยังความยาวของข้อมูลการตั้งค่าพลังงานดิบ
แสดงผลค่า
OT_ERROR_NONE
ได้รับพลังเป้าหมายสำเร็จแล้ว
OT_ERROR_INVALID_ARGS
aChannel ไม่ถูกต้อง, aActualPower, aRawPowerSetting หรือ aRawPowerSettingLength เป็นค่าว่างหรือสั้นเกินไป
OT_ERROR_NOT_FOUND
ไม่พบการตั้งค่าพลังงานสำหรับ aChannel
OT_ERROR_NOT_IMPLEMENTED
วิธีการนี้ไม่ได้นำมาใช้

otPlatDiagRadioGetRawPowerSetting

otError otPlatDiagRadioGetRawPowerSetting(
  otInstance *aInstance,
  uint8_t *aRawPowerSetting,
  uint16_t *aRawPowerSettingLength
)

รับการตั้งค่าพลังงานดิบของวิทยุสำหรับโมดูลการวินิจฉัย

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[out] aRawPowerSetting
ตัวชี้ไปยังอาร์เรย์ไบต์ของการตั้งค่าพลังงานดิบ
[in,out] aRawPowerSettingLength
เมื่อป้อนข้อมูล ตัวชี้ไปยังขนาด aRawPowerSetting เมื่อเอาต์พุต ตัวชี้ไปยังความยาวของข้อมูลการตั้งค่าพลังงานดิบ
แสดงผลค่า
OT_ERROR_NONE
ตั้งค่าข้อมูลดิบเกี่ยวกับการตั้งค่าเรียบร้อยแล้ว
OT_ERROR_INVALID_ARGS
aRawPowerSetting หรือ aRawPowerSettingLength ไม่มีข้อมูลหรือสั้นเกินไป
OT_ERROR_NOT_FOUND
ไม่ได้ตั้งค่าพลังงานดิบ
OT_ERROR_NOT_IMPLEMENTED
วิธีการนี้ไม่ได้นำมาใช้

otPlatDiagRadioRawPowerSettingEnable

otError otPlatDiagRadioRawPowerSettingEnable(
  otInstance *aInstance,
  bool aEnable
)

เปิด/ปิดใช้เลเยอร์แพลตฟอร์มเพื่อใช้การตั้งค่าพลังงานดิบที่ otPlatDiagRadioSetRawPowerSetting() กำหนดไว้

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in] aEnable
TRUE เพื่อเปิดใช้งานหรือ FALSE เพื่อปิดใช้การตั้งค่าพลังงานดิบ
แสดงผลค่า
OT_ERROR_NONE
เปิด/ปิดใช้การตั้งค่าพลังงานดิบสำเร็จแล้ว
OT_ERROR_NOT_IMPLEMENTED
วิธีการนี้ไม่ได้นำมาใช้

otPlatDiagRadioReceived

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

ประมวลผลเฟรมวิทยุที่ได้รับ

รายละเอียด
พารามิเตอร์
[in] aInstance
อินสแตนซ์ OpenThread สำหรับคำขอปัจจุบัน
[in] aFrame
เฟรมวิทยุที่ได้รับ
[in] aError
สถานะเฟรมวิทยุที่ได้รับ

otPlatDiagRadioSetRawPowerSetting

otError otPlatDiagRadioSetRawPowerSetting(
  otInstance *aInstance,
  const uint8_t *aRawPowerSetting,
  uint16_t aRawPowerSettingLength
)

กำหนดการตั้งค่าพลังงานดิบของวิทยุสำหรับโมดูลการวินิจฉัย

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in] aRawPowerSetting
ตัวชี้ไปยังอาร์เรย์ไบต์ของการตั้งค่าพลังงานดิบ
[in] aRawPowerSettingLength
ความยาวของ aRawPowerSetting
แสดงผลค่า
OT_ERROR_NONE
ตั้งค่าข้อมูลดิบเกี่ยวกับการตั้งค่าเรียบร้อยแล้ว
OT_ERROR_INVALID_ARGS
aRawPowerSetting เป็นค่าว่างหรือ aRawPowerSettingLength ยาวเกินไป
OT_ERROR_NOT_IMPLEMENTED
วิธีการนี้ไม่ได้นำมาใช้

otPlatDiagRadioTransmitCarrier

otError otPlatDiagRadioTransmitCarrier(
  otInstance *aInstance,
  bool aEnable
)

เริ่มต้น/หยุดเลเยอร์แพลตฟอร์มเพื่อส่งคลื่นผู้ให้บริการอย่างต่อเนื่อง

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in] aEnable
TRUE เพื่อเปิดใช้หรือ FALSE เพื่อปิดเลเยอร์แพลตฟอร์มเพื่อส่งคลื่นผู้ให้บริการแบบต่อเนื่อง
แสดงผลค่า
OT_ERROR_NONE
เปิดใช้งาน/ปิดใช้งาน เรียบร้อยแล้ว
OT_ERROR_INVALID_STATE
วิทยุไม่อยู่ในสถานะรับ
OT_ERROR_NOT_IMPLEMENTED
วิธีการนี้ไม่ได้นำมาใช้

otPlatDiagRadioTransmitStream

otError otPlatDiagRadioTransmitStream(
  otInstance *aInstance,
  bool aEnable
)

เริ่มต้น/หยุดเลเยอร์แพลตฟอร์มเพื่อส่งสตรีมของอักขระ

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in] aEnable
TRUE เพื่อเปิดใช้หรือ FALSE เพื่อปิดเลเยอร์แพลตฟอร์มเพื่อส่งสตรีม
แสดงผลค่า
OT_ERROR_NONE
เปิด/ปิดใช้สำเร็จแล้ว
OT_ERROR_INVALID_STATE
วิทยุไม่อยู่ในสถานะรับ
OT_ERROR_NOT_IMPLEMENTED
ฟังก์ชันนี้ยังใช้ไม่ได้

otPlatDiagTxPowerSet

void otPlatDiagTxPowerSet(
  int8_t aTxPower
)

ตั้งค่าการส่งพลังงานเพื่อใช้สำหรับการวินิจฉัยจากโรงงาน

รายละเอียด
พารามิเตอร์
[in] aTxPower
ค่ากำลังส่ง

แหล่งข้อมูล

หัวข้ออ้างอิง API ของ OpenThread จะมาจากซอร์สโค้ดซึ่งพร้อมใช้งานใน GitHub ดูข้อมูลเพิ่มเติมหรือมีส่วนร่วมในเอกสารประกอบของเราได้ที่แหล่งข้อมูล