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

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

Краткое содержание

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

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

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

отПлатМкуPowerState

 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

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

Когда желаемое состояние питания 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 . ОЗУ не сохраняется после сброса.

OT_PLAT_MCU_POWER_STATE_ON

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

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

otPlatResetReason

 otPlatResetReason

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

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

Функции

otPlatAssertFail

void otPlatAssertFail(
  const char *aFilename,
  int aLineNumber
)

Предоставляет реализацию утверждения для конкретной платформы.

Подробности
Параметры
[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.

otPlatResetToBootloader

otError otPlatResetToBootloader(
  otInstance *aInstance
)

Выполняет аппаратный сброс на платформе для запуска режима загрузчика, если он поддерживается.

Используется, когда включен OPENTHREAD_CONFIG_PLATFORM_BOOTLOADER_MODE_ENABLE .

Подробности
Параметры
[in] aInstance
Структура экземпляра OpenThread.
Возвращаемые значения
OT_ERROR_NONE
Сброс в загрузчик выполнен успешно.
OT_ERROR_BUSY
Ошибка, поскольку выполняется другая операция.
OT_ERROR_NOT_CAPABLE
Невозможно выполнить сброс загрузчика.

отПлатсетмкупауэрстате

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.

Ресурсы

Справочные разделы API OpenThread взяты из исходного кода, доступного на GitHub . Для получения дополнительной информации или внесения вклада в нашу документацию обратитесь к Ресурсам .