Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Operación

Este módulo incluye la abstracción de la plataforma para operaciones de radio.

Resumen

Funciones

otPlatDiagRadioReceiveDone ( otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
El controlador de radio llama a este método para notificar al módulo de diagnóstico OpenThread de una trama recibida.
otPlatDiagRadioTransmitDone ( otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
El controlador de radio llama a este método para notificar al módulo de diagnóstico de OpenThread que la transmisión se ha completado.
otPlatRadioAddSrcMatchExtEntry ( otInstance *aInstance, const otExtAddress *aExtAddress)
Agregue una dirección extendida a la tabla de coincidencias de direcciones de origen.
otPlatRadioAddSrcMatchShortEntry ( otInstance *aInstance, otShortAddress aShortAddress)
Agregue una dirección corta a la tabla de coincidencias de direcciones de origen.
otPlatRadioClearSrcMatchExtEntries ( otInstance *aInstance)
void
Borre todas las direcciones extendidas / largas de la tabla de coincidencias de direcciones de origen.
otPlatRadioClearSrcMatchExtEntry ( otInstance *aInstance, const otExtAddress *aExtAddress)
Elimina una dirección extendida de la tabla de coincidencias de direcciones de origen.
otPlatRadioClearSrcMatchShortEntries ( otInstance *aInstance)
void
Borre todas las direcciones cortas de la tabla de coincidencias de direcciones de origen.
otPlatRadioClearSrcMatchShortEntry ( otInstance *aInstance, otShortAddress aShortAddress)
Elimine una dirección corta de la tabla de coincidencias de direcciones de origen.
otPlatRadioConfigureEnhAckProbing ( otInstance *aInstance, otLinkMetrics aLinkMetrics, otShortAddress aShortAddress, const otExtAddress *aExtAddress)
Activar / desactivar o actualizar el sondeo basado en ACK mejorado en la radio para un iniciador específico.
otPlatRadioDisable ( otInstance *aInstance)
Desactive la radio.
otPlatRadioEnable ( otInstance *aInstance)
Habilite la radio.
otPlatRadioEnableCsl ( otInstance *aInstance, uint32_t aCslPeriod, otShortAddress aShortAddr, const otExtAddress *aExtAddr)
Habilita o deshabilita el receptor CSL.
otPlatRadioEnableSrcMatch ( otInstance *aInstance, bool aEnable)
void
Activar / desactivar la función de coincidencia de direcciones de origen.
otPlatRadioEnergyScan ( otInstance *aInstance, uint8_t aScanChannel, uint16_t aScanDuration)
Comience la secuencia de escaneo de energía en la radio.
otPlatRadioEnergyScanDone ( otInstance *aInstance, int8_t aEnergyScanMaxRssi)
void
El controlador de radio llama a este método para notificar a OpenThread que el escaneo de energía está completo.
otPlatRadioGetCoexMetrics ( otInstance *aInstance, otRadioCoexMetrics *aCoexMetrics)
Obtenga las métricas de coexistencia de radio.
otPlatRadioGetCslAccuracy ( otInstance *aInstance)
uint8_t
Obtenga la precisión actual, en unidades de ± ppm, del reloj utilizado para programar operaciones CSL.
otPlatRadioGetCslClockUncertainty ( otInstance *aInstance)
uint8_t
Obtenga la incertidumbre actual, en unidades de 10 us, del reloj utilizado para programar las operaciones de CSL.
otPlatRadioGetPreferredChannelMask ( otInstance *aInstance)
uint32_t
Obtenga la máscara de canal preferido de radio en la que el dispositivo prefiere formarse.
otPlatRadioGetRegion ( otInstance *aInstance, uint16_t *aRegionCode)
Obtén el código de región.
otPlatRadioGetRssi ( otInstance *aInstance)
int8_t
Obtenga la medición RSSI más reciente.
otPlatRadioGetState ( otInstance *aInstance)
Obtenga el estado actual de la radio.
otPlatRadioGetSupportedChannelMask ( otInstance *aInstance)
uint32_t
Obtenga la máscara de canal compatible con radio en la que el dispositivo puede estar activado.
otPlatRadioGetTransmitBuffer ( otInstance *aInstance)
Obtenga el búfer de tramas de transmisión de radio.
otPlatRadioIsCoexEnabled ( otInstance *aInstance)
bool
Compruebe si la radio coex está habilitada o no.
otPlatRadioIsEnabled ( otInstance *aInstance)
bool
Compruebe si la radio está habilitada o no.
otPlatRadioReceive ( otInstance *aInstance, uint8_t aChannel)
Haga la transición de la radio de suspensión a recepción (encienda la radio).
otPlatRadioReceiveAt ( otInstance *aInstance, uint8_t aChannel, uint32_t aStart, uint32_t aDuration)
Programe una ventana de recepción de radio a una hora y duración específicas.
otPlatRadioReceiveDone ( otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
El controlador de radio llama a este método para notificar a OpenThread de una trama recibida.
otPlatRadioSetChannelMaxTransmitPower ( otInstance *aInstance, uint8_t aChannel, int8_t aMaxPower)
Configure la potencia máxima de transmisión para un canal específico.
otPlatRadioSetCoexEnabled ( otInstance *aInstance, bool aEnabled)
Habilite la radio coex.
otPlatRadioSetRegion ( otInstance *aInstance, uint16_t aRegionCode)
Establezca el código de región.
otPlatRadioSleep ( otInstance *aInstance)
Haga la transición de la radio de Recibir a Suspender (apague la radio).
otPlatRadioTransmit ( otInstance *aInstance, otRadioFrame *aFrame)
Comience la secuencia de transmisión en la radio.
otPlatRadioTxDone ( otInstance *aInstance, otRadioFrame *aFrame, otRadioFrame *aAckFrame, otError aError)
void
El controlador de radio llama a esta función para notificar a OpenThread que la operación de transmisión se ha completado, proporcionando tanto la trama transmitida como, si corresponde, la trama de confirmación recibida.
otPlatRadioTxStarted ( otInstance *aInstance, otRadioFrame *aFrame)
void
El controlador de radio llama a este método para notificar a OpenThread que la transmisión ha comenzado.
otPlatRadioUpdateCslSampleTime ( otInstance *aInstance, uint32_t aCslSampleTime)
void
Actualice el tiempo de muestra de CSL en el controlador de radio.

Funciones

otPlatDiagRadioReceiveDone

void otPlatDiagRadioReceiveDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

El controlador de radio llama a este método para notificar al módulo de diagnóstico OpenThread de una trama recibida.

Esta función se utiliza cuando los diagnósticos están habilitados.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aFrame
Un puntero a la trama recibida o NULL si la operación de recepción falló.
[in] aError
OT_ERROR_NONE cuando se recibió correctamente una trama, OT_ERROR_ABORT cuando se canceló la recepción y no se recibió una trama, OT_ERROR_NO_BUFS cuando no se pudo recibir una trama debido a la falta de espacio en el búfer de recepción.

otPlatDiagRadioTransmitDone

void otPlatDiagRadioTransmitDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

El controlador de radio llama a este método para notificar al módulo de diagnóstico de OpenThread que la transmisión se ha completado.

Esta función se utiliza cuando los diagnósticos están habilitados.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aFrame
Un puntero al fotograma que se transmitió.
[in] aError
OT_ERROR_NONE cuando se transmitió la trama, OT_ERROR_CHANNEL_ACCESS_FAILURE tx no pudo tener lugar debido a la actividad en el canal, OT_ERROR_ABORT cuando la transmisión fue abortada por otras razones.

otPlatRadioAddSrcMatchExtEntry

otError otPlatRadioAddSrcMatchExtEntry(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

Agregue una dirección extendida a la tabla de coincidencias de direcciones de origen.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aExtAddress
La dirección extendida que se agregará almacenada en orden de bytes little-endian.
Valores devueltos
OT_ERROR_NONE
Se agregó correctamente la dirección extendida a la tabla de coincidencias de origen.
OT_ERROR_NO_BUFS
No hay ninguna entrada disponible en la tabla de coincidencias de origen.

otPlatRadioAddSrcMatchShortEntry

otError otPlatRadioAddSrcMatchShortEntry(
  otInstance *aInstance,
  otShortAddress aShortAddress
)

Agregue una dirección corta a la tabla de coincidencias de direcciones de origen.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aShortAddress
La dirección corta que se agregará.
Valores devueltos
OT_ERROR_NONE
Se agregó con éxito una dirección corta a la tabla de coincidencias de origen.
OT_ERROR_NO_BUFS
No hay ninguna entrada disponible en la tabla de coincidencias de origen.

otPlatRadioClearSrcMatchExtEntries

void otPlatRadioClearSrcMatchExtEntries(
  otInstance *aInstance
)

Borre todas las direcciones extendidas / largas de la tabla de coincidencias de direcciones de origen.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.

otPlatRadioClearSrcMatchExtEntry

otError otPlatRadioClearSrcMatchExtEntry(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

Elimina una dirección extendida de la tabla de coincidencias de direcciones de origen.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aExtAddress
La dirección extendida que se eliminará almacenada en orden de bytes little-endian.
Valores devueltos
OT_ERROR_NONE
Se eliminó con éxito la dirección extendida de la tabla de coincidencias de origen.
OT_ERROR_NO_ADDRESS
La dirección extendida no está en la tabla de coincidencias de direcciones de origen.

otPlatRadioClearSrcMatchShortEntries

void otPlatRadioClearSrcMatchShortEntries(
  otInstance *aInstance
)

Borre todas las direcciones cortas de la tabla de coincidencias de direcciones de origen.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.

otPlatRadioClearSrcMatchShortEntry

otError otPlatRadioClearSrcMatchShortEntry(
  otInstance *aInstance,
  otShortAddress aShortAddress
)

Elimine una dirección corta de la tabla de coincidencias de direcciones de origen.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aShortAddress
La dirección corta que se eliminará.
Valores devueltos
OT_ERROR_NONE
Se eliminó correctamente la dirección corta de la tabla de coincidencias de origen.
OT_ERROR_NO_ADDRESS
La dirección corta no está en la tabla de coincidencias de direcciones de origen.

otPlatRadioConfigureEnhAckProbing

otError otPlatRadioConfigureEnhAckProbing(
  otInstance *aInstance,
  otLinkMetrics aLinkMetrics,
  otShortAddress aShortAddress,
  const otExtAddress *aExtAddress
)

Activar / desactivar o actualizar el sondeo basado en ACK mejorado en la radio para un iniciador específico.

Una vez que un iniciador de sondeo específico configura el sondeo basado en Enhanced-ACK, el Enhanced-ACK enviado a ese nodo debe incluir el IE específico del proveedor que contenga datos de métricas de enlace. Este método informa a la radio que se inicie / se detenga para recopilar datos de métricas de enlace e incluya el IE específico del proveedor que contiene los datos en Enhanced-ACK enviados a ese iniciador de sondeo.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aLinkMetrics
Este parámetro especifica qué métricas consultar. Según la especificación 4.11.3.4.4.6, se pueden especificar como máximo 2 métricas. El sondeo se desactivaría si aLinkMetrics es bit a bit 0.
[in] aShortAddr
La dirección corta del iniciador de sondeo.
[in] aExtAddr
La dirección de origen extendida del Probing Initiator. aExtAddr NO DEBE ser NULL .
Valores devueltos
OT_ERROR_NONE
Se configuró correctamente el sondeo basado en Enhanced-ACK.
OT_ERROR_INVALID_ARGS
aExtAddress es NULL .
OT_ERROR_NOT_FOUND
El iniciador indicado por aShortAddress no se encuentra al intentar despejar.
OT_ERROR_NO_BUFS
No se puede admitir más Iniciador.

otPlatRadioDisable

otError otPlatRadioDisable(
  otInstance *aInstance
)

Desactive la radio.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Valores devueltos
OT_ERROR_NONE
Transición exitosa a discapacitados.
OT_ERROR_INVALID_STATE
La radio no estaba en estado de reposo.

otPlatRadioEnable

otError otPlatRadioEnable(
  otInstance *aInstance
)

Habilite la radio.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Valores devueltos
OT_ERROR_NONE
Habilitado con éxito.
OT_ERROR_FAILED
No se pudo habilitar la radio.

otPlatRadioEnableCsl

otError otPlatRadioEnableCsl(
  otInstance *aInstance,
  uint32_t aCslPeriod,
  otShortAddress aShortAddr,
  const otExtAddress *aExtAddr
)

Habilita o deshabilita el receptor CSL.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aCslPeriod
Período CSL, 0 para deshabilitar CSL.
[in] aShortAddr
La dirección de origen corta del par del receptor CSL.
[in] aExtAddr
La dirección de origen extendida del par del receptor CSL.
Valores devueltos
kErrorNotImplemented
El controlador de radio no es compatible con CSL.
kErrorFailed
Otros errores específicos de la plataforma.
kErrorNone
CSL habilitado o deshabilitado con éxito.

otPlatRadioEnableSrcMatch

void otPlatRadioEnableSrcMatch(
  otInstance *aInstance,
  bool aEnable
)

Activar / desactivar la función de coincidencia de direcciones de origen.

La función de coincidencia de dirección de origen controla cómo la capa de radio decide el bit de "trama pendiente" para los acks enviados en respuesta a los comandos de solicitud de datos de los niños.

Si está deshabilitada, la capa de radio debe establecer la "trama pendiente" en todos los acks a los comandos de solicitud de datos.

Si está habilitada, la capa de radio usa la tabla de coincidencia de direcciones de origen para determinar si establecer o borrar el bit de "trama pendiente" en una confirmación de un comando de solicitud de datos.

La tabla de coincidencias de direcciones de origen proporciona la lista de elementos secundarios para los que hay un marco pendiente. Se puede agregar una dirección corta o una dirección extendida / larga a la tabla de coincidencias de direcciones de origen.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aEnable
Activar / desactivar la función de coincidencia de direcciones de origen.

otPlatRadioEnergyScan

otError otPlatRadioEnergyScan(
  otInstance *aInstance,
  uint8_t aScanChannel,
  uint16_t aScanDuration
)

Comience la secuencia de escaneo de energía en la radio.

Esta función se utiliza cuando la radio proporciona la capacidad OT_RADIO_CAPS_ENERGY_SCAN.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aScanChannel
El canal para realizar el escaneo de energía.
[in] aScanDuration
La duración, en milisegundos, del canal que se va a escanear.
Valores devueltos
OT_ERROR_NONE
Comenzó a escanear el canal con éxito.
OT_ERROR_NOT_IMPLEMENTED
La radio no admite escaneo de energía.

otPlatRadioEnergyScanDone

void otPlatRadioEnergyScanDone(
  otInstance *aInstance,
  int8_t aEnergyScanMaxRssi
)

El controlador de radio llama a este método para notificar a OpenThread que el escaneo de energía está completo.

Esta función se utiliza cuando la radio proporciona la capacidad OT_RADIO_CAPS_ENERGY_SCAN.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aEnergyScanMaxRssi
El RSSI máximo encontrado en el canal escaneado.

otPlatRadioGetCoexMetrics

otError otPlatRadioGetCoexMetrics(
  otInstance *aInstance,
  otRadioCoexMetrics *aCoexMetrics
)

Obtenga las métricas de coexistencia de radio.

Esta función se utiliza cuando la función OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE está habilitada.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[out] aCoexMetrics
Un puntero a la estructura de métricas de coexistencia.
Valores devueltos
OT_ERROR_NONE
Recuperado con éxito las métricas de coex.
OT_ERROR_INVALID_ARGS
aCoexMetrics era NULL.

otPlatRadioGetCslAccuracy

uint8_t otPlatRadioGetCslAccuracy(
  otInstance *aInstance
)

Obtenga la precisión actual, en unidades de ± ppm, del reloj utilizado para programar operaciones CSL.

Detalles
Parámetros
[in] aInstance
Un puntero a una instancia de OpenThread.
Devoluciones
La deriva de programación actual de CSL rx / tx, en unidades de ± ppm.

otPlatRadioGetCslClockUncertainty

uint8_t otPlatRadioGetCslClockUncertainty(
  otInstance *aInstance
)

Obtenga la incertidumbre actual, en unidades de 10 us, del reloj utilizado para programar las operaciones de CSL.

Detalles
Parámetros
[in] aInstance
Un puntero a una instancia de OpenThread.
Devoluciones
La incertidumbre del reloj CSL actual en unidades de 10 us.

otPlatRadioGetPreferredChannelMask

uint32_t otPlatRadioGetPreferredChannelMask(
  otInstance *aInstance
)

Obtenga la máscara de canal preferido de radio en la que el dispositivo prefiere formarse.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Devoluciones
La máscara de canal preferido de radio.

otPlatRadioGetRegion

otError otPlatRadioGetRegion(
  otInstance *aInstance,
  uint16_t *aRegionCode
)

Obtén el código de región.

El formato de la región de radio es la representación ascii de 2 bytes del código ISO 3166 alpha-2.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[out] aRegionCode
La región de radio.
Valores devueltos
OT_ERROR_INVALID_ARGS
aRegionCode es nullptr.
OT_ERROR_FAILED
Otros errores específicos de la plataforma.
OT_ERROR_NONE
Obtuve correctamente el código de región.

otPlatRadioGetRssi

int8_t otPlatRadioGetRssi(
  otInstance *aInstance
)

Obtenga la medición RSSI más reciente.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Devoluciones
El RSSI en dBm cuando es válido. 127 cuando RSSI no es válido.

otPlatRadioGetState

otRadioState otPlatRadioGetState(
  otInstance *aInstance
)

Obtenga el estado actual de la radio.

OpenThread no requiere esta función. Se puede utilizar para depurar y / o con fines específicos de la aplicación.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Devoluciones
Estado actual de la radio.

otPlatRadioGetSupportedChannelMask

uint32_t otPlatRadioGetSupportedChannelMask(
  otInstance *aInstance
)

Obtenga la máscara de canal compatible con radio en la que el dispositivo puede estar activado.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Devoluciones
La máscara de canal compatible con radio.

otPlatRadioGetTransmitBuffer

otRadioFrame * otPlatRadioGetTransmitBuffer(
  otInstance *aInstance
)

Obtenga el búfer de tramas de transmisión de radio.

OpenThread forma la 802.15.4 trama IEEE en este tampón a continuación, llama otPlatRadioTransmit() para transmisión de solicitud.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Devoluciones
Un puntero al búfer de trama de transmisión.

otPlatRadioIsCoexEnabled

bool otPlatRadioIsCoexEnabled(
  otInstance *aInstance
)

Compruebe si la radio coex está habilitada o no.

Esta función se utiliza cuando la función OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE está habilitada.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Devoluciones
VERDADERO si la radio coex está habilitada, FALSO en caso contrario.

otPlatRadioIsEnabled

bool otPlatRadioIsEnabled(
  otInstance *aInstance
)

Compruebe si la radio está habilitada o no.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Devoluciones
VERDADERO si la radio está habilitada, FALSO en caso contrario.

otPlatRadioReceive

otError otPlatRadioReceive(
  otInstance *aInstance,
  uint8_t aChannel
)

Haga la transición de la radio de suspensión a recepción (encienda la radio).

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aChannel
El canal que se utilizará para recibir.
Valores devueltos
OT_ERROR_NONE
Transición exitosa a Recibir.
OT_ERROR_INVALID_STATE
La radio estaba desactivada o transmitiendo.

otPlatRadioReceiveAt

otError otPlatRadioReceiveAt(
  otInstance *aInstance,
  uint8_t aChannel,
  uint32_t aStart,
  uint32_t aDuration
)

Programe una ventana de recepción de radio a una hora y duración específicas.

Detalles
Parámetros
[in] aChannel
El canal de radio en el que recibir.
[in] aStart
La hora de inicio de la ventana de recepción, en microsegundos.
[in] aDuration
La duración de la ventana de recepción, en microsegundos
Valores devueltos
OT_ERROR_NONE
Ventana de recepción programada con éxito.
OT_ERROR_FAILED
No se pudo programar la ventana de recepción.

otPlatRadioReceiveDone

void otPlatRadioReceiveDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

El controlador de radio llama a este método para notificar a OpenThread de una trama recibida.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aFrame
Un puntero a la trama recibida o NULL si la operación de recepción falló.
[in] aError
OT_ERROR_NONE cuando se recibió correctamente una trama, OT_ERROR_ABORT cuando se canceló la recepción y no se recibió una trama, OT_ERROR_NO_BUFS cuando no se pudo recibir una trama debido a la falta de espacio en el búfer de recepción.

otPlatRadioSetChannelMaxTransmitPower

otError otPlatRadioSetChannelMaxTransmitPower(
  otInstance *aInstance,
  uint8_t aChannel,
  int8_t aMaxPower
)

Configure la potencia máxima de transmisión para un canal específico.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aChannel
El canal de radio.
[in] aMaxPower
La potencia máxima en dBm, pasando OT_RADIO_RSSI_INVALID deshabilitará este canal.
Valores devueltos
OT_ERROR_NOT_IMPLEMENTED
La función no está implementada
OT_ERROR_INVALID_ARGS
El canal especificado no es válido.
OT_ERROR_FAILED
Otros errores específicos de la plataforma.
OT_ERROR_NONE
Se configuró con éxito el máximo de transmisión de poewr.

otPlatRadioSetCoexEnabled

otError otPlatRadioSetCoexEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Habilite la radio coex.

Esta función se utiliza cuando la función OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE está habilitada.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aEnabled
TRUE para habilitar la radio coex, FALSE en caso contrario.
Valores devueltos
OT_ERROR_NONE
Habilitado con éxito.
OT_ERROR_FAILED
No se pudo habilitar la radio coex.

otPlatRadioSetRegion

otError otPlatRadioSetRegion(
  otInstance *aInstance,
  uint16_t aRegionCode
)

Establezca el código de región.

El formato de la región de radio es la representación ascii de 2 bytes del código ISO 3166 alpha-2.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aRegionCode
La región de radio.
Valores devueltos
OT_ERROR_FAILED
Otros errores específicos de la plataforma.
OT_ERROR_NONE
Se estableció correctamente el código de región.

otPlatRadioSleep

otError otPlatRadioSleep(
  otInstance *aInstance
)

Haga la transición de la radio de Recibir a Suspender (apague la radio).

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
Valores devueltos
OT_ERROR_NONE
Transición exitosa a Sleep.
OT_ERROR_BUSY
La radio estaba transmitiendo.
OT_ERROR_INVALID_STATE
La radio estaba desactivada.

otPlatRadioTransmit

otError otPlatRadioTransmit(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

Comience la secuencia de transmisión en la radio.

La persona que llama debe formar el marco IEEE 802.15.4 en el tampón proporcionado por otPlatRadioGetTransmitBuffer() antes de solicitar la transmisión. El canal y la potencia de transmisión también se incluyen en la otRadioFrame estructura.

La secuencia de transmisión consta de:

  1. Transición de la radio para transmitir desde uno de los siguientes estados:
    • Reciba si RX está encendido cuando el dispositivo está inactivo o OT_RADIO_CAPS_SLEEP_TO_TX no es compatible
    • Dormir si RX está apagado cuando el dispositivo está inactivo y se admite OT_RADIO_CAPS_SLEEP_TO_TX.
  2. Transmite el psdu en el canal dado y en la potencia de transmisión dada.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aFrame
Un puntero al fotograma que se va a transmitir.
Valores devueltos
OT_ERROR_NONE
Transición exitosa a Transmitir.
OT_ERROR_INVALID_STATE
La radio no estaba en estado de recepción.

otPlatRadioTxDone

void otPlatRadioTxDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otRadioFrame *aAckFrame,
  otError aError
)

El controlador de radio llama a esta función para notificar a OpenThread que la operación de transmisión se ha completado, proporcionando tanto la trama transmitida como, si corresponde, la trama de confirmación recibida.

Cuando la radio ofrece OT_RADIO_CAPS_TRANSMIT_SEC capacidad, la capa de plataforma de radio actualiza aFrame con el contador de tramas de seguridad y los valores de índice de clave mantenida por el radio.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aFrame
Un puntero al fotograma que se transmitió.
[in] aAckFrame
Un puntero a la trama ACK, NULL si no se recibió ACK.
[in] aError
OT_ERROR_NONE cuando se transmitió la trama, OT_ERROR_NO_ACK cuando se transmitió la trama pero no se recibió ACK, OT_ERROR_CHANNEL_ACCESS_FAILURE tx no pudo tener lugar debido a actividad en el canal, OT_ERROR_ABORT cuando la transmisión fue abortada por otras razones.

otPlatRadioTxStarted

void otPlatRadioTxStarted(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

El controlador de radio llama a este método para notificar a OpenThread que la transmisión ha comenzado.

Detalles
Parámetros
[in] aInstance
Un puntero a la estructura de la instancia de OpenThread.
[in] aFrame
Un puntero a la trama que se está transmitiendo.

otPlatRadioUpdateCslSampleTime

void otPlatRadioUpdateCslSampleTime(
  otInstance *aInstance,
  uint32_t aCslSampleTime
)

Actualice el tiempo de muestra de CSL en el controlador de radio.

El tiempo de muestra se almacena en el controlador de radio como una copia para calcular la fase al enviar ACK con CSL IE.

Detalles
Parámetros
[in] aInstance
La estructura de la instancia de OpenThread.
[in] aCslSampleTime
El último tiempo de muestra.