otRadioFrame

#include <radio.h>

Stellt einen IEEE 802.15.4-Funkframe dar.

Zusammenfassung

Öffentliche Attribute

mAckFrameCounter
uint32_t
ACK-Sicherheitsframe-Zähler (gilt, wenn mAckedWithSecEnhAck festgelegt ist)
mAckKeyId
uint8_t
Index des ACK-Sicherheitsschlüssels (anwendbar, wenn mAckedWithSecEnhAck festgelegt ist).
mAckedWithFramePending
bool
Gibt an, ob dieser Frame mit der Einstellung „Frame ausstehend“ bestätigt wurde.
mAckedWithSecEnhAck
bool
Gibt an, ob dieser Frame mit gesichertem Enhancement ACK bestätigt wurde.
mAesKey
Das für die AES-CCM-Framesicherheit verwendete Schlüsselmaterial.
mChannel
uint8_t
Kanal, der zum Übertragen/Empfangen des Frames verwendet wird.
mCslPresent
bool
Geben Sie "true" an, wenn der CSL-Header IE vorhanden ist.
mCsmaCaEnabled
bool
Setzen Sie den Wert auf „true“, um CSMA-CA für dieses Paket zu aktivieren, andernfalls auf „false“.
mIeInfo
Der Zeiger auf die Header-IE(s)-Informationen.
mInfo
union otRadioFrame::@24
Die Zusammenführung von Sende- und Empfangsinformationen für einen Funkrahmen.
mIsARetx
bool
Gibt an, ob der Frame erneut übertragen wurde oder nicht.
mIsHeaderUpdated
bool
Gibt an, ob der Frame-Zähler und CSL-IEs im Header ordnungsgemäß aktualisiert werden.
mIsSecurityProcessed
bool
True, wenn der SubMac die AES-Verarbeitung dieses Frames überspringen soll.
mLength
uint16_t
Länge der PSDU.
mLqi
uint8_t
Linkqualitätsanzeige für empfangene Frames.
mMaxCsmaBackoffs
uint8_t
Maximale Anzahl von Backoff-Versuchen, bevor der CCA-Fehler deklariert wird.
mMaxFrameRetries
uint8_t
Maximal zulässige Anzahl von Wiederholungen nach einem Übertragungsfehler.
mPsdu
uint8_t *
Die PSDU.
mRadioType
uint8_t
Funklinktyp – sollte vom Radiotreiber ignoriert werden.
mRssi
int8_t
Anzeige der empfangenen Signalstärke in dBm für empfangene Frames.
mRxChannelAfterTxDone
uint8_t
Der RX-Kanal nach Frame TX ist abgeschlossen (nach allen Frame-Wiederholungen – Bestätigung empfangen, Zeitüberschreitung oder Abbruch).
mRxInfo
struct otRadioFrame::@24::@26
Struktur, die Funkframe-Empfangsinformationen darstellt.
mTimestamp
uint64_t
Die Zeit der lokalen Radiouhr in Mikrosekunden, als das SFD-Ende bei der lokalen Antenne vorhanden war.
mTxDelay
uint32_t
Die Verzögerungszeit in Mikrosekunden für diese Übertragung, auf die mTxDelayBaseTime verweist.
mTxDelayBaseTime
uint32_t
Die Basiszeit in Mikrosekunden für geplante Übertragungen bezogen auf die lokale Radiouhr, siehe otPlatRadioGetNow und mTxDelay.
mTxInfo
struct otRadioFrame::@24::@25
Struktur, die Funkframe-Übertragungsinformationen darstellt.

Öffentliche Attribute

mAckFrameCounter

uint32_t otRadioFrame::mAckFrameCounter

ACK-Sicherheitsframe-Zähler (gilt, wenn mAckedWithSecEnhAck festgelegt ist)

mAckKeyId

uint8_t otRadioFrame::mAckKeyId

Index des ACK-Sicherheitsschlüssels (anwendbar, wenn mAckedWithSecEnhAck festgelegt ist).

mAckedWithFramePending

