網路時間同步處理

這個模組提供的函式可控制網路時間同步處理服務。

摘要

列舉

otNetworkTimeStatus{
  OT_NETWORK_TIME_UNSYNCHRONIZED = -1,
  OT_NETWORK_TIME_RESYNC_NEEDED = 0,
  OT_NETWORK_TIME_SYNCHRONIZED = 1
}
列舉
代表 OpenThread 時間同步處理狀態。

Typedefs

otNetworkTimeStatus typedef
代表 OpenThread 時間同步處理狀態。
otNetworkTimeSyncCallbackFn)(void *aCallbackContext) typedef
void(*
發生網路時間同步或狀態變更時,就會呼叫指標。

函式

otNetworkTimeGet(otInstance *aInstance, uint64_t *aNetworkTime)
取得 Thread 網路時間。
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

裝置已超過兩個時間未收到時間同步。

OT_NETWORK_TIME_SYNCHRONIZED

系統會同步處理裝置的網路時間。

OT_NETWORK_TIME_UNSYNCHRONIZED

裝置未連上網路。

Typedefs

otNetworkTimeStatus

enum otNetworkTimeStatus otNetworkTimeStatus

代表 OpenThread 時間同步處理狀態。

otNetworkTimeSyncCallbackFn

void(* otNetworkTimeSyncCallbackFn)(void *aCallbackContext)

發生網路時間同步或狀態變更時,就會呼叫指標。

函式

otNetworkTimeGet

otNetworkTimeStatus otNetworkTimeGet(
  otInstance *aInstance,
  uint64_t *aNetworkTime
)

取得 Thread 網路時間。

詳細說明
參數
[in] aInstance
OpenThread 執行個體結構。
[in,out] aNetworkTime
Thread 網路時間 (以微秒為單位)。
傳回
時間同步狀態。

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
)

設定時間同步處理期間。

只能在停用 Thread 通訊協定的情況下呼叫。

詳細說明
參數
[in] aInstance
OpenThread 執行個體結構。
[in] aTimeSyncPeriod
時間同步期間 (以秒為單位)。
傳回值
OT_ERROR_NONE
已成功設定時間同步處理期間。
OT_ERROR_INVALID_STATE
已啟用執行緒通訊協定。

otNetworkTimeSetXtalThreshold

otError otNetworkTimeSetXtalThreshold(
  otInstance *aInstance,
  uint16_t aXTALThreshold
)

為可路由器設定的裝置設定同步處理時間 XTAL 準確率門檻。

只能在停用 Thread 通訊協定的情況下呼叫。

詳細說明
參數
[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

零視為無效的時間同步序列。

資源

OpenThread API 參考資料主題源自原始碼,請前往 GitHub 取得。如要瞭解詳情或對說明文件做出貢獻,請參閱資源