Разнообразный

Этот модуль включает в себя абстракции платформы для различного поведения.

Резюме

Перечисления

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
Эта функция обеспечивает реализацию assert для конкретной платформы.
otPlatGetMcuPowerState ( otInstance *aInstance)
Эта функция получает текущее желаемое состояние питания MCU.
otPlatGetResetReason ( otInstance *aInstance)
Эта функция возвращает причину последнего сброса платформы.
otPlatReset ( otInstance *aInstance)
void
Эта функция выполняет программный сброс на платформе, если она поддерживается.
otPlatSetMcuPowerState ( otInstance *aInstance, otPlatMcuPowerState aState)
Эта функция устанавливает желаемое состояние питания MCU.
otPlatWakeHost (void)
void
Эта функция выполняет специфичную для платформы операцию по пробуждению MCU хоста.

Перечисления

otPlatMcuPowerState

 otPlatMcuPowerState

Перечень состояний питания микроконтроллера.

Эти значения используются для конфигурации NCP, когда включен OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL .

Состояние питания определяет желаемое состояние питания микроконтроллера (MCU) NCP, когда операционная система базовой платформы переходит в режим ожидания (т. Е. Все активные задачи / события обрабатываются, и MCU потенциально может перейти в состояние энергосбережения).

Состояние питания в первую очередь определяет, как хост должен взаимодействовать с NCP и нужен ли хосту внешний триггер («толкание») для NCP, прежде чем он сможет связаться с NCP или нет.

После сброса состояние питания MCU ДОЛЖНО быть OT_PLAT_POWER_STATE_ON .

Характеристики
OT_PLAT_MCU_POWER_STATE_LOW_POWER

Микроконтроллер NCP может перейти в режим пониженного энергопотребления (энергосбережения).

Когда желаемое состояние питания NCP установлено на LOW_POWER , ожидается, что хост « LOW_POWER » NCP (например, внешний триггер, такой как прерывание), прежде чем он сможет связаться с NCP (отправить сообщение на NCP). Механизм «тыкания» определяется кодом платформы (на основе интерфейса NCP с хостом).

Пока состояние питания установлено на LOW_POWER , NCP все еще может (в любое время) отправлять сообщения на хост. Обратите внимание, что получение сообщения от NCP НЕ означает, что состояние питания NCP изменилось, т. Е. Ожидается, что хост будет продолжать «тыкать», когда он хочет поговорить с NCP, пока состояние питания не будет явно изменено (при успешном вызове to otPlatSetMcuPowerState() меняет состояние на ON ).

OT_PLAT_MCU_POWER_STATE_OFF

NCP полностью выключен.

Аппаратный сброс NCP (через контакт RESET) необходим для возврата NCP к SPINEL_MCU_POWER_STATE_ON . ОЗУ не сохраняется после сброса.

OT_PLAT_MCU_POWER_STATE_ON

MCU NCP остается включенным и активным все время.

Когда желаемое состояние питания NCP установлено на ON , хост может отправлять сообщения на NCP, не требуя каких-либо «толканий» или внешних триггеров.

otPlatResetReason

 otPlatResetReason

Перечень возможных кодов причин сброса.

Они находятся в том же порядке, что и коды причин сброса Spinel.

Функции

otPlatAssertFail

void otPlatAssertFail(
  const char *aFilename,
  int aLineNumber
)

Эта функция обеспечивает реализацию assert для конкретной платформы.

Подробности
Параметры
[in] aFilename
Имя файла, в котором произошло утверждение.
[in] aLineNumber
Номер строки в файле, где произошло утверждение.

otPlatGetMcuPowerState

otPlatMcuPowerState otPlatGetMcuPowerState(
  otInstance *aInstance
)

Эта функция получает текущее желаемое состояние питания MCU.

Это применимо и используется только для конфигурации NCP, когда включен OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL .

После сброса состояние питания ДОЛЖНО вернуть OT_PLAT_POWER_STATE_ON . Во время работы состояние питания ДОЛЖНО изменяться только посредством явного успешного вызова 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.

Это применимо и используется только для конфигурации NCP, когда включен OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL .

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aState
Новое состояние питания MCU.
Возвращаемые значения
OT_ERROR_NONE
Состояние питания обновлено успешно.
OT_ERROR_FAILED
Данное состояние питания MCU не поддерживается платформой.

otPlatWakeHost

void otPlatWakeHost(
  void
)

Эта функция выполняет специфичную для платформы операцию по пробуждению MCU хоста.

Это используется только для конфигураций NCP.