Varie

Questo modulo include astrazioni della piattaforma per comportamenti vari.

Riepilogo

Enumerazioni

otPlatMcuPowerState{
  OT_PLAT_MCU_POWER_STATE_ON = 0,
  OT_PLAT_MCU_POWER_STATE_LOW_POWER = 1,
  OT_PLAT_MCU_POWER_STATE_OFF = 2
}
enum
Enumerazione degli stati di alimentazione del micro-controller.
otPlatResetReason enum
Enumerazione dei possibili codici del motivo della reimpostazione.

Funzioni

otPlatAssertFail(const char *aFilename, int aLineNumber)
void
Fornisce un'implementazione specifica della piattaforma per l'asserzione.
otPlatGetMcuPowerState(otInstance *aInstance)
Restituisce lo stato di alimentazione dell'MCU desiderato attuale.
otPlatGetResetReason(otInstance *aInstance)
Restituisce il motivo dell'ultima reimpostazione della piattaforma.
otPlatReset(otInstance *aInstance)
void
Esegue il ripristino del software sulla piattaforma, se supportato.
otPlatResetToBootloader(otInstance *aInstance)
Esegue il ripristino dell'hardware sulla piattaforma per avviare la modalità bootloader, se supportata.
otPlatSetMcuPowerState(otInstance *aInstance, otPlatMcuPowerState aState)
Imposta lo stato di alimentazione dell'MCU desiderato.
otPlatWakeHost(void)
void
Esegue un'operazione specifica della piattaforma per riattivare la MCU host.

Enumerazioni

otPlatMcuPowerState

 otPlatMcuPowerState

Enumerazione degli stati di alimentazione del micro-controller.

Questi valori vengono utilizzati per la configurazione NCP quando OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL è abilitato.

Lo stato di alimentazione specifica lo stato di alimentazione desiderato del microcontroller (MCU) di NCP quando il sistema operativo della piattaforma sottostante entra in modalità di inattività (ad esempio, tutte le attività/gli eventi attivi vengono elaborati e l'MCU può potenzialmente entrare in uno stato di risparmio energetico).

Lo stato di alimentazione determina principalmente il modo in cui l'host deve interagire con l'NCP e se quest'ultimo necessita di un trigger esterno (un "poke") per l'NCP prima che possa comunicare o meno con il PCN.

Dopo un ripristino, lo stato di alimentazione della MCU DEVE essere OT_PLAT_POWER_STATE_ON.

Proprietà
OT_PLAT_MCU_POWER_STATE_LOW_POWER

L'MCU di NCP può entrare in uno stato a bassa potenza (risparmio energetico).

Quando lo stato di alimentazione desiderato dell'NCP è impostato su LOW_POWER, l'host dovrebbe "interrompere" l'NCP (ad esempio, un trigger esterno come un'interruzione) prima che possa comunicare con l'NCP (inviare un messaggio all'NCP). Il meccanismo "poke" è determinato dal codice della piattaforma (in base all'interfaccia di NCP con l'host).

Mentre lo stato di alimentazione è impostato su LOW_POWER, NCP può comunque (in qualsiasi momento) inviare messaggi all'host. Nota che la ricezione di un messaggio dall'NCP NON indica che lo stato di alimentazione del NCP è cambiato, ad esempio, l'host dovrebbe continuare a "poke" quando vuole comunicare con l'NCP fino a quando lo stato di alimentazione non viene esplicitamente modificato (tramite una chiamata riuscita a otPlatSetMcuPowerState() che cambia lo stato in ON).

OT_PLAT_MCU_POWER_STATE_OFF

NCP è completamente disattivato.

È necessario un ripristino hardware del NCP (tramite un pin RESET) per riportare l'NCP su SPINEL_MCU_POWER_STATE_ON. La RAM non viene conservata dopo il ripristino.

OT_PLAT_MCU_POWER_STATE_ON

La MCU di NCP rimane sempre attiva e attiva.

Quando lo stato di alimentazione desiderato dell'NCP è impostato su ON, l'host può inviare messaggi a NCP senza richiedere trigger esterni o "poke".

otPlatResetReason

 otPlatResetReason

Enumerazione dei possibili codici del motivo della reimpostazione.

Questi codici sono nello stesso ordine dei codici motivo del ripristino di Spinel.

Funzioni

otPlatAssertFail

void otPlatAssertFail(
  const char *aFilename,
  int aLineNumber
)

Fornisce un'implementazione specifica della piattaforma per l'asserzione.

Dettagli
Parametri
[in] aFilename
Il nome del file in cui si è verificata l'asserzione.
[in] aLineNumber
Il numero di riga del file in cui si è verificata l'affermazione.

otPlatGetMcuPowerState

otPlatMcuPowerState otPlatGetMcuPowerState(
  otInstance *aInstance
)

Restituisce lo stato di alimentazione dell'MCU desiderato attuale.

È applicabile e viene utilizzato per la configurazione NCP solo quando OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL è abilitato.

Dopo un ripristino, lo stato di alimentazione DEVE restituire OT_PLAT_POWER_STATE_ON. Durante il funzionamento, lo stato di alimentazione DEVE cambiare solo tramite una chiamata esplicita riuscita a otPlatSetMcuPowerState().

Dettagli
Parametri
[in] aInstance
Un puntatore all'istanza OpenThread.
Restituisce
Lo stato di alimentazione attuale.

otPlatGetResetReason

otPlatResetReason otPlatGetResetReason(
  otInstance *aInstance
)

Restituisce il motivo dell'ultima reimpostazione della piattaforma.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.

otPlatReset

void otPlatReset(
  otInstance *aInstance
)

Esegue il ripristino del software sulla piattaforma, se supportato.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.

otPlatResetToBootloader

otError otPlatResetToBootloader(
  otInstance *aInstance
)

Esegue il ripristino dell'hardware sulla piattaforma per avviare la modalità bootloader, se supportata.

Utilizzato quando OPENTHREAD_CONFIG_PLATFORM_BOOTLOADER_MODE_ENABLE è abilitato.

Dettagli
Parametri
[in] aInstance
La struttura dell'istanza OpenThread.
Valori restituiti
OT_ERROR_NONE
Ripristino del bootloader completato.
OT_ERROR_BUSY
Operazione non riuscita perché è in corso un'altra operazione.
OT_ERROR_NOT_CAPABLE
Impossibile reimpostare il bootloader.

otPlatSetMcuPowerState

otError otPlatSetMcuPowerState(
  otInstance *aInstance,
  otPlatMcuPowerState aState
)

Imposta lo stato di alimentazione dell'MCU desiderato.

È applicabile e viene utilizzato per la configurazione NCP solo quando OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL è abilitato.

Dettagli
Parametri
[in] aInstance
Un puntatore all'istanza OpenThread.
[in] aState
Il nuovo stato di alimentazione dell'MCU.
Valori restituiti
OT_ERROR_NONE
Stato di alimentazione aggiornato correttamente.
OT_ERROR_FAILED
Lo stato di alimentazione dell'MCU specificato non è supportato dalla piattaforma.

otPlatWakeHost

void otPlatWakeHost(
  void
)

Esegue un'operazione specifica della piattaforma per riattivare la MCU host.

Viene utilizzato solo per le configurazioni NCP.

Risorse

Gli argomenti di riferimento dell'API OpenThread provengono dal codice sorgente, disponibile su GitHub. Per saperne di più o per contribuire alla nostra documentazione, consulta la sezione Risorse.