Nol.A SDK Library  24.11.0
For IoT System Software Development
Public Types | Public Member Functions | Public Attributes | List of all members
LoRa2GHzFrame Class Reference

2.4GHz LoRa Radio Frame More...

#include <LoRa2GHzFrame.hpp>

Inheritance diagram for LoRa2GHzFrame:
RadioPacket Printable

Public Types

enum  SF_t {
  SF_UNSPECIFIED = 0 , SF5 = 5 , SF6 = 6 , SF7 = 7 ,
  SF8 = 8 , SF9 = 9 , SF10 = 10 , SF11 = 11 ,
  SF12 = 12
}
 
enum  CR_t {
  CR_4_5 = 1 , CR_4_6 = 2 , CR_4_7 = 3 , CR_4_8 = 4 ,
  CR_LI_4_5 = 5 , CR_LI_4_6 = 6 , CR_LI_4_7 = 7
}
 
enum  BW_t {
  BW_UNSPECIFIED = 0 , BW_1600kHz = 1 , BW_800kHz = 2 , BW_400kHz = 3 ,
  BW_200kHz = 4
}
 
- Public Types inherited from RadioPacket
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

 LoRa2GHzFrame (uint16_t len=0)
 
uint8_t setPreambleLength (uint8_t mant, uint8_t exp)
 Preamble length in symbols = mant * 2 ^ exp.
 
- Public Member Functions inherited from RadioPacket
 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

enum LoRa2GHzFrame::SF_t sf = SF_UNSPECIFIED
 
enum LoRa2GHzFrame::CR_t cr = CR_4_5
 
enum LoRa2GHzFrame::BW_t bw = BW_UNSPECIFIED
 
uint8_t preambleLength = 0x08
 
bool useHeader = true
 헤더 사용 여부
 
bool useCrc = true
 CRC 사용 여부
 
bool invertIQ = false
 IQ 신호의 inverting 여부
 
int8_t snr
 수신시의 SNR
 
- Public Attributes inherited from RadioPacket
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
 

Detailed Description

2.4GHz LoRa Radio Frame

Member Enumeration Documentation

◆ BW_t

Enumerator
BW_UNSPECIFIED 

Bandwidth unspecified

BW_1600kHz 

Bandwidth 1625.0 kHz

BW_800kHz 

Bandwidth 812.5 kHz

BW_400kHz 

Bandwidth 406.25 kHz

BW_200kHz 

Bandwidth 203.125 kHz

90  { BW_UNSPECIFIED = 0,
91  BW_1600kHz = 1,
92  BW_800kHz = 2,
93  BW_400kHz = 3,
94  BW_200kHz = 4,
95  } bw = BW_UNSPECIFIED;
@ BW_800kHz
Definition: LoRa2GHzFrame.hpp:92
@ BW_200kHz
Definition: LoRa2GHzFrame.hpp:94
@ BW_1600kHz
Definition: LoRa2GHzFrame.hpp:91
@ BW_UNSPECIFIED
Definition: LoRa2GHzFrame.hpp:90
@ BW_400kHz
Definition: LoRa2GHzFrame.hpp:93

◆ CR_t

Enumerator
CR_4_5 

Coding rate: 4/5

CR_4_6 

Coding rate: 4/6

CR_4_7 

Coding rate: 4/7

CR_4_8 

Coding rate: 4/8

CR_LI_4_5 

Coding rate: 4/5 with long interleaving

CR_LI_4_6 

Coding rate: 4/6 with long interleaving

CR_LI_4_7 

Coding rate: 4/7 with long interleaving

81  { CR_4_5 = 1,
82  CR_4_6 = 2,
83  CR_4_7 = 3,
84  CR_4_8 = 4,
85  CR_LI_4_5 = 5,
86  CR_LI_4_6 = 6,
87  CR_LI_4_7 = 7,
88  } cr = CR_4_5;
@ CR_4_5
Definition: LoRa2GHzFrame.hpp:81
@ CR_4_6
Definition: LoRa2GHzFrame.hpp:82
@ CR_LI_4_6
Definition: LoRa2GHzFrame.hpp:86
@ CR_4_7
Definition: LoRa2GHzFrame.hpp:83
@ CR_LI_4_7
Definition: LoRa2GHzFrame.hpp:87
@ CR_4_8
Definition: LoRa2GHzFrame.hpp:84
@ CR_LI_4_5
Definition: LoRa2GHzFrame.hpp:85

◆ SF_t

Enumerator
SF_UNSPECIFIED 

Spreading factor: unspecified

SF5 

Spreading factor: 5

SF6 

Spreading factor: 6

SF7 

Spreading factor: 7

SF8 

Spreading factor: 8

SF9 

Spreading factor: 9

SF10 

Spreading factor: 10

SF11 

Spreading factor: 11

SF12 

Spreading factor: 12

70  { SF_UNSPECIFIED = 0,
71  SF5 = 5,
72  SF6 = 6,
73  SF7 = 7,
74  SF8 = 8,
75  SF9 = 9,
76  SF10 = 10,
77  SF11 = 11,
78  SF12 = 12,
79  } sf = SF_UNSPECIFIED;
@ SF10
Definition: LoRa2GHzFrame.hpp:76
@ SF_UNSPECIFIED
Definition: LoRa2GHzFrame.hpp:70
@ SF11
Definition: LoRa2GHzFrame.hpp:77
@ SF8
Definition: LoRa2GHzFrame.hpp:74
@ SF6
Definition: LoRa2GHzFrame.hpp:72
@ SF12
Definition: LoRa2GHzFrame.hpp:78
@ SF5
Definition: LoRa2GHzFrame.hpp:71
@ SF9
Definition: LoRa2GHzFrame.hpp:75
@ SF7
Definition: LoRa2GHzFrame.hpp:73

Constructor & Destructor Documentation

◆ LoRa2GHzFrame()

LoRa2GHzFrame::LoRa2GHzFrame ( uint16_t  len = 0)
inline
Parameters
lenPayload를 저장할 버퍼의 길이
63  : RadioPacket(len) {
65  }
무선 패킷
Definition: RadioPacket.hpp:59
Radio::Modulation_t modulation
송신시 사용할, 또는 수신시 사용된 변복조 방식
Definition: RadioPacket.hpp:148
@ MOD_LORA2G
Definition: Radio.hpp:70

The documentation for this class was generated from the following file: