otRadioFrame

#include <radio.h>

Reprezentuje ramkę radiową IEEE 802.15.4.

Podsumowanie

Atrybuty publiczne

mAckFrameCounter
uint32_t
Licznik ramek zabezpieczeń potwierdzenia (dotyczy, gdy ustawiona jest zasada mAckedWithSecEnhAck).
mAckKeyId
uint8_t
Indeks klucza bezpieczeństwa potwierdzenia (dotyczy, gdy ustawiona jest zasada mAckedWithSecEnhAck).
mAckedWithFramePending
bool
Wskazuje, czy ramka została potwierdzona z ustawieniem oczekującej ramki.
mAckedWithSecEnhAck
bool
Wskazuje, czy ramka została potwierdzona za pomocą bezpiecznego potwierdzenia ulepszenia.
mAesKey
Materiał klucza używany do zabezpieczania ramki AES-CCM.
mChannel
uint8_t
Kanał używany do przesyłania/odbierania klatki.
mCslPresent
bool
Ustaw na wartość true, jeśli istnieje nagłówek CSL w IE.
mCsmaCaEnabled
bool
Ustaw wartość „true”, aby włączyć CSMA-CA dla tego pakietu. W przeciwnym razie ustaw wartość „false” (fałsz).
mIeInfo
Wskaźnik informacji związanych z nagłówkiem IE.
mInfo
union otRadioFrame::@24
Połączenie transmitowania i odbierania informacji dla ramki radiowej.
mIsARetx
bool
Wskazuje, czy ramka jest ponowną transmisją czy nie.
mIsHeaderUpdated
bool
Wskazuje, czy licznik ramek i IE IE w nagłówku są prawidłowo aktualizowane.
mIsSecurityProcessed
bool
Prawda, jeśli SubMac ma pomijać przetwarzanie AES tej klatki.
mLength
uint16_t
Długość subskrypcji PSDU.
mLqi
uint8_t
Wskaźnik jakości linku dla odebranych klatek.
mMaxCsmaBackoffs
uint8_t
Maksymalna liczba prób ponowienia przed zadeklarowaniem błędu CCA.
mMaxFrameRetries
uint8_t
Maksymalna dozwolona liczba ponownych prób po awarii transmisji.
mPsdu
uint8_t *
PSDU.
mRadioType
uint8_t
Typ linku radiowego – powinien być ignorowany przez sterownik radiowy.
mRssi
int8_t
Wskaźnik siły odbieranego sygnału w dBm dla odebranych klatek.
mRxChannelAfterTxDone
uint8_t
Kanał RX po TX ramki jest zakończony (po ponownym wykonaniu każdej próby klatki – po otrzymaniu potwierdzenia, po upływie czasu oczekiwania lub przerwaniu).
mRxInfo
struct otRadioFrame::@24::@26
Struktura reprezentująca ramkę radiową odbierającą informacje.
mTimestamp
uint64_t
Godzina lokalnego zegara radiowego w mikrosekundach, gdy na antenie lokalnej był widoczny koniec SFD.
mTxDelay
uint32_t
Czas opóźnienia tej transmisji podany w mikrosekundach jako wartość mTxDelayBaseTime.
mTxDelayBaseTime
uint32_t
Podstawowy czas w mikrosekundach dla zaplanowanych transmisji w stosunku do lokalnego zegara radiowego (patrz otPlatRadioGetNow i mTxDelay).
mTxInfo
struct otRadioFrame::@24::@25
Struktura reprezentująca transmisję informacji ramki radiowej.

Atrybuty publiczne

mAckFrameCounter

uint32_t otRadioFrame::mAckFrameCounter

Licznik ramek zabezpieczeń potwierdzenia (dotyczy, gdy ustawiona jest zasada mAckedWithSecEnhAck).

mAckKeyId

uint8_t otRadioFrame::mAckKeyId

Indeks klucza bezpieczeństwa potwierdzenia (dotyczy, gdy ustawiona jest zasada mAckedWithSecEnhAck).

mAckedWithFramePending

bool otRadioFrame::mAckedWithFramePending

Wskazuje, czy ramka została potwierdzona z ustawieniem oczekującej ramki.

mAckedWithSecEnhAck

bool otRadioFrame::mAckedWithSecEnhAck

Wskazuje, czy ramka została potwierdzona za pomocą bezpiecznego potwierdzenia ulepszenia.

mAesKey

const otMacKeyMaterial * otRadioFrame::mAesKey

Materiał klucza używany do zabezpieczania ramki AES-CCM.

mChannel

uint8_t otRadioFrame::mChannel

Kanał używany do przesyłania/odbierania klatki.

mCslPresent

bool otRadioFrame::mCslPresent

Ustaw na wartość true, jeśli istnieje nagłówek CSL w IE.

mCsmaCaEnabled

bool otRadioFrame::mCsmaCaEnabled

Ustaw wartość „true”, aby włączyć CSMA-CA dla tego pakietu. W przeciwnym razie ustaw wartość „false” (fałsz).

mIeInfo

otRadioIeInfo * otRadioFrame::mIeInfo

Wskaźnik informacji związanych z nagłówkiem IE.

mInfo

union otRadioFrame::@24 otRadioFrame::mInfo

Połączenie transmitowania i odbierania informacji dla ramki radiowej.

mIsARetx

bool otRadioFrame::mIsARetx

Wskazuje, czy ramka jest ponowną transmisją czy nie.

mIsHeaderUpdated

bool otRadioFrame::mIsHeaderUpdated

Wskazuje, czy licznik ramek i IE IE w nagłówku są prawidłowo aktualizowane.

Jeśli warstwa platformy nie zapewnia funkcji OT_RADIO_CAPS_TRANSMIT_SEC, może zignorować tę flagę.

