otRadioFrame

#include <radio.h>

Представляет радиокадр IEEE 802.15.4.

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

Публичные атрибуты

mAckFrameCounter
uint32_t
Счетчик кадров безопасности ACK (применимо, если установлен mAckedWithSecEnhAck ).
mAckKeyId
uint8_t
Индекс ключа безопасности ACK (применимо, если установлен mAckedWithSecEnhAck ).
mAckedWithFramePending
bool
Это указывает, был ли этот кадр подтвержден с установленным ожидающим кадром.
mAckedWithSecEnhAck
bool
Это указывает, был ли этот кадр подтвержден с помощью защищенного расширенного ACK.
mAesKey
Ключевой материал, используемый для обеспечения безопасности кадра AES-CCM.
mChannel
uint8_t
Канал, используемый для передачи/получения кадра.
mCslPresent
bool
Установите значение true, если присутствует IE заголовка CSL.
mCsmaCaEnabled
bool
Установите значение true, чтобы включить CSMA-CA для этого пакета, в противном случае — значение false.
mIeInfo
Указатель на информацию, связанную с элементами заголовка заголовка.
mInfo
union otRadioFrame::@24
Объединение передачи и приема информации для радиокадра.
mIsARetx
bool
Указывает, является ли кадр повторной передачей или нет.
mIsHeaderUpdated
bool
Указывает, правильно ли обновляются счетчик кадров и IE CSL в заголовке.
mIsSecurityProcessed
bool
Истинно, если SubMac должен пропустить обработку AES этого кадра.
mLength
uint16_t
Длина PSDU.
mLqi
uint8_t
Индикатор качества канала для полученных кадров.
mMaxCsmaBackoffs
uint8_t
Максимальное количество попыток отсрочки перед объявлением сбоя CCA.
mMaxFrameRetries
uint8_t
Максимальное количество повторных попыток, разрешенных после сбоя передачи.
mPsdu
uint8_t *
ПСДУ.
mRadioType
uint8_t
Тип радиоканала - должен игнорироваться драйвером радио.
mRssi
int8_t
Индикатор уровня принятого сигнала в дБм для полученных кадров.
mRxChannelAfterTxDone
uint8_t
Канал RX после передачи кадра завершен (после всех повторных попыток кадра - получено подтверждение, тайм-аут или прерывание).
mRxInfo
struct otRadioFrame::@24::@26
Структура, представляющая радиокадр приема информации.
mTimestamp
uint64_t
Время местных радиочасов в микросекундах, когда конец СФД присутствовал на местной антенне.
mTxDelay
uint32_t
Время задержки в микросекундах для этой передачи, указанное в mTxDelayBaseTime .
mTxDelayBaseTime
uint32_t
Базовое время в микросекундах для запланированных передач относительно местных радиочасов, см. otPlatRadioGetNow и mTxDelay .
mTxInfo
struct otRadioFrame::@24::@25
Структура, представляющая информацию о передаче радиокадра.

Публичные атрибуты

mAckFrameCounter

uint32_t otRadioFrame::mAckFrameCounter

Счетчик кадров безопасности ACK (применимо, если установлен mAckedWithSecEnhAck ).

mAckKeyId

uint8_t otRadioFrame::mAckKeyId

Индекс ключа безопасности ACK (применимо, если установлен mAckedWithSecEnhAck ).

mACKedWithFramePending

bool otRadioFrame::mAckedWithFramePending

Это указывает, был ли этот кадр подтвержден с установленным ожидающим кадром.

mACKedWithSecEnhAck

bool otRadioFrame::mAckedWithSecEnhAck

Это указывает, был ли этот кадр подтвержден с помощью защищенного расширенного ACK.

МЭСКЕЙ

const otMacKeyMaterial * otRadioFrame::mAesKey

Ключевой материал, используемый для обеспечения безопасности кадра AES-CCM.

мканал

uint8_t otRadioFrame::mChannel

Канал, используемый для передачи/получения кадра.

mCslPresent

bool otRadioFrame::mCslPresent

Установите значение true, если присутствует IE заголовка CSL.

mCsmaCaEnabled

bool otRadioFrame::mCsmaCaEnabled

Установите значение true, чтобы включить CSMA-CA для этого пакета, в противном случае — значение false.

mIeInfo

otRadioIeInfo * otRadioFrame::mIeInfo

Указатель на информацию, связанную с элементами заголовка заголовка.

мИнфо

union otRadioFrame::@24 otRadioFrame::mInfo

Объединение передачи и приема информации для радиокадра.

mIsARetx

bool otRadioFrame::mIsARetx

Указывает, является ли кадр повторной передачей или нет.

mIsHeaderUpdated

bool otRadioFrame::mIsHeaderUpdated

Указывает, правильно ли обновляются счетчик кадров и IE CSL в заголовке.

Если уровень платформы не предоставляет возможность OT_RADIO_CAPS_TRANSMIT_SEC , он может игнорировать этот флаг.

