Cấu hình đài
Mô-đun này bao gồm nội dung tóm tắt nền tảng cho cấu hình radio.
Tóm tắt
Hàm |
|
---|---|
otPlatRadioGetBusSpeed(otInstance *aInstance)
|
uint32_t
Nhận tốc độ bus tính bằng bit/giây giữa máy chủ lưu trữ và chip radio.
|
otPlatRadioGetCaps(otInstance *aInstance)
|
Khai thác các chức năng của đài phát thanh.
|
otPlatRadioGetCcaEnergyDetectThreshold(otInstance *aInstance, int8_t *aThreshold)
|
Lấy ngưỡng CCA ED của sóng vô tuyến tính bằng dBm đo tại đầu nối ăng ten theo tiêu chuẩn IEEE 802.15.4 - 2015 10.1.4.
|
otPlatRadioGetFemLnaGain(otInstance *aInstance, int8_t *aGain)
|
Nhận mức tăng Rx LNA của FEM bên ngoài tính bằng dBm.
|
otPlatRadioGetIeeeEui64(otInstance *aInstance, uint8_t *aIeeeEui64)
|
void
Nhận mã IEEE EUI-64 do nhà máy chỉ định cho giao diện này.
|
otPlatRadioGetNow(otInstance *aInstance)
|
uint64_t
Lấy thời gian hiện tại tính bằng micrô giây được tham chiếu đến đồng hồ vô tuyến cục bộ đơn điệu liên tục (chiều rộng 64 bit).
|
otPlatRadioGetPromiscuous(otInstance *aInstance)
|
bool
Xem trạng thái của chế độ hỗn tạp.
|
otPlatRadioGetReceiveSensitivity(otInstance *aInstance)
|
int8_t
Nhận giá trị độ nhạy của sóng radio.
|
otPlatRadioGetTransmitPower(otInstance *aInstance, int8_t *aPower)
|
Lấy công suất truyền của đài tính bằng dBm.
|
otPlatRadioGetVersionString(otInstance *aInstance)
|
const char *
Lấy chuỗi phiên bản đài.
|
otPlatRadioSetCcaEnergyDetectThreshold(otInstance *aInstance, int8_t aThreshold)
|
Thiết lập ngưỡng CCA ED của sóng vô tuyến tính bằng dBm đo tại đầu nối ăng ten theo tiêu chuẩn IEEE 802.15.4 - 2015 10.1.4.
|
otPlatRadioSetExtendedAddress(otInstance *aInstance, const otExtAddress *aExtAddress)
|
void
Đặt Địa chỉ mở rộng để lọc địa chỉ.
|
otPlatRadioSetFemLnaGain(otInstance *aInstance, int8_t aGain)
|
Đặt mức tăng LNA Rx của FEM bên ngoài tính bằng dBm.
|
otPlatRadioSetMacFrameCounter(otInstance *aInstance, uint32_t aMacFrameCounter)
|
void
Đặt giá trị bộ đếm khung MAC hiện tại.
|
otPlatRadioSetMacFrameCounterIfLarger(otInstance *aInstance, uint32_t aMacFrameCounter)
|
void
Chỉ đặt giá trị bộ đếm khung MAC hiện tại khi giá trị mới cho trước lớn hơn giá trị hiện tại.
|
otPlatRadioSetMacKey(otInstance *aInstance, uint8_t aKeyIdMode, uint8_t aKeyId, const otMacKeyMaterial *aPrevKey, const otMacKeyMaterial *aCurrKey, const otMacKeyMaterial *aNextKey, otRadioKeyType aKeyType)
|
void
Cập nhật khoá MAC và chỉ mục khoá.
|
otPlatRadioSetPanId(otInstance *aInstance, otPanId aPanId)
|
void
Đặt mã PAN để lọc địa chỉ.
|
otPlatRadioSetPromiscuous(otInstance *aInstance, bool aEnable)
|
void
Bật hoặc tắt chế độ hỗn tạp.
|
otPlatRadioSetRxOnWhenIdle(otInstance *aInstance, bool aEnable)
|
void
Đặt trạng thái rx-on-when-idle cho nền tảng radio.
|
otPlatRadioSetShortAddress(otInstance *aInstance, otShortAddress aShortAddress)
|
void
Đặt Địa chỉ ngắn để lọc địa chỉ.
|
otPlatRadioSetTransmitPower(otInstance *aInstance, int8_t aPower)
|
Đặt công suất truyền của đài bằng dBm.
|
Hàm
otPlatRadioGetBusSpeed
uint32_t otPlatRadioGetBusSpeed( otInstance *aInstance )
Nhận tốc độ bus tính bằng bit/giây giữa máy chủ lưu trữ và chip radio.
Thông tin chi tiết | |||
---|---|---|---|
Thông số |
|
||
Trả về |
Tốc độ bus tính bằng bit/giây giữa máy chủ và chip vô tuyến. Trả về 0 khi lớp MAC trở lên và lớp Radio nằm trên cùng một khối.
|
otPlatRadioGetCaps
otRadioCaps otPlatRadioGetCaps( otInstance *aInstance )
Khai thác các chức năng của đài phát thanh.
Thông tin chi tiết | |||
---|---|---|---|
Thông số |
|
||
Trả về |
Vectơ bit chức năng vô tuyến (xem định nghĩa
OT_RADIO_CAP_* ). |
otPlatRadioGetCcaEnergyDetectThreshold
otError otPlatRadioGetCcaEnergyDetectThreshold( otInstance *aInstance, int8_t *aThreshold )
Lấy ngưỡng CCA ED của sóng vô tuyến tính bằng dBm đo tại đầu nối ăng ten theo tiêu chuẩn IEEE 802.15.4 - 2015 10.1.4.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
|
||||||
Giá trị trả về |
|
otPlatRadioGetFemLnaGain
otError otPlatRadioGetFemLnaGain( otInstance *aInstance, int8_t *aGain )
Nhận mức tăng Rx LNA của FEM bên ngoài tính bằng dBm.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
|
||||||
Giá trị trả về |
|
otPlatRadioGetIeeeEui64
void otPlatRadioGetIeeeEui64( otInstance *aInstance, uint8_t *aIeeeEui64 )
Nhận mã IEEE EUI-64 do nhà máy chỉ định cho giao diện này.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
otPlatRadioGetNow
uint64_t otPlatRadioGetNow( otInstance *aInstance )
Lấy thời gian hiện tại tính bằng micrô giây được tham chiếu đến đồng hồ vô tuyến cục bộ đơn điệu liên tục (chiều rộng 64 bit).
Đồng hồ radio KHÔNG được gói trong thời gian hoạt động của thiết bị. Do đó, việc triển khai SHALL sẽ xác định và bù cho việc tràn bộ đếm nội bộ. Đồng hồ không có thời gian bắt đầu của hệ thống xác định và sẽ KHÔNG đưa ra bất kỳ sự điều chỉnh liên tục hoặc gián đoạn nào (ví dụ: giây nhuận). Các phương thức triển khai SẼ bù đắp cho mọi thời gian ngủ của thiết bị.
Các phương pháp triển khai CÓ THỂ chọn kỷ luật đồng hồ vô tuyến và bù lại thời gian ngủ bằng bất kỳ cách nào (ví dụ: bằng cách kết hợp RTC có độ chính xác cao/công suất thấp với bộ đếm độ phân giải cao) miễn là đồng hồ kết hợp tiếp xúc cung cấp độ phân giải micrô đơn âm liên tục trong giới hạn độ chính xác do otPlatRadioGetCslAccuracy công bố.
Thông tin chi tiết | |||
---|---|---|---|
Thông số |
|
||
Trả về |
Thời gian hiện tại tính bằng micrô giây. UINT64_MAX khi nền tảng không hỗ trợ hoặc thời gian vô tuyến chưa sẵn sàng.
|
otPlatRadioGetPromiscuous
bool otPlatRadioGetPromiscuous( otInstance *aInstance )
Xem trạng thái của chế độ hỗn tạp.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
||||
Giá trị trả về |
|
otPlatRadioGetReceiveSensitivity
int8_t otPlatRadioGetReceiveSensitivity( otInstance *aInstance )
Nhận giá trị độ nhạy của sóng radio.
Thông tin chi tiết | |||
---|---|---|---|
Thông số |
|
||
Trả về |
Giá trị độ nhạy nhận sóng vô tuyến tính bằng dBm.
|
otPlatRadioGetTransmitPower
otError otPlatRadioGetTransmitPower( otInstance *aInstance, int8_t *aPower )
Lấy công suất truyền của đài tính bằng dBm.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
|
||||||
Giá trị trả về |
|
otPlatRadioGetVersionString
const char * otPlatRadioGetVersionString( otInstance *aInstance )
Lấy chuỗi phiên bản đài.
Đây là chức năng nền tảng trình điều khiển vô tuyến không bắt buộc. Nếu không được trình điều khiển radio nền tảng cung cấp, OpenThread sử dụng phiên bản OpenThread thay thế (
Thông tin chi tiết | |||
---|---|---|---|
Thông số |
|
||
Trả về |
Con trỏ đến phiên bản radio OpenThread.
|
otGetVersionString()).
otPlatRadioSetCcaEnergyDetectThreshold
otError otPlatRadioSetCcaEnergyDetectThreshold( otInstance *aInstance, int8_t aThreshold )
Thiết lập ngưỡng CCA ED của sóng vô tuyến tính bằng dBm đo tại đầu nối ăng ten theo tiêu chuẩn IEEE 802.15.4 - 2015 10.1.4.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
|
||||||
Giá trị trả về |
|
otPlatRadioSetExtendedAddress
void otPlatRadioSetExtendedAddress( otInstance *aInstance, const otExtAddress *aExtAddress )
Đặt Địa chỉ mở rộng để lọc địa chỉ.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
otPlatRadioSetFemLnaGain
otError otPlatRadioSetFemLnaGain( otInstance *aInstance, int8_t aGain )
Đặt mức tăng LNA Rx của FEM bên ngoài tính bằng dBm.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
||||
Giá trị trả về |
|
otPlatRadioSetMacFrameCounter
void otPlatRadioSetMacFrameCounter( otInstance *aInstance, uint32_t aMacFrameCounter )
Đặt giá trị bộ đếm khung MAC hiện tại.
Được dùng khi đài cung cấp chức năng OT_RADIO_CAPS_TRANSMIT_SEC
.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
otPlatRadioSetMacFrameCounterIfLarger
void otPlatRadioSetMacFrameCounterIfLarger( otInstance *aInstance, uint32_t aMacFrameCounter )
Chỉ đặt giá trị bộ đếm khung MAC hiện tại khi giá trị mới cho trước lớn hơn giá trị hiện tại.
Được dùng khi đài cung cấp chức năng OT_RADIO_CAPS_TRANSMIT_SEC
.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
otPlatRadioSetMacKey
void otPlatRadioSetMacKey( otInstance *aInstance, uint8_t aKeyIdMode, uint8_t aKeyId, const otMacKeyMaterial *aPrevKey, const otMacKeyMaterial *aCurrKey, const otMacKeyMaterial *aNextKey, otRadioKeyType aKeyType )
Cập nhật khoá MAC và chỉ mục khoá.
Được dùng khi đài phát có chức năng OT_Radio_CAPS_TRANSMIT_SEC.
Thông tin chi tiết | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Thông số |
|
otPlatRadioSetPanId
void otPlatRadioSetPanId( otInstance *aInstance, otPanId aPanId )
Đặt mã PAN để lọc địa chỉ.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
otPlatRadioSetPromiscuous
void otPlatRadioSetPromiscuous( otInstance *aInstance, bool aEnable )
Bật hoặc tắt chế độ hỗn tạp.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
otPlatRadioSetRxOnWhenIdle
void otPlatRadioSetRxOnWhenIdle( otInstance *aInstance, bool aEnable )
Đặt trạng thái rx-on-when-idle cho nền tảng radio.
Có một vài tình huống đài phát có thể chuyển sang trạng thái ngủ nếu thiết bị ở trạng thái rx-off-when-idle, nhưng SubMac khó có thể xác định những tình huống này và hướng dẫn đài chuyển sang trạng thái ngủ:
- Hoàn tất tác vụ nhận khung hình thông thường, với điều kiện là:
- Khung hình nhận được không có lỗi, vượt qua quá trình lọc và không phải là ACK giả.
- Không yêu cầu ACK hoặc không thể truyền ACK do các điều kiện nội bộ.
- Hoàn tất việc truyền khung hoặc truyền khung ACK khi không yêu cầu ACK trong khung truyền.
- Việc hoàn tất hoạt động tiếp nhận của ACK được yêu cầu do:
- Hết thời gian chờ ACK.
- Có nhận ACK không hợp lệ hoặc không phải khung ACK.
- Việc nhận ACK phù hợp, trừ khi khung đã truyền là một Lệnh yêu cầu dữ liệu và bit đang chờ xử lý khung trên ACK nhận được đặt thành true. Trong trường hợp này, việc triển khai nền tảng vô tuyến PHẢI giữ bộ thu ở trạng thái bật cho đến khi hết thời gian chờ được xác định, điều này sẽ kích hoạt thời gian không hoạt động.
OPENTHREAD_CONFIG_MAC_DATA_POLL_TIMEOUT
có thể được dùng làm tài liệu tham khảo cho vấn đề này.
- Hoàn thiện nhiệm vụ CCA độc lập.
- Hoàn tất thao tác CCA có kết quả bận trong quy trình CSMA/CA.
- Hoàn thành nhiệm vụ Phát hiện năng lượng.
- Hoàn tất khung thời gian thu nhận sóng vô tuyến theo lịch với
otPlatRadioReceiveAt
.
Nếu một nền tảng hỗ trợ OT_RADIO_CAPS_RX_ON_WHEN_IDLE
thì nền tảng đó cũng phải hỗ trợ OT_RADIO_CAPS_CSMA_BACKOFF
và xử lý thời gian không hoạt động sau CCA như mô tả ở trên.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
otPlatRadioSetShortAddress
void otPlatRadioSetShortAddress( otInstance *aInstance, otShortAddress aShortAddress )
Đặt Địa chỉ ngắn để lọc địa chỉ.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
otPlatRadioSetTransmitPower
otError otPlatRadioSetTransmitPower( otInstance *aInstance, int8_t aPower )
Đặt công suất truyền của đài bằng dBm.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
||||
Giá trị trả về |
|
Tài nguyên
Các chủ đề tham khảo API OpenThread bắt nguồn từ mã nguồn, có trên GitHub. Để biết thêm thông tin hoặc để đóng góp cho tài liệu của chúng tôi, hãy tham khảo Tài nguyên.