otRadioFrame
#include <radio.h>
Mewakili sebuah {i>frame<i} radio IEEE 802.15.4.
Ringkasan
Atribut publik |
|
---|---|
mAckFrameCounter
|
uint32_t
Penghitung frame keamanan ACK (berlaku jika
mAckedWithSecEnhAck ditetapkan). |
mAckKeyId
|
uint8_t
Indeks kunci keamanan ACK (berlaku jika
mAckedWithSecEnhAck ditetapkan). |
mAckedWithFramePending
|
bool
Hal ini menunjukkan apakah frame ini dikonfirmasi dengan frame pending set.
|
mAckedWithSecEnhAck
|
bool
Hal ini menunjukkan jika {i>frame<i} ini telah
dikonfirmasi dengan peningkatan ACK aman.
|
mAesKey
|
const otMacKeyMaterial *
Materi kunci yang digunakan untuk keamanan {i>frame<i} AES-CCM.
|
mChannel
|
uint8_t
Saluran yang digunakan untuk mengirim/menerima bingkai.
|
mCslPresent
|
bool
Setel ke true (benar) jika header CSL IE ada.
|
mCsmaCaEnabled
|
bool
Tetapkan ke true untuk mengaktifkan CSMA-CA untuk paket ini, false jika tidak.
|
mIeInfo
|
Pointer ke informasi terkait Header IE.
|
mInfo
|
union otRadioFrame::@24
Penyatuan pengiriman dan penerimaan informasi untuk {i>frame<i} radio.
|
mIsARetx
|
bool
Menunjukkan apakah frame merupakan transmisi ulang atau bukan.
|
mIsHeaderUpdated
|
bool
Menunjukkan apakah penghitung frame dan IE CSL diupdate dengan benar di header.
|
mIsSecurityProcessed
|
bool
True jika SubMac harus melewati pemrosesan AES frame ini.
|
mLength
|
uint16_t
Durasi PSDU.
|
mLqi
|
uint8_t
Indikator Kualitas Link untuk frame yang diterima.
|
mMaxCsmaBackoffs
|
uint8_t
Jumlah maksimum upaya backoff sebelum mendeklarasikan kegagalan CCA.
|
mMaxFrameRetries
|
uint8_t
Jumlah maksimum percobaan ulang yang diizinkan setelah kegagalan transmisi.
|
mPsdu
|
uint8_t *
PSDU.
|
mRadioType
|
uint8_t
Jenis link radio - harus diabaikan oleh pengemudi radio.
|
mRssi
|
int8_t
Indikator kekuatan sinyal yang diterima dalam dBm untuk frame yang diterima.
|
mRxChannelAfterTxDone
|
uint8_t
Saluran RX setelah frame TX selesai (setelah semua percobaan ulang frame - ack diterima, atau waktu tunggu habis, atau batalkan).
|
mRxInfo
|
struct otRadioFrame::@24::@26
Struktur yang merepresentasikan {i>radioframe<i} menerima informasi.
|
mTimestamp
|
uint64_t
Waktu jam radio lokal dalam mikrodetik saat akhir SFD ada di antena lokal.
|
mTxDelay
|
uint32_t
Waktu penundaan dalam mikrodetik untuk transmisi ini dirujuk ke
mTxDelayBaseTime . |
mTxDelayBaseTime
|
uint32_t
Waktu dasar dalam mikrodetik untuk transmisi terjadwal relatif terhadap jam radio lokal, lihat
otPlatRadioGetNow dan mTxDelay . |
mTxInfo
|
struct otRadioFrame::@24::@25
Struktur yang merepresentasikan informasi transmisi {i>frame<i} radio.
|
Atribut publik
mAckFrameCounter
uint32_t otRadioFrame::mAckFrameCounter
Penghitung frame keamanan ACK (berlaku jika mAckedWithSecEnhAck
ditetapkan).
mAckKeyId
uint8_t otRadioFrame::mAckKeyId
Indeks kunci keamanan ACK (berlaku jika mAckedWithSecEnhAck
ditetapkan).
mAckedWithFramePending
bool otRadioFrame::mAckedWithFramePending
Hal ini menunjukkan apakah frame ini dikonfirmasi dengan frame pending set.
mAckedWithSecEnhAck
bool otRadioFrame::mAckedWithSecEnhAck
Hal ini menunjukkan jika {i>frame<i} ini telah dikonfirmasi dengan peningkatan ACK aman.
mAesKey
const otMacKeyMaterial * otRadioFrame::mAesKey
Materi kunci yang digunakan untuk keamanan {i>frame<i} AES-CCM.
mChannel
uint8_t otRadioFrame::mChannel
Saluran yang digunakan untuk mengirim/menerima bingkai.
mCslPresent
bool otRadioFrame::mCslPresent
Setel ke true (benar) jika header CSL IE ada.
mCsmaCaEnabled
bool otRadioFrame::mCsmaCaEnabled
Tetapkan ke true untuk mengaktifkan CSMA-CA untuk paket ini, false jika tidak.
mInfo
union otRadioFrame::@24 otRadioFrame::mInfo
Penyatuan pengiriman dan penerimaan informasi untuk {i>frame<i} radio.
mIsARetx
bool otRadioFrame::mIsARetx
Menunjukkan apakah frame merupakan transmisi ulang atau bukan.
mIsHeaderUpdated
bool otRadioFrame::mIsHeaderUpdated
Menunjukkan apakah penghitung frame dan IE CSL diupdate dengan benar di header.
Jika lapisan platform tidak menyediakan kemampuan OT_RADIO_CAPS_TRANSMIT_SEC
, lapisan tersebut dapat mengabaikan flag ini.
Jika platform menyediakan kemampuan OT_RADIO_CAPS_TRANSMIT_SEC
, platform diharapkan dapat menangani pemrosesan keamanan tx dan penetapan penghitung frame. Dalam hal ini perilaku berikut diharapkan:
Jika mIsHeaderUpdated
disetel, ini menunjukkan bahwa inti OpenThread telah menetapkan penghitung frame dan CSL IE (jika keamanan diaktifkan) di frame yang disiapkan. Penghitung dipastikan cocok dengan nilai penghitung dari upaya sebelumnya pada frame yang sama. Platform tidak boleh menetapkan atau mengubah penghitung frame (tetapi mungkin masih perlu melakukan pemrosesan keamanan, bergantung pada flag mIsSecurityProcessed
).
Jika mIsHeaderUpdated
tidak ditetapkan, penghitung frame dan CSL IE kunci tidak ditetapkan dalam frame oleh inti OpenThread dan merupakan tanggung jawab platform radio untuk menetapkannya. Platform harus memperbarui header frame (menetapkan nilai penghitung dan CSL IE) sebelum mengirimkan frame over the air, namun jika transmisi dibatalkan dan frame tidak pernah dikirim over the air (misalnya error akses saluran), platform dapat memilih untuk tidak memperbarui header. Jika platform memperbarui header, platform juga harus menetapkan tanda ini sebelum meneruskan frame kembali dari callback otPlatRadioTxDone()
.
mIsSecurityProcessed
bool otRadioFrame::mIsSecurityProcessed
True jika SubMac harus melewati pemrosesan AES frame ini.
mLength
uint16_t otRadioFrame::mLength
Durasi PSDU.
mLqi
uint8_t otRadioFrame::mLqi
Indikator Kualitas Link untuk frame yang diterima.
mMaxCsmaBackoffs
uint8_t otRadioFrame::mMaxCsmaBackoffs
Jumlah maksimum upaya backoff sebelum mendeklarasikan kegagalan CCA.
mMaxFrameRetries
uint8_t otRadioFrame::mMaxFrameRetries
Jumlah maksimum percobaan ulang yang diizinkan setelah kegagalan transmisi.
mPsdu
uint8_t * otRadioFrame::mPsdu
PSDU.
mRadioType
uint8_t otRadioFrame::mRadioType
Jenis link radio - harus diabaikan oleh pengemudi radio.
mRssi
int8_t otRadioFrame::mRssi
Indikator kekuatan sinyal yang diterima dalam dBm untuk frame yang diterima.
mRxChannelAfterTxDone
uint8_t otRadioFrame::mRxChannelAfterTxDone
Saluran RX setelah frame TX selesai (setelah semua percobaan ulang frame - ack diterima, atau waktu tunggu habis, atau batalkan).
Platform radio dapat memilih untuk sepenuhnya mengabaikan ini. Stack OT akan memastikan untuk memanggil otPlatRadioReceive()
dengan saluran RX yang diinginkan setelah TX frame selesai dan diberi sinyal dalam callback otPlatRadioTxDone()
. Platform radio yang tidak menyediakan OT_RADIO_CAPS_TRANSMIT_RETRIES
harus selalu mengabaikan ini.
Hal ini ditujukan untuk situasi saat mungkin ada penundaan dalam interaksi antara stack OT dan radio, sebagai contoh yang digunakan dalam arsitektur RCP/host untuk memastikan RCP beralih ke saluran PAN lebih cepat. Secara khusus, tindakan ini dapat membantu mengatasi CSL tx pada anak yang mengantuk, dan dia dapat menggunakan saluran CSL yang berbeda dari saluran PAN. Setelah frame tx, kita ingin radio/RCP kembali ke saluran PAN dengan cepat untuk memastikan bahwa induk tidak melewatkan tx dari turunan setelahnya, misalnya, turunan yang merespons frame yang ditransmisikan CSL sebelumnya dari induk menggunakan saluran PAN sementara radio masih tetap di saluran CSL.
Peralihan ke saluran RX HARUS terjadi setelah frame TX selesai sepenuhnya, yaitu, setelah semua percobaan ulang dan saat ack diterima (saat tanda "Permintaan Ack" disetel pada frame TX) atau waktu tunggu ack. Perhatikan bahwa ack diharapkan di saluran yang sama dengan tempat pengiriman frame.
mRxInfo
struct otRadioFrame::@24::@26 otRadioFrame::mRxInfo
Struktur yang merepresentasikan {i>radioframe<i} menerima informasi.
mTimestamp
uint64_t otRadioFrame::mTimestamp
Waktu jam radio lokal dalam mikrodetik saat akhir SFD ada di antena lokal.
mTxDelay
uint32_t otRadioFrame::mTxDelay
Waktu penundaan dalam mikrodetik untuk transmisi ini dirujuk ke mTxDelayBaseTime
.
Catatan: mTxDelayBaseTime
+ mTxDelay
AKAN menunjukkan ke titik waktu ketika akhir SFD akan muncul di antena lokal, relatif terhadap jam radio lokal.
mTxDelayBaseTime
uint32_t otRadioFrame::mTxDelayBaseTime
Waktu dasar dalam mikrodetik untuk transmisi terjadwal relatif terhadap jam radio lokal, lihat otPlatRadioGetNow
dan mTxDelay
.
mTxInfo
struct otRadioFrame::@24::@25 otRadioFrame::mTxInfo
Struktur yang merepresentasikan informasi transmisi {i>frame<i} radio.
Referensi
Topik Referensi OpenThread API berasal dari kode sumber yang tersedia di GitHub. Untuk informasi selengkapnya, atau untuk berkontribusi pada dokumentasi kami, lihat Referensi.