Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

該模塊包括用於雜項行為的平台抽象。

概要

枚舉

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
該功能為斷言提供了特定於平台的實現。
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配置。

當基礎平台的操作系統進入空閒模式(即,所有活動任務/事件都已處理並且MCU可能進入節能電源狀態)時,電源狀態指定NCP的微控制器(MCU)的所需電源狀態。

電源狀態主要決定主機應如何與NCP交互以及主機是否需要與NCP進行外部觸發(“戳”)才能與NCP通信。

重置後,MCU電源狀態必須為OT_PLAT_POWER_STATE_ON

物產
OT_PLAT_MCU_POWER_STATE_LOW_POWER

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

當NCP的所需電源狀態設置為LOW_POWER ,主機可以在與NCP通信(向NCP發送消息)之前“戳” NCP(例如,像中斷之類的外部觸發器)。 “戳”機制由平台代碼(基於NCP與主機的接口)確定。

當電源狀態設置為LOW_POWER ,NCP仍可以(隨時)向主機發送消息。請注意,從NCP接收到消息並不表示NCP的電源狀態已更改,即,當主機希望與NCP進行通信之前,除非它明確更改了電源狀態(通過成功的呼叫),否則主機應繼續“戳”到otPlatSetMcuPowerState()將狀態更改為ON )。

OT_PLAT_MCU_POWER_STATE_OFF

NCP已完全關閉。

需要將NCP硬件復位(通過RESET引腳),以將NCP帶回到SPINEL_MCU_POWER_STATE_ON 。復位後不保留RAM。

OT_PLAT_MCU_POWER_STATE_ON

NCP的MCU始終保持打開狀態。

當NCP的所需電源狀態設置為ON ,主機可以向NCP發送消息,而無需任何“戳”或外部觸發器。

otPlatResetReason

 otPlatResetReason

枚舉可能的重置原因代碼。

它們的順序與尖晶石復位原因代碼相同。

職能

otPlatAssertFail

void otPlatAssertFail(
  const char *aFilename,
  int aLineNumber
)

該功能為斷言提供了特定於平台的實現。

細節
參量
[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()otPlatSetMcuPowerState()

細節
參量
[in] aInstance
指向OpenThread實例的指針。
退貨
當前電源狀態。

otPlatGetResetReason

otPlatResetReason otPlatGetResetReason(
  otInstance *aInstance
)

此函數返回上次平台重置的原因。

細節
參量
[in] aInstance
OpenThread實例結構。

otPlatReset

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配置。