bool otRadioFrame::mAckedWithFramePending

Gibt an, ob dieser Frame mit der Einstellung „Frame ausstehend“ bestätigt wurde.

mAckedWithSecEnhAck

bool otRadioFrame::mAckedWithSecEnhAck

Gibt an, ob dieser Frame mit gesichertem Enhancement ACK bestätigt wurde.

mAesKey

const otMacKeyMaterial * otRadioFrame::mAesKey

Das für die AES-CCM-Framesicherheit verwendete Schlüsselmaterial.

mChannel

uint8_t otRadioFrame::mChannel

Kanal, der zum Übertragen/Empfangen des Frames verwendet wird.

mCslPresent

bool otRadioFrame::mCslPresent

Geben Sie "true" an, wenn der CSL-Header IE vorhanden ist.

mCsmaCaEnabled

bool otRadioFrame::mCsmaCaEnabled

Setzen Sie den Wert auf „true“, um CSMA-CA für dieses Paket zu aktivieren, andernfalls auf „false“.

mIeInfo

otRadioIeInfo * otRadioFrame::mIeInfo

Der Zeiger auf die Header-IE(s)-Informationen.

mInfo

union otRadioFrame::@24 otRadioFrame::mInfo

Die Zusammenführung von Sende- und Empfangsinformationen für einen Funkrahmen.

mIsARetx

bool otRadioFrame::mIsARetx

Gibt an, ob der Frame erneut übertragen wurde oder nicht.

mIsHeaderUpdated

bool otRadioFrame::mIsHeaderUpdated

Gibt an, ob der Frame-Zähler und CSL-IEs im Header ordnungsgemäß aktualisiert werden.

Wenn die Plattformebene keine OT_RADIO_CAPS_TRANSMIT_SEC-Funktionen bietet, kann dieses Flag ignoriert werden.

Wenn die Plattform OT_RADIO_CAPS_TRANSMIT_SEC-Funktionen bietet, wird erwartet, dass sie die TX-Sicherheitsverarbeitung und die Zuweisung des Frame-Zählers abwickelt. In diesem Fall ist das folgende Verhalten zu erwarten:

Wenn mIsHeaderUpdated festgelegt ist, bedeutet dies, dass OpenThread Core bereits den Frame-Zähler und CSL-IEs (bei aktivierter Sicherheit) im vorbereiteten Frame festgelegt hat. Es wird sichergestellt, dass der Zähler mit dem Zählerwert der vorherigen Versuche desselben Frames übereinstimmt. Die Plattform sollte den Frame-Zähler weder zuweisen noch ändern, aber möglicherweise muss, abhängig vom mIsSecurityProcessed-Flag, dennoch eine Sicherheitsverarbeitung durchgeführt werden.

Wenn mIsHeaderUpdated nicht festgelegt ist, werden der Frame-Zähler und der Schlüssel-CSL IE nicht im Frame vom OpenThread-Core festgelegt, und es liegt in der Verantwortung der Funkplattform, sie zuzuweisen. Die Plattform muss den Frame-Header aktualisieren (Zähler- und CSL IE-Werte zuweisen), bevor der Frame over-the-air gesendet wird. Wenn die Übertragung jedoch abgebrochen wird und der Frame nie over-the-air gesendet wird (z. B. ein Fehler beim Kanalzugriff), kann die Plattform den Header möglicherweise nicht aktualisieren. Wenn die Plattform den Header aktualisiert, muss auch dieses Flag festgelegt werden, bevor der Frame vom otPlatRadioTxDone()-Callback zurückgegeben wird.

mIsSecurityProcessed

bool otRadioFrame::mIsSecurityProcessed

True, wenn der SubMac die AES-Verarbeitung dieses Frames überspringen soll.

mLength

uint16_t otRadioFrame::mLength

Länge der PSDU.

mLqi

uint8_t otRadioFrame::mLqi

Linkqualitätsanzeige für empfangene Frames.

mMaxCsmaBackoffs

uint8_t otRadioFrame::mMaxCsmaBackoffs

