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

2.4GHz FLRC Radio Frame More...

#include <FLRCFrame.hpp>

Inheritance diagram for FLRCFrame:
RadioPacket Printable

Public Types

enum  BitRate_t {
  BR_UNSPECIFIED = 0 , BR_1300_BW_1200 = 1 , BR_1040_BW_1200 = 2 , BR_650_BW_600 = 3 ,
  BR_520_BW_600 = 4 , BR_325_BW_300 = 5 , BR_260_BW_300 = 6
}
 
enum  CR_t { CR_1_2 = 0 , CR_3_4 = 1 , CR_1_0 = 2 }
 
enum  ModShaping_t { BT_OFF = 0 , BT_1_0 = 1 , BT_0_5 = 2 }
 
enum  SyncWordRxMatch_t {
  SYNCWORD_NO = 0 , SYNCWORD_1 = 1 , SYNCWORD_2 = 2 , SYNCWORD_1_2 = 3 ,
  SYNCWORD_3 = 4 , SYNCWORD_1_3 = 5 , SYNCWORD_2_3 = 6 , SYNCWORD_1_2_3 = 7
}
 
- 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

 FLRCFrame (uint16_t len=0)
 FLRCFrame 을 생성합니다. More...
 
- 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 FLRCFrame::BitRate_t br = BR_UNSPECIFIED
 
enum FLRCFrame::CR_t cr = CR_1_2
 
enum FLRCFrame::ModShaping_t ms = BT_OFF
 
uint8_t preambleLengthBits = 32
 Preamble 길이 (단위: bits). 4, 8, 12, 16, 20, 24, 28, 또는 32 중 하나여야 합니다.
 
bool useSyncword = true
 송신시 syncword 사용 여부
 
enum FLRCFrame::SyncWordRxMatch_t syncwordRxMatch = SYNCWORD_1_2_3
 
bool useHeader = true
 헤더 사용 여부
 
uint8_t crcBytes = 3
 Number of CRC bytes (0 ~ 3 bytes)
 
- 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 FLRC Radio Frame

Member Enumeration Documentation

◆ BitRate_t

Enumerator
BR_UNSPECIFIED 

Bit Rate: unspecified

BR_1300_BW_1200 

Raw Bit Rate: 1.3Mbps, Bandwidth: 1.2 MHz

BR_1040_BW_1200 

Raw Bit Rate: 1.04Mbps, Bandwidth: 1.2 MHz

BR_650_BW_600 

Raw Bit Rate: 0.65Mbps, Bandwidth: 0.6 MHz

BR_520_BW_600 

Raw Bit Rate: 0.52Mbps, Bandwidth: 0.6 MHz

BR_325_BW_300 

Raw Bit Rate: 0.325Mbps, Bandwidth: 0.3 MHz

BR_260_BW_300 

Raw Bit Rate: 0.26Mbps, Bandwidth: 0.3 MHz

73  { BR_UNSPECIFIED = 0,
74  BR_1300_BW_1200 = 1,
75  BR_1040_BW_1200 = 2,
76  BR_650_BW_600 = 3,
77  BR_520_BW_600 = 4,
78  BR_325_BW_300 = 5,
79  BR_260_BW_300 = 6,
80  } br = BR_UNSPECIFIED;
@ BR_325_BW_300
Definition: FLRCFrame.hpp:78
@ BR_UNSPECIFIED
Definition: FLRCFrame.hpp:73
@ BR_1300_BW_1200
Definition: FLRCFrame.hpp:74
@ BR_520_BW_600
Definition: FLRCFrame.hpp:77
@ BR_650_BW_600
Definition: FLRCFrame.hpp:76
@ BR_1040_BW_1200
Definition: FLRCFrame.hpp:75
@ BR_260_BW_300
Definition: FLRCFrame.hpp:79

◆ CR_t

Enumerator
CR_1_2 

Coding rate: 1/2

CR_3_4 

Coding rate: 3/4

CR_1_0 

Coding rate: 1

82  { CR_1_2 = 0,
83  CR_3_4 = 1,
84  CR_1_0 = 2,
85  } cr = CR_1_2;
@ CR_1_0
Definition: FLRCFrame.hpp:84
@ CR_1_2
Definition: FLRCFrame.hpp:82
@ CR_3_4
Definition: FLRCFrame.hpp:83

◆ ModShaping_t

Enumerator
BT_OFF 

BT: No filtering

BT_1_0 

BT: 1

BT_0_5 

BT: 0.5

87  { BT_OFF = 0,
88  BT_1_0 = 1,
89  BT_0_5 = 2,
90  } ms = BT_OFF;
@ BT_0_5
Definition: FLRCFrame.hpp:89
@ BT_OFF
Definition: FLRCFrame.hpp:87
@ BT_1_0
Definition: FLRCFrame.hpp:88

◆ SyncWordRxMatch_t

Enumerator
SYNCWORD_NO 

Do not search for syncword.

SYNCWORD_1 

Search the syncword 1.

SYNCWORD_2 

Search the syncword 2.

SYNCWORD_1_2 

Search the syncword 1 or 2.

SYNCWORD_3 

Search the syncword 3.

SYNCWORD_1_3 

Search the syncword 1 or 3.

SYNCWORD_2_3 

Search the syncword 2 or 3.

SYNCWORD_1_2_3 

Search the syncword 1, 2, or 3.

107  { SYNCWORD_NO = 0,
108  SYNCWORD_1 = 1,
109  SYNCWORD_2 = 2,
110  SYNCWORD_1_2 = 3,
111  SYNCWORD_3 = 4,
112  SYNCWORD_1_3 = 5,
113  SYNCWORD_2_3 = 6,
114  SYNCWORD_1_2_3 = 7,
115  } syncwordRxMatch = SYNCWORD_1_2_3;
@ SYNCWORD_1_2
Definition: FLRCFrame.hpp:110
@ SYNCWORD_1
Definition: FLRCFrame.hpp:108
@ SYNCWORD_2_3
Definition: FLRCFrame.hpp:113
@ SYNCWORD_1_2_3
Definition: FLRCFrame.hpp:114
@ SYNCWORD_NO
Definition: FLRCFrame.hpp:107
@ SYNCWORD_1_3
Definition: FLRCFrame.hpp:112
@ SYNCWORD_3
Definition: FLRCFrame.hpp:111
@ SYNCWORD_2
Definition: FLRCFrame.hpp:109

Constructor & Destructor Documentation

◆ FLRCFrame()

FLRCFrame::FLRCFrame ( uint16_t  len = 0)
inline

FLRCFrame 을 생성합니다.

Parameters
lenPayload를 저장할 버퍼의 길이

len 은 6~127 사이여야 합니다. 그렇지 않으면 생성했다 하더라도 해당 프레임은 전송되지 않습니다.

66  : RadioPacket(len) {
68  }
무선 패킷
Definition: RadioPacket.hpp:59
Radio::Modulation_t modulation
송신시 사용할, 또는 수신시 사용된 변복조 방식
Definition: RadioPacket.hpp:148
@ MOD_FLRC
Definition: Radio.hpp:71

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