透過集合功能整理內容 你可以依據偏好儲存及分類內容。

其他

這個模組包含適用於各種行為的平台抽象化。

總結

列舉

otPlatMcuPowerState{
  OT_PLAT_MCU_POWER_STATE_ON = 0,
  OT_PLAT_MCU_POWER_STATE_LOW_POWER = 1,
  OT_PLAT_MCU_POWER_STATE_OFF = 2
}
列舉
微控制器電源狀態的列舉。
otPlatResetReason 列舉
可能重設原因代碼的列舉值。

函式

otPlatAssertFail(const char *aFilename, int aLineNumber)
void
此函式提供 ASer 的平台專屬實作。
otPlatGetMcuPowerState(otInstance *aInstance)
此函式會取得目前所需的 MCU 電源狀態。
otPlatGetResetReason(otInstance *aInstance)
此函式會傳回上次重設平台的原因。
otPlatReset(otInstance *aInstance)
void
如果支援的話,此函式會在平台上執行軟體重設。
otPlatSetMcuPowerState(otInstance *aInstance, otPlatMcuPowerState aState)
此函式可設定所需的 MCU 電源狀態。
otPlatWakeHost(void)
void
這個函式會執行平台特定作業來喚醒主機 MCU。

列舉

otPlatMcuPowerState

 otPlatMcuPowerState

微控制器電源狀態的列舉。

啟用 OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL 時,這些值將會用於 NCP 設定。

The power state specifies the desired power state of NCP's micro-controller (MCU) when the underlying platform's operating system enters idle mode (i.e., all active tasks/events are processed and the MCU can potentially enter a energy-saving power state).

電源狀態主要決定主機與 NCP 的互動方式,以及主機是否需要對 NCP 執行外部觸發條件 (「不動」)。

重設後,MCU 電源狀態必須為「OT_PLAT_POWER_STATE_ON」。

屬性
OT_PLAT_MCU_POWER_STATE_LOW_POWER

NCP's 的 MCU 可進入低功耗 (節能) 狀態。

當 NCP 所需的電源狀態設為 LOW_POWER 時,主機預期必須為「poke」; NCP (例如中斷,例如外部中斷) 會先與 NCP 通訊 (傳送訊息到 NCP)。「poke」機制由平台代碼決定 (根據 NCP 與主機的介面)。

即使電源狀態設為 LOW_POWER,NCP 仍然可以 (隨時) 傳送訊息至主機。請注意,接收來自 NCP 的訊息「不會」表示 NCP 的電源狀態已變更,亦即在預計電源狀態明確變更之前,讓主機與 NCP 通訊 (例如成功呼叫 otPlatSetMcuPowerState()ON)。

OT_PLAT_MCU_POWER_STATE_OFF

NCP 已完全關閉。

你必須重設 NCP 硬體設備 (透過 RESET PIN 碼),才能將 NCP 加回 SPINEL_MCU_POWER_STATE_ON。重設後不會保留 RAM。

OT_PLAT_MCU_POWER_STATE_ON

NCP&s31 的 MCU 會隨時保持啟用狀態。

當 NCP 的電源狀態設為 ON 時,主機即可傳送訊息到 NCP,無需任何「poke」或外部觸發條件。

otPlat 重設原因

 otPlatResetReason

可能重設原因代碼的列舉值。

這些順序與 Spinel 重設原因代碼相同。

函式

OtPlatAssertFail

void otPlatAssertFail(
  const char *aFilename,
  int aLineNumber
)

此函式提供 ASer 的平台專屬實作。

詳細資料
參數
[in] aFilename
發生宣告的檔案名稱。
[in] aLineNumber
檔案中出現行號的行數。

otPlatGetMcuPowerState

otPlatMcuPowerState otPlatGetMcuPowerState(
  otInstance *aInstance
)

此函式會取得目前所需的 MCU 電源狀態。

這項功能僅適用於 OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL 啟用時,可用於 NCP 設定。

重設後,電源狀態「必須」傳回 OT_PLAT_POWER_STATE_ON。在操作期間,只有在明確呼叫 otPlatSetMcuPowerState() 時,電源狀態才會變更。

詳細資料
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
目前的電源狀態。

otPlatGet 重設原因

otPlatResetReason otPlatGetResetReason(
  otInstance *aInstance
)

此函式會傳回上次重設平台的原因。

詳細資料
參數
[in] aInstance
OpenThread 執行個體結構。

otPlat 重設

void otPlatReset(
  otInstance *aInstance
)

如果支援的話,此函式會在平台上執行軟體重設。

詳細資料
參數
[in] aInstance
OpenThread 執行個體結構。

otPlatSetMcuPowerState

otError otPlatSetMcuPowerState(
  otInstance *aInstance,
  otPlatMcuPowerState aState
)

此函式可設定所需的 MCU 電源狀態。

這項功能僅適用於 OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL 啟用時,可用於 NCP 設定。

詳細資料
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aState
新的 MCU 電源狀態。
傳回值
OT_ERROR_NONE
已成功更新電源狀態。
OT_ERROR_FAILED
平台不支援指定的 MCU 電源狀態。

otPlatWakeHost

void otPlatWakeHost(
  void
)

這個函式會執行平台特定作業來喚醒主機 MCU。

這項設定僅適用於 NCP 設定。

資源

OpenThread API 參考主題源自原始碼,可從 GitHub 取得。如要瞭解詳情或參閱說明文件,請參閱資源