การซิงค์เวลาเครือข่าย

โมดูลนี้ประกอบด้วยฟังก์ชันที่ควบคุมบริการการซิงค์เวลาของเครือข่าย

สรุป

การแจกแจง

otNetworkTimeStatus{
  OT_NETWORK_TIME_UNSYNCHRONIZED = -1,
  OT_NETWORK_TIME_RESYNC_NEEDED = 0,
  OT_NETWORK_TIME_SYNCHRONIZED = 1
}
enum
แสดงสถานะการซิงค์เวลา OpenThread

Typedef

otNetworkTimeStatus typedef
แสดงสถานะการซิงค์เวลา OpenThread
otNetworkTimeSyncCallbackFn)(void *aCallbackContext) typedef
void(*
ระบบจะเรียกตัวชี้เมื่อมีการซิงค์เวลาของเครือข่ายหรือการเปลี่ยนแปลงสถานะ

ฟังก์ชัน

otNetworkTimeGet(otInstance *aInstance, uint64_t *aNetworkTime)
รับเวลาของเครือข่ายเทรด
otNetworkTimeGetSyncPeriod(otInstance *aInstance)
uint16_t
รับระยะเวลาการซิงค์
otNetworkTimeGetXtalThreshold(otInstance *aInstance)
uint16_t
รับเกณฑ์ความแม่นยำของ XTAL ของการซิงค์เวลาสำหรับเราเตอร์
otNetworkTimeSetSyncPeriod(otInstance *aInstance, uint16_t aTimeSyncPeriod)
ตั้งค่าระยะเวลาการซิงค์
otNetworkTimeSetXtalThreshold(otInstance *aInstance, uint16_t aXTALThreshold)
ตั้งค่าเกณฑ์ความแม่นยํา XTAL ของการซิงค์เวลาสำหรับอุปกรณ์ที่รองรับเราเตอร์
otNetworkTimeSyncSetCallback(otInstance *aInstance, otNetworkTimeSyncCallbackFn aCallbackFn, void *aCallbackContext)
void
ตั้งค่าการเรียกกลับที่จะเรียกใช้เมื่อมีการซิงค์เวลาของเครือข่ายหรือการเปลี่ยนแปลงสถานะ

การแจกแจง

otNetworkTimeStatus

 otNetworkTimeStatus

แสดงสถานะการซิงค์เวลา OpenThread

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

อุปกรณ์ไม่ได้รับการซิงค์เวลานานเกิน 2 ช่วงเวลา

OT_NETWORK_TIME_SYNCHRONIZED

ซิงค์เวลาเครือข่ายของอุปกรณ์

OT_NETWORK_TIME_UNSYNCHRONIZED

อุปกรณ์ไม่ได้เชื่อมต่อกับเครือข่าย

Typedef

otNetworkTimeStatus

enum otNetworkTimeStatus otNetworkTimeStatus

แสดงสถานะการซิงค์เวลา OpenThread

otNetworkTimeSyncCallbackFn

void(* otNetworkTimeSyncCallbackFn)(void *aCallbackContext)

ระบบจะเรียกตัวชี้เมื่อมีการซิงค์เวลาของเครือข่ายหรือการเปลี่ยนแปลงสถานะ

ฟังก์ชัน

otNetworkTimeGet

otNetworkTimeStatus otNetworkTimeGet(
  otInstance *aInstance,
  uint64_t *aNetworkTime
)

รับเวลาของเครือข่ายเทรด

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in,out] aNetworkTime
เวลาของเครือข่ายเทรด หน่วยเป็นไมโครวินาที
การส่งคืน
สถานะการซิงค์เวลา

otNetworkTimeGetSyncPeriod

uint16_t otNetworkTimeGetSyncPeriod(
  otInstance *aInstance
)

รับระยะเวลาการซิงค์

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
การส่งคืน
ระยะเวลาการซิงค์

otNetworkTimeGetXtalThreshold

uint16_t otNetworkTimeGetXtalThreshold(
  otInstance *aInstance
)

รับเกณฑ์ความแม่นยำของ XTAL ของการซิงค์เวลาสำหรับเราเตอร์

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
การส่งคืน
เกณฑ์ความแม่นยำของ XTAL สำหรับเราเตอร์ ในหน่วย PPM

otNetworkTimeSetSyncPeriod

otError otNetworkTimeSetSyncPeriod(
  otInstance *aInstance,
  uint16_t aTimeSyncPeriod
)

ตั้งค่าระยะเวลาการซิงค์

เรียกใช้ได้เมื่อปิดใช้โปรโตคอลเทรดเท่านั้น

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in] aTimeSyncPeriod
ระยะเวลาการซิงค์เวลา หน่วยเป็นวินาที
แสดงผลค่า
OT_ERROR_NONE
ตั้งค่าช่วงเวลาซิงค์สำเร็จแล้ว
OT_ERROR_INVALID_STATE
เปิดใช้โปรโตคอลเทรดแล้ว

otNetworkTimeSetXtalThreshold

otError otNetworkTimeSetXtalThreshold(
  otInstance *aInstance,
  uint16_t aXTALThreshold
)

ตั้งค่าเกณฑ์ความแม่นยํา XTAL ของการซิงค์เวลาสำหรับอุปกรณ์ที่รองรับเราเตอร์

เรียกใช้ได้เมื่อปิดใช้โปรโตคอลเทรดเท่านั้น

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in] aXTALThreshold
เกณฑ์ความแม่นยำของ XTAL สำหรับเราเตอร์ ในหน่วย PPM
แสดงผลค่า
OT_ERROR_NONE
ตั้งค่าช่วงเวลาซิงค์สำเร็จแล้ว
OT_ERROR_INVALID_STATE
เปิดใช้โปรโตคอลเทรดแล้ว

otNetworkTimeSyncSetCallback

void otNetworkTimeSyncSetCallback(
  otInstance *aInstance,
  otNetworkTimeSyncCallbackFn aCallbackFn,
  void *aCallbackContext
)

ตั้งค่าการเรียกกลับที่จะเรียกใช้เมื่อมีการซิงค์เวลาของเครือข่ายหรือการเปลี่ยนแปลงสถานะ

ระบบจะเรียกโค้ดเรียกกลับนี้เฉพาะเมื่อออฟเซ็ตเวลาของเครือข่ายข้ามเป็น OPENTHREAD_CONFIG_TIME_SYNC_JUMP_NOTIF_MIN_US หรือเมื่อสถานะเปลี่ยนแปลง

รายละเอียด
พารามิเตอร์
[in] aInstance
โครงสร้างอินสแตนซ์ OpenThread
[in] aCallbackFn
ฟังก์ชันเรียกกลับที่จะเรียกใช้
[in] aCallbackContext
บริบทที่จะส่งไปยังฟังก์ชันเรียกกลับเมื่อมีการเรียกใช้

มาโคร

OT_TIME_SYNC_INVALID_SEQ

 OT_TIME_SYNC_INVALID_SEQ 0

ค่า 0 จะถือว่าเป็นลำดับการซิงค์เวลาที่ไม่ถูกต้อง

แหล่งข้อมูล

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