|
| | LMac (LoRaRadioChip &chip) |
| virtual error_t | begin () override |
| virtual void | setMaxChanges (uint8_t n) |
| | MaxChanges를 설정합니다.
|
| virtual void | setMaxBackoffs (uint8_t n) |
| | Max Backoff를 설정합니다.
|
|
virtual uint8_t | getNumChanges () |
| | 채널 등 파라미터 변경을 시도한 횟수를 반환합니다.
|
| virtual error_t | transmit (RadioPacket *p) override |
| | LMAC을 사용하여 LoRa 패킷을 전송 시도합니다.
|
| virtual void | reset () |
| | 상태를 초기화합니다.
|
| virtual void | doCAD () override |
| | 사용 금지
|
| virtual error_t | readFrame (RadioPacket *frame) override |
| | 수신 버퍼에서 프레임을 읽습니다.
|
| virtual bool | bufferIsEmpty () override |
| virtual void | flushBuffer () override |
| virtual void | sleep () override |
| virtual void | wakeup () override |
| virtual void | setChannel (uint32_t channel) override |
| | 채널을 설정합니다.
|
| virtual uint32_t | getChannel () override |
| | 현재 설정된 채널을 반환합니다.
|
| virtual State_t | getStatus () override |
| virtual int16_t | getRssi () override |
| | RSSI를 dB 단위로 읽습니다.
|
| virtual void | setStandby () override |
| virtual void | setPublicNetwork (bool enable) override |
| | Syncword를 설정합니다.
|
| bool | supportsLoRaSpreadingFactor (Radio::LoRaSF_t sf) const override |
| | Returns whether this driver supports the given LoRa spreading factor.
|
| virtual void | transmitCW () override |
| | Continuous Wave (CW) 신호를 송출합니다. (LoRa 전용).
|
| virtual void | setRadio (Radio::LoRaSF_t sf, Radio::LoRaBW_t bw, Radio::LoRaCR_t cr, bool crcOn=true, bool iqInverted=false, uint16_t symbTimeout=0, uint16_t preambleLen=8, uint8_t payloadLen=0, bool freqHopOn=false, uint8_t hopPeriod=0) override |
| virtual void | setRadio (uint32_t datarate, uint32_t bandwidth, uint32_t bandwidthAfc, uint32_t fDev, bool crcOn=true, uint16_t symbTimeout=0, uint16_t preambleLen=5, uint8_t payloadLen=0) override |
| virtual void | setTxPower (int8_t dBm) override |
| | 송신 출력을 설정합니다.
|
| virtual int8_t | getTxPower () override |
| | 현재 설정된 송신 출력을 반환합니다.
|
| virtual bool | cca () override |
| | 채널이 혼잡한지 아닌지 검사합니다.
|
| virtual void | setFreqOffset (int32_t offsetHz) override |
| | 중심 주파수 오차를 제거하기 위한 offset을 설정합니다.
|
| virtual int32_t | getFreqOffset () override |
| | 중심 주파수 오차를 제거하기 위한 offset을 가져옵니다.
|
|
uint32_t | getTimeOnAir (uint8_t payloadLen) |
| void | setCcaThreshold (int16_t dBthreshold) |
| virtual int64_t | getDeviceTimestamp () |
| | 장치 내부의 timestamp 값을 읽습니다.
|
|
| enum | State_t { RF_IDLE = 0
, RF_RX_RUNNING = 1
, RF_TX_RUNNING = 2
, RF_CAD = 3
} |
|
static uint32_t | TimeOnAir (Radio::LoRaSF_t, Radio::LoRaBW_t, Radio::LoRaCR_t, uint16_t preambleLen, bool fixLen, uint8_t payloadLen, bool crcOn) |
|
static uint32_t | TimeOnAir (uint32_t datarate, uint32_t bandwidth, uint16_t preambleLen, bool fixLen, uint8_t payloadLen, bool crcOn) |
| void(* | onCADCompleted )(void *ctx, bool) = nullptr |
| | LoRa CAD (Carrier Activity Detection) 검사가 완료되면 호출될 콜백함수 포인터
|
|
void * | ctxOnCADCompleted |
| | onCADCompleted 가 호출될 때 함께 전달될 context
|
|
int8_t | antennaGain = 0 |
| | Antenna gain을 고려한 송신 출력(EIRP)을 사용하기 위한 antenna gain (단위: dBi).
|
|
void(* | onRxTimeout )(void *, GPIOInterruptInfo_t *) = nullptr |
|
void * | ctxOnRxTimeout |
| void(* | onRxStarted )(void *, GPIOInterruptInfo_t *) |
| | 수신이 시작될 때 호출될 콜백함수 포인터
|
|
void * | ctxOnRxStarted |
| | onRxStarted 가 호출될 때 함께 전달될 context
|
| void(* | onRxDone )(void *, GPIOInterruptInfo_t *) |
| | 수신이 완료될 때 호출될 콜백함수 포인터
|
|
void * | ctxOnRxDone |
| | onRxDone 이 호출될 때 함께 전달될 context
|
| void(* | onTxDone )(void *, bool, GPIOInterruptInfo_t *) |
| | transmit() 후, 송신이 완료될 때 호출될 콜백함수 포인터
|
|
void * | ctxOnTxDone |
| | onTxDone 이 호출될 때 함께 전달될 context
|
| void(* | onChannelBusy )(void *, GPIOInterruptInfo_t *) |
| | cca() 시 채널이 혼잡할 때 호출될 콜백함수 포인터
|
|
void * | ctxOnChannelBusy |
| | onChannelBusy 가 호출될 때 함께 전달될 context
|
|
int16_t | dBccaThreshold = -65 |
| | cca() 시 채널이 혼잡하다고 판단하기 위한 에너지 레벨을 설정합니다. (단위: dB, 기본값: -65)
|
|
virtual void | ccaTask () |
|
static void | CCATask (void *) |
|
struct { | |
|
uint32_t channel | |
|
Radio::Modulation_t modulation | |
|
int8_t txPower | |
|
uint32_t txTimeout | |
|
union { | |
|
struct { | |
|
uint32_t drHz | |
|
uint32_t bwHz | |
|
uint32_t afcBwHz | |
|
uint32_t fDevHz | |
|
uint16_t symbTimeout | |
|
bool addCrc | |
|
uint16_t preambleLength | |
|
uint8_t fixedPayloadLength | |
| } FSK |
|
struct { | |
|
Radio::LoRaSF_t sf | |
|
Radio::LoRaCR_t cr | |
|
Radio::LoRaBW_t bw | |
|
uint16_t preambleLength | |
|
uint8_t fixedPayloadLength | |
|
bool iqInverted | |
|
bool addCrc | |
|
uint16_t symbTimeout | |
| } LoRa |
| } | |
| } | defaultSetting |
|
volatile bool | inCca = false |
|
bool | inChannelBusyHandler = false |
|
int32_t | freqOffset |