Maximale Anzahl von Backoff-Versuchen, bevor der CCA-Fehler deklariert wird.

mMaxFrameRetries

uint8_t otRadioFrame::mMaxFrameRetries

Maximal zulässige Anzahl von Wiederholungen nach einem Übertragungsfehler.

mPsdu

uint8_t * otRadioFrame::mPsdu

Die PSDU.

mRadioType

uint8_t otRadioFrame::mRadioType

Funklinktyp – sollte vom Radiotreiber ignoriert werden.

mRssi

int8_t otRadioFrame::mRssi

Anzeige der empfangenen Signalstärke in dBm für empfangene Frames.

mRxChannelAfterTxDone

uint8_t otRadioFrame::mRxChannelAfterTxDone

Der RX-Kanal nach Frame TX ist abgeschlossen (nach allen Frame-Wiederholungen – Bestätigung empfangen, Zeitüberschreitung oder Abbruch).

Radioplattformen können dies ignorieren. Der OT-Stack sorgt dafür, dass otPlatRadioReceive() mit dem gewünschten RX-Kanal aufgerufen wird, nachdem ein Frame TX abgeschlossen und im otPlatRadioTxDone()-Callback signalisiert wurde. Radioplattformen, die OT_RADIO_CAPS_TRANSMIT_RETRIES nicht bereitstellen, müssen dies immer ignorieren.

Dies ist für Situationen gedacht, in denen es zu Verzögerungen bei Interaktionen zwischen dem OT-Stack und der Funkschnittstelle kommen kann. Ein Beispiel hierfür wird in der RCP-/Host-Architektur verwendet, damit RCP schneller zum PAN-Kanal wechselt. Dies kann insbesondere bei der CSL für ein schläfriges Kind hilfreich sein, wenn es einen anderen Kanal als den PAN-Kanal für CSL verwendet. Nach Frame tx soll der Funk-/RCP-Kanal schnell zum PAN-Kanal zurückwechseln, um sicherzustellen, dass das übergeordnete Element tx des untergeordneten Elements anschließend nicht verpasst, z.B. wenn das Kind auf den zuvor übertragenen CSL-Frame vom übergeordneten CSL-Kanal antwortet, der den PAN-Kanal verwendet, während der Funk noch auf dem CSL-Kanal bleibt.

Der Wechsel zum RX-Kanal MUSS geschehen, nachdem der Frame TX vollständig abgeschlossen ist, d.h. nach allen Wiederholungen und wenn die Bestätigung empfangen wurde (wenn das Flag „Ack Request“ auf den TX-Frame gesetzt ist) oder das Bestätigungs-Timeout. Die Bestätigung wird auf dem Kanal erwartet, über den der Frame gesendet wird.

mRxInfo

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

Struktur, die Funkframe-Empfangsinformationen darstellt.

mTimestamp

uint64_t otRadioFrame::mTimestamp

Die Zeit der lokalen Radiouhr in Mikrosekunden, als das SFD-Ende bei der lokalen Antenne vorhanden war.

mTxDelay

uint32_t otRadioFrame::mTxDelay

Die Verzögerungszeit in Mikrosekunden für diese Übertragung, auf die mTxDelayBaseTime verweist.

Hinweis: mTxDelayBaseTime + mTxDelay MÜSSEN auf den Zeitpunkt verweisen, an dem das Ende von SFD bei der lokalen Antenne in Bezug auf die lokale Funkuhr vorhanden ist.

mTxDelayBaseTime

uint32_t otRadioFrame::mTxDelayBaseTime

Die Basiszeit in Mikrosekunden für geplante Übertragungen bezogen auf die lokale Radiouhr, siehe otPlatRadioGetNow und mTxDelay.

mTxInfo

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

Struktur, die Funkframe-Übertragungsinformationen darstellt.

Ressourcen

OpenThread API-Referenzthemen stammen aus dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen finden Sie unter Ressourcen. Dort können Sie auch einen Beitrag zu unserer Dokumentation leisten.