SDK
23.9.2
For IoT System Software Development
|
무선 패킷 More...
#include <RadioPacket.hpp>
Public Types | |
enum | Result_t { SUCCESS = 0, FAIL = -1, NOT_ENOUGH_MEMORY = -2, CANCELED = -3, TOO_BIG = -4, DROPPED = -7, INVALID_ARGS = -8, INIT = -127 } |
Public Member Functions | |
RadioPacket (uint16_t len=0) | |
void | operator= (const RadioPacket &) |
virtual size_t | printTo (Print &) const override |
virtual size_t | printPropertiesTo (Print &p) const |
Public Attributes | |
Result_t | result |
송신 또는 수신 패킷 처리 결과 | |
int16_t | power |
송신시 사용할 power (단위: dBm) 또는 수신시의 신호 세기 (단위: dB) | |
uint32_t | freq |
송신시 사용할, 또는 수신시 사용된 주파수 (단위: Hz) | |
int64_t | timestamp |
송신시 사용할, 또는 수신시의 타임스탬프 More... | |
Radio::Modulation_t | modulation |
송신시 사용할, 또는 수신시 사용된 변복조 방식 | |
union { | |
struct { | |
int8_t snr | |
수신시의 Signal-to-Noise Ratio (SNR) | |
Radio::LoRaSF_t sf | |
송신시 사용할, 또는 수신시 사용된 spreading factor | |
Radio::LoRaCR_t cr | |
송신시 사용할, 또는 수신시 사용된 coding rate | |
Radio::LoRaBW_t bw | |
송신시 사용할, 또는 수신시 사용된 bandwidth | |
Radio::LoRaIQ_t iq | |
송신시 사용할, 또는 수신시 사용된 I&Q signal mode | |
uint16_t preambleLength | |
Radio::AutoCRCOption_t autoCrcOpt | |
Radio::FixedPayloadLengthOption_t fixedPayloadLengthOpt | |
uint8_t fixedPayloadLength | |
Radio::RxTimeoutOption_t rxTimeoutOpt | |
uint16_t rxTimeout | |
} LoRa | |
modulation 이 Radio::MOD_LORA 인 경우 사용되는 변수 | |
struct { | |
uint32_t drBps | |
송신시 사용할, 또는 수신시 사용된 data rate (단위: bps) | |
uint32_t bwHz | |
송신시 사용할, 또는 수신시 사용된 bandwidth (단위: Hz) | |
uint32_t afcBwHz | |
uint32_t fDevHz | |
송신시 사용할, 또는 수신시 사용된 frequency deviation (단위: Hz) | |
uint16_t preambleLength | |
Radio::AutoCRCOption_t autoCrcOpt | |
Radio::FixedPayloadLengthOption_t fixedPayloadLengthOpt | |
uint8_t fixedPayloadLength | |
Radio::RxTimeoutOption_t rxTimeoutOpt | |
uint16_t rxTimeout | |
} FSK | |
modulation 이 Radio::MOD_FSK 인 경우 사용되는 변수 | |
struct { | |
uint8_t corr | |
송신시 사용할, 또는 수신시 사용된 correlation | |
} DSSS | |
modulation 이 Radio::MOD_DSSS 인 경우 사용되는 변수 | |
} | meta |
변복조 방식에 대한 속성 More... | |
uint16_t | len |
uint8_t * | buf |
무선 패킷
Enumerator | |
---|---|
SUCCESS | 송신 또는 수신 성공 |
FAIL | 송신시에는 MAC 프로토콜에 따라서 채널 혼잡, Ack 미수신 등으로 인해, 수신시에는 MAC 프로토콜에 따라서 CRC 실패 등으로 인해 실패 |
NOT_ENOUGH_MEMORY | 메모리 부족으로 인해 송신 또는 수신 실패 |
CANCELED | PacketRadio::cancelSend() 에 의해 송신 취소됨 |
TOO_BIG | 프레임이 너무 커서 전송 불가 |
DROPPED | 큐 공간 부족으로 인해 drop 됨 |
INVALID_ARGS | 잘못된 인자 |
INIT | 처리 전 상태 |
union { ... } RadioPacket::meta |
변복조 방식에 대한 속성
변복조 방식에 따른 패킷의 속성을 표현합니다.
modulation | 접근방법 |
---|---|
Radio::MOD_LORA | meta.LoRa |
Radio::MOD_FSK | meta.FSK |
Radio::MOD_DSSS | meta.DSSS |
int64_t RadioPacket::timestamp |
송신시 사용할, 또는 수신시의 타임스탬프
타임스탬프를 지원하는 PacketRadioChip 에서 사용되며, 미지원하는 PacketRadioChip 에서는 무시됩니다. 단위와 용도는 PacketRadioChip 마다 다릅니다. 통상적으로 하드웨어 자체에서 제공하는 시간으로 시스템 시간과 매핑되지 않습니다. 시스템 시간은 PacketRadioChip::onRxStarted, PacketRadioChip::onRxDone, PacketRadioChip::onTxDone 을 참고하세요.