otRadioFrame

#include <radio.h>

Representa una trama de radio IEEE 802.15.4.

Resumen

Atributos públicos

mAckFrameCounter
uint32_t
Contador de marcos de seguridad ACK (aplicable cuando se configura mAckedWithSecEnhAck).
mAckKeyId
uint8_t
Índice de la llave de seguridad ACK (aplicable cuando se establece mAckedWithSecEnhAck).
mAckedWithFramePending
bool
Esto indica si esta trama se reconoció con la trama pendiente establecida.
mAckedWithSecEnhAck
bool
Esto indica si esta trama se reconoció con ACK de mejora segura.
mAesKey
Es el material de clave que se usa para la seguridad de tramas AES-CCM.
mChannel
uint8_t
Canal utilizado para transmitir/recibir la trama.
mCslPresent
bool
Se establece como verdadero si está presente el encabezado CSL IE.
mCsmaCaEnabled
bool
Se establece como verdadero a fin de habilitar CSMA-CA para este paquete; de lo contrario, se establece como falso.
mIeInfo
Es el puntero a la información relacionada con IE de cabecera.
mInfo
union otRadioFrame::@24
Es la unión de la información de transmisión y recepción para una trama de radio.
mIsARetx
bool
Indica si la trama es una retransmisión o no.
mIsHeaderUpdated
bool
Indica si el contador de marcos y los IEs de CSL se actualizan correctamente en el encabezado.
mIsSecurityProcessed
bool
Verdadero si SubMac debe omitir el procesamiento AES de este marco.
mLength
uint16_t
Longitud de la PDU.
mLqi
uint8_t
Indicador de calidad de vínculos para los marcos recibidos.
mMaxCsmaBackoffs
uint8_t
Cantidad máxima de intentos de retirada antes de declarar un error de CCA.
mMaxFrameRetries
uint8_t
Cantidad máxima de reintentos permitidos después de una falla de transmisión.
mPsdu
uint8_t *
La PSDU.
mRadioType
uint8_t
Tipo de vínculo de radio: El controlador de radio debe ignorarlo.
mRssi
int8_t
Indicador de intensidad de señal recibida en dBm para los fotogramas recibidos.
mRxChannelAfterTxDone
uint8_t
Canal de RX después de la transmisión de la trama (después de todos los reintentos de trama: recepción de confirmación, tiempo de espera o anulación).
mRxInfo
struct otRadioFrame::@24::@26
La estructura que representa la recepción de información de la trama de radio
mTimestamp
uint64_t
Es la hora del reloj de la radio local en microsegundos cuando el final del SFD estaba presente en la antena local.
mTxDelay
uint32_t
El tiempo de retraso en microsegundos para esta transmisión al que se hace referencia como mTxDelayBaseTime.
mTxDelayBaseTime
uint32_t
La hora base en microsegundos para las transmisiones programadas relativas al reloj de radio local. Consulta otPlatRadioGetNow y mTxDelay.
mTxInfo
struct otRadioFrame::@24::@25
Estructura que representa la información de transmisión de una trama de radio

Atributos públicos

mAckFrameCounter

uint32_t otRadioFrame::mAckFrameCounter

Contador de marcos de seguridad ACK (aplicable cuando se configura mAckedWithSecEnhAck).

mAckKeyId

uint8_t otRadioFrame::mAckKeyId

Índice de la llave de seguridad ACK (aplicable cuando se establece mAckedWithSecEnhAck).

mAckedWithFramePending

bool otRadioFrame::mAckedWithFramePending

Esto indica si esta trama se reconoció con la trama pendiente establecida.

mAckedWithSecEnhAck

bool otRadioFrame::mAckedWithSecEnhAck

Esto indica si esta trama se reconoció con ACK de mejora segura.

mAesKey

const otMacKeyMaterial * otRadioFrame::mAesKey

Es el material de clave que se usa para la seguridad de tramas AES-CCM.

mChannel

uint8_t otRadioFrame::mChannel

Canal utilizado para transmitir/recibir la trama.

mCslPresent

bool otRadioFrame::mCslPresent

Se establece como verdadero si está presente el encabezado CSL IE.

mCsmaCaEnabled

bool otRadioFrame::mCsmaCaEnabled

Se establece como verdadero a fin de habilitar CSMA-CA para este paquete; de lo contrario, se establece como falso.

mIeInfo

otRadioIeInfo * otRadioFrame::mIeInfo

Es el puntero a la información relacionada con IE de cabecera.

mInfo

union otRadioFrame::@24 otRadioFrame::mInfo

Es la unión de la información de transmisión y recepción para una trama de radio.

mIsARetx

bool otRadioFrame::mIsARetx

Indica si la trama es una retransmisión o no.

mIsHeaderUpdated

bool otRadioFrame::mIsHeaderUpdated

Indica si el contador de marcos y los IEs de CSL se actualizan correctamente en el encabezado.

Si la capa de la plataforma no proporciona la capacidad OT_RADIO_CAPS_TRANSMIT_SEC, puede ignorar esta marca.

Si la plataforma proporciona la capacidad OT_RADIO_CAPS_TRANSMIT_SEC, se espera que la plataforma maneje el procesamiento de seguridad TX y la asignación del contador de fotogramas. En este caso, se espera que ocurra el siguiente comportamiento:

Cuando se establece mIsHeaderUpdated, indica que el núcleo de OpenThread ya estableció el contador de fotogramas y los IE de CSL (si la seguridad está habilitada) en el fotograma preparado. Se garantiza que el contador coincida con el valor del contador de los intentos anteriores del mismo fotograma. La plataforma no debe asignar ni cambiar el contador de fotogramas (pero es posible que deba realizar el procesamiento de seguridad según la marca mIsSecurityProcessed).

Si no se establece mIsHeaderUpdated, el contador de fotogramas y CSL IE de clave no se establecerán en el fotograma por parte del núcleo de OpenThread, y es responsabilidad de la plataforma de radio asignarlos. La plataforma debe actualizar el encabezado del marco (asignar el contador y valores CSL IE) antes de enviar la trama de manera inalámbrica. Sin embargo, si se anula la transmisión y la trama nunca se envía de forma inalámbrica (p. ej., un error de acceso al canal), la plataforma puede optar por no actualizar el encabezado. Si la plataforma actualiza el encabezado, también debe establecer esta marca antes de pasar el marco de la devolución de llamada otPlatRadioTxDone().

mIsSecurityProcessed

bool otRadioFrame::mIsSecurityProcessed

Verdadero si SubMac debe omitir el procesamiento AES de este marco.

mLength

uint16_t otRadioFrame::mLength

Longitud de la PDU.

mLqi

uint8_t otRadioFrame::mLqi

Indicador de calidad de vínculos para los marcos recibidos.

mMaxCsmaBackoffs

uint8_t otRadioFrame::mMaxCsmaBackoffs

Cantidad máxima de intentos de retirada antes de declarar un error de CCA.

mMaxFrameRetries

uint8_t otRadioFrame::mMaxFrameRetries

Cantidad máxima de reintentos permitidos después de una falla de transmisión.

mPsdu

uint8_t * otRadioFrame::mPsdu

La PSDU.

mRadioType

uint8_t otRadioFrame::mRadioType

Tipo de vínculo de radio: El controlador de radio debe ignorarlo.

mRssi

int8_t otRadioFrame::mRssi

Indicador de intensidad de señal recibida en dBm para los fotogramas recibidos.

mRxChannelAfterTxDone

uint8_t otRadioFrame::mRxChannelAfterTxDone

Canal de RX después de la transmisión de la trama (después de todos los reintentos de trama: recepción de confirmación, tiempo de espera o anulación).

Las plataformas de radio pueden ignorar esto por completo. La pila OT garantizará que se llame a otPlatRadioReceive() con el canal RX deseado después de que se complete la transmisión de un fotograma y se indique en la devolución de llamada otPlatRadioTxDone(). Las plataformas de radio que no proporcionan OT_RADIO_CAPS_TRANSMIT_RETRIES siempre deben ignorar esto.

Esto está diseñado para situaciones en las que puede haber retrasos en las interacciones entre la pila OT y la radio, a modo de ejemplo, se usa en la arquitectura de RCP/host para garantizar que el RCP cambie al canal PAN más rápido. En particular, esto puede ayudar con la transmisión del CSL a un niño con sueño, ya que este puede usar un canal diferente para el CSL que el canal PAN. Después del fotograma tx, queremos que la radio/RCP vuelva rápidamente al canal PAN para garantizar que el padre no pierda la tx del niño después, p.ej., el niño responde al fotograma anterior transmitido con CSL desde el padre usando el canal PAN mientras la radio permanece en el canal CSL.

El cambio al canal RX DEBE producirse una vez que se completa la transmisión de la trama, es decir, después de todos los reintentos y cuando se recibe la confirmación (cuando se establece el marcador "Ack Request" en la trama de transmisión) o cuando se agota el tiempo de espera. Ten en cuenta que la confirmación se espera en el mismo canal en el que se envía la trama.

mRxInfo

struct otRadioFrame::@24::@26 otRadioFrame::mRxInfo

La estructura que representa la recepción de información de la trama de radio

mTimestamp

uint64_t otRadioFrame::mTimestamp

Es la hora del reloj de la radio local en microsegundos cuando el final del SFD estaba presente en la antena local.

mTxDelay

uint32_t otRadioFrame::mTxDelay

El tiempo de retraso en microsegundos para esta transmisión al que se hace referencia como mTxDelayBaseTime.

Nota: mTxDelayBaseTime + mTxDelay indicarán el momento exacto en el que el final del SFD estará presente en la antena local, en relación con el reloj de la radio local.

mTxDelayBaseTime

uint32_t otRadioFrame::mTxDelayBaseTime

La hora base en microsegundos para las transmisiones programadas relativas al reloj de radio local. Consulta otPlatRadioGetNow y mTxDelay.

mTxInfo

struct otRadioFrame::@24::@25 otRadioFrame::mTxInfo

Estructura que representa la información de transmisión de una trama de radio

Recursos

Los temas de referencia de la API de OpenThread se originan a partir del código fuente, disponible en GitHub. Para obtener más información o contribuir a nuestra documentación, consulta Recursos.