Если платформа предоставляет возможность OT_RADIO_CAPS_TRANSMIT_SEC , то ожидается, что платформа будет обрабатывать обработку безопасности передачи и назначение счетчика кадров. В этом случае ожидается следующее поведение:

Когда установлено значение mIsHeaderUpdated , это означает, что ядро ​​OpenThread уже установило счетчик кадров и IE CSL (если включена безопасность) в подготовленном кадре. Счетчик гарантированно соответствует значению счетчика предыдущих попыток того же кадра. Платформе не следует назначать или изменять счетчик кадров (но, возможно, все равно потребуется выполнить обработку безопасности в зависимости от флага mIsSecurityProcessed ).

Если mIsHeaderUpdated не установлен, то счетчик кадров и ключ CSL IE не устанавливаются в кадре ядром OpenThread, и радиоплатформа несет ответственность за их назначение. Платформа должна обновить заголовок кадра (назначить значения счетчика и CSL IE) перед отправкой кадра по воздуху, однако, если передача прерывается и кадр никогда не отправляется по воздуху (например, ошибка доступа к каналу), платформа может выбрать чтобы не обновлять заголовок. Если платформа обновляет заголовок, она также должна установить этот флаг перед передачей кадра обратно из обратного вызова otPlatRadioTxDone() .

mIsSecurityProcessed

bool otRadioFrame::mIsSecurityProcessed

Истинно, если SubMac должен пропустить обработку AES этого кадра.

мдлина

uint16_t otRadioFrame::mLength

Длина PSDU.

млци

uint8_t otRadioFrame::mLqi

Индикатор качества канала для полученных кадров.

mMaxCsmaBackoffs

uint8_t otRadioFrame::mMaxCsmaBackoffs

Максимальное количество попыток отсрочки перед объявлением сбоя CCA.

mMaxFrameRetries

uint8_t otRadioFrame::mMaxFrameRetries

Максимальное количество повторных попыток, разрешенных после сбоя передачи.

МПДУ

uint8_t * otRadioFrame::mPsdu

ПСДУ.

мРадиоТип

uint8_t otRadioFrame::mRadioType

Тип радиоканала - должен игнорироваться драйвером радио.

мРсси

int8_t otRadioFrame::mRssi

Индикатор уровня принятого сигнала в дБм для полученных кадров.

mRxChannelAfterTxDone

uint8_t otRadioFrame::mRxChannelAfterTxDone

Канал RX после передачи кадра завершен (после всех повторных попыток кадра - получено подтверждение, тайм-аут или прерывание).

Радиоплатформы могут полностью игнорировать это. Стек OT обязательно вызовет otPlatRadioReceive() с желаемым каналом RX после того, как передача кадра завершена и сигнализирована в обратном вызове otPlatRadioTxDone() . Радиоплатформы, которые не предоставляют OT_RADIO_CAPS_TRANSMIT_RETRIES , всегда должны игнорировать это.

Это предназначено для ситуаций, когда может возникнуть задержка во взаимодействии между стеком OT и радиосвязью. Например, это используется в архитектуре RCP/хост, чтобы обеспечить более быстрое переключение RCP на канал PAN. В частности, это может помочь при передаче CSL сонному ребенку, когда ребенок может использовать для CSL другой канал, чем канал PAN. После передачи кадра мы хотим, чтобы радио/RCP быстро вернулись на канал PAN, чтобы гарантировать, что родительский элемент не пропустит передачу от дочернего элемента впоследствии, например, дочерний элемент отвечает на более ранний кадр, переданный CSL от родителя, используя канал PAN, в то время как радио все еще остается включенным. CSL-канал.

Переключение на канал RX ДОЛЖНО произойти после того, как кадр TX полностью завершен, т. е. после всех повторных попыток и когда получено подтверждение (когда в кадре TX установлен флаг «Ack Request») или таймаут подтверждения. Обратите внимание, что подтверждение ожидается на том же канале, по которому отправляется кадр.

mRxInfo

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

Структура, представляющая радиокадр приема информации.

mTimestamp

uint64_t otRadioFrame::mTimestamp

Время местных радиочасов в микросекундах, когда конец СФД присутствовал на местной антенне.

mTxDelay

uint32_t otRadioFrame::mTxDelay

Время задержки в микросекундах для этой передачи, указанное в mTxDelayBaseTime .

Примечание: mTxDelayBaseTime + mTxDelay ДОЛЖНЫ указывать на момент времени, когда конец SFD будет присутствовать на местной антенне относительно местных радиочасов.

mTxDelayBaseTime

uint32_t otRadioFrame::mTxDelayBaseTime

Базовое время в микросекундах для запланированных передач относительно местных радиочасов, см. otPlatRadioGetNow и mTxDelay .

mTxInfo

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

Структура, представляющая информацию о передаче радиокадра.

Ресурсы

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