Jeśli platforma oferuje funkcję OT_RADIO_CAPS_TRANSMIT_SEC, powinna obsługiwać przetwarzanie zabezpieczeń TX i przypisywanie licznika klatek. W tym przypadku należy spodziewać się następujących zachowań:

Jeśli zasada mIsHeaderUpdated jest skonfigurowana, oznacza to, że rdzenie OpenThread ustawiły już licznik klatek i CSL IE (jeśli zabezpieczenia są włączone) w przygotowanej ramce. Licznik ma pewność, że odpowiada wartości licznika z poprzednich prób tej samej klatki. Platforma nie powinna przypisywać ani zmieniać licznika klatek (ale i tak może być konieczne przeprowadzenie przetwarzania zabezpieczeń w zależności od flagi mIsSecurityProcessed).

Jeśli zasada mIsHeaderUpdated nie jest skonfigurowana, licznik klatek i klucz CSL IE nie są ustawione w ramce przez OpenThread Core i to platforma radiowa odpowiada za ich przypisanie. Przed wysłaniem klatki przez sieć bezprzewodową platforma musi zaktualizować nagłówek ramki (przypisać wartości licznika i CSL IE). Jednak jeśli transmisja zostanie przerwana, a ramka nie zostanie przesłana bezprzewodowo (np. z powodu błędu dostępu do kanału), platforma może nie aktualizować nagłówka. Jeśli platforma aktualizuje nagłówek, musi też ustawić tę flagę przed przekazaniem ramki z powrotem z wywołania zwrotnego otPlatRadioTxDone().

mIsSecurityProcessed

bool otRadioFrame::mIsSecurityProcessed

Prawda, jeśli SubMac ma pomijać przetwarzanie AES tej klatki.

mLength

uint16_t otRadioFrame::mLength

Długość subskrypcji PSDU.

mLqi

uint8_t otRadioFrame::mLqi

Wskaźnik jakości linku dla odebranych klatek.

mMaxCsmaBackoffs

uint8_t otRadioFrame::mMaxCsmaBackoffs

Maksymalna liczba prób ponowienia przed zadeklarowaniem błędu CCA.

mMaxFrameRetries

uint8_t otRadioFrame::mMaxFrameRetries

Maksymalna dozwolona liczba ponownych prób po awarii transmisji.

mPsdu

uint8_t * otRadioFrame::mPsdu

PSDU.

mRadioType

uint8_t otRadioFrame::mRadioType

Typ linku radiowego – powinien być ignorowany przez sterownik radiowy.

mRssi

int8_t otRadioFrame::mRssi

Wskaźnik siły odbieranego sygnału w dBm dla odebranych klatek.

mRxChannelAfterTxDone

uint8_t otRadioFrame::mRxChannelAfterTxDone

Kanał RX po TX ramki jest zakończony (po ponownym wykonaniu każdej próby klatki – po otrzymaniu potwierdzenia, po upływie czasu oczekiwania lub przerwaniu).

Platformy radiowe mogą całkowicie zignorować tę regułę. Stos OT wywoła funkcję otPlatRadioReceive() z wybranym kanałem RX po zakończeniu TX ramki i zasygnalizowaniu jej w wywołaniu zwrotnym otPlatRadioTxDone(). Platformy radiowe, które nie oferują funkcji OT_RADIO_CAPS_TRANSMIT_RETRIES, zawsze muszą to ignorować.

Jest to przeznaczone dla sytuacji, w których mogą występować opóźnienia w interakcjach między stosem OT a radiem. Przykładem takiego zastosowania jest architektura RCP/hosta, która zapewnia szybsze przełączanie RCP na kanał PAN. W szczególności może to pomóc w przypadku CSL Tx dla śpiącego dziecka, ponieważ może ono używać innego kanału CSL niż PAN. Po wykonaniu ramki tx chcemy szybko wrócić do kanału PAN, aby zapewnić, że urządzenie nadrzędne nie przegapi sygnału tx z systemu podrzędnego, np. odpowiadał na wcześniejszą ramkę przesłaną przez CSL za pomocą kanału PAN, podczas gdy radio pozostaje na kanale CSL.

Przełączenie na kanał RX MUSI nastąpić po zakończeniu procesu TX klatki, tj. po wszystkich ponownych próbach i odebraniu potwierdzenia (gdy w ramce TX ustawiona jest flaga „Ack Request”) lub po przekroczeniu limitu czasu potwierdzenia. Potwierdzenie jest oczekiwane w tym samym kanale, na który została wysłana ramka.

mRxInfo

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

Struktura reprezentująca ramkę radiową odbierającą informacje.

mTimestamp

uint64_t otRadioFrame::mTimestamp

Godzina lokalnego zegara radiowego w mikrosekundach, gdy na antenie lokalnej był widoczny koniec SFD.

mTxDelay

uint32_t otRadioFrame::mTxDelay

Czas opóźnienia tej transmisji podany w mikrosekundach jako wartość mTxDelayBaseTime.

Uwaga: mTxDelayBaseTime + mTxDelay SHALL wskazuje moment, w którym koniec SFD będzie obecny na antenie lokalnej w stosunku do lokalnego zegara radiowego.

mTxDelayBaseTime

uint32_t otRadioFrame::mTxDelayBaseTime

Podstawowy czas w mikrosekundach dla zaplanowanych transmisji w stosunku do lokalnego zegara radiowego (patrz otPlatRadioGetNow i mTxDelay).

mTxInfo

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

Struktura reprezentująca transmisję informacji ramki radiowej.

Zasoby

Tematy referencyjne interfejsu OpenThread API pochodzą z kodu źródłowego dostępnego w GitHub. Aby dowiedzieć się więcej lub dołączyć do naszej dokumentacji, skorzystaj z sekcji Zasoby.