Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

여러 가지 잡다한

이 모듈에는 기타 동작에 대한 플랫폼 추상화가 포함되어 있습니다.

요약

열거 형

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

마이크로 컨트롤러의 전원 상태 열거.

이러한 값은 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를 " LOW_POWER "해야합니다 (NCP에 메시지 전송). "포크"메커니즘은 호스트에 대한 NCP의 인터페이스를 기반으로하는 플랫폼 코드에 의해 결정됩니다.

전원 상태가 LOW_POWER 로 설정되어있는 LOW_POWER 도 NCP는 (언제든지) 메시지를 호스트로 보낼 수 있습니다. NCP에서 메시지를 수신한다고해서 NCP의 전원 상태가 변경되었음을 나타내는 것은 아닙니다. 즉, 전원 상태가 명시 적으로 변경 될 때까지 호스트가 NCP와 통신하려고 할 때 (성공적인 호출에 의해 otPlatSetMcuPowerState() 상태를 ON 변경).

OT_PLAT_MCU_POWER_STATE_OFF

NCP가 완전히 꺼져 있습니다.

NCP를 SPINEL_MCU_POWER_STATE_ON 으로 SPINEL_MCU_POWER_STATE_ON NCP 하드웨어 재설정 (RESET 핀을 통해)이 필요합니다. 재설정 후 RAM이 유지되지 않습니다.

OT_PLAT_MCU_POWER_STATE_ON

NCP의 MCU는 항상 켜져 있고 활성화되어 있습니다.

NCP의 원하는 전원 상태가 ON 으로 ON 되면 호스트는 "포크"또는 외부 트리거 없이도 NCP에 메시지를 보낼 수 있습니다.

otPlatResetReason

 otPlatResetReason

가능한 재설정 이유 코드의 열거.

이는 Spinel 재설정 이유 코드와 동일한 순서입니다.

기능

otPlatAssertFail

void otPlatAssertFail(
  const char *aFilename,
  int aLineNumber
)

이 함수는 assert에 대한 플랫폼 별 구현을 제공합니다.

세부
매개 변수
[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 인스턴스에 대한 포인터입니다.
보고
현재 전원 상태입니다.

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 구성에만 사용됩니다.