Implement a secure ICS protocol targeting LoRa Node151 microcontroller for controlling irrigation.
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 
 
 

566 Zeilen
20 KiB

  1. /*
  2. / _____) _ | |
  3. ( (____ _____ ____ _| |_ _____ ____| |__
  4. \____ \| ___ | (_ _) ___ |/ ___) _ \
  5. _____) ) ____| | | || |_| ____( (___| | | |
  6. (______/|_____)_|_|_| \__)_____)\____)_| |_|
  7. (C) 2014 Semtech
  8. Description: SX1276 LoRa modem registers and bits definitions
  9. License: Revised BSD License, see LICENSE.TXT file include in the project
  10. Maintainer: Miguel Luis and Gregory Cristian
  11. */
  12. #ifndef __SX1276_REGS_LORA_H__
  13. #define __SX1276_REGS_LORA_H__
  14. /*!
  15. * ============================================================================
  16. * SX1276 Internal registers Address
  17. * ============================================================================
  18. */
  19. #define REG_LR_FIFO 0x00
  20. // Common settings
  21. #define REG_LR_OPMODE 0x01
  22. #define REG_LR_FRFMSB 0x06
  23. #define REG_LR_FRFMID 0x07
  24. #define REG_LR_FRFLSB 0x08
  25. // Tx settings
  26. #define REG_LR_PACONFIG 0x09
  27. #define REG_LR_PARAMP 0x0A
  28. #define REG_LR_OCP 0x0B
  29. // Rx settings
  30. #define REG_LR_LNA 0x0C
  31. // LoRa registers
  32. #define REG_LR_FIFOADDRPTR 0x0D
  33. #define REG_LR_FIFOTXBASEADDR 0x0E
  34. #define REG_LR_FIFORXBASEADDR 0x0F
  35. #define REG_LR_FIFORXCURRENTADDR 0x10
  36. #define REG_LR_IRQFLAGSMASK 0x11
  37. #define REG_LR_IRQFLAGS 0x12
  38. #define REG_LR_RXNBBYTES 0x13
  39. #define REG_LR_RXHEADERCNTVALUEMSB 0x14
  40. #define REG_LR_RXHEADERCNTVALUELSB 0x15
  41. #define REG_LR_RXPACKETCNTVALUEMSB 0x16
  42. #define REG_LR_RXPACKETCNTVALUELSB 0x17
  43. #define REG_LR_MODEMSTAT 0x18
  44. #define REG_LR_PKTSNRVALUE 0x19
  45. #define REG_LR_PKTRSSIVALUE 0x1A
  46. #define REG_LR_RSSIVALUE 0x1B
  47. #define REG_LR_HOPCHANNEL 0x1C
  48. #define REG_LR_MODEMCONFIG1 0x1D
  49. #define REG_LR_MODEMCONFIG2 0x1E
  50. #define REG_LR_SYMBTIMEOUTLSB 0x1F
  51. #define REG_LR_PREAMBLEMSB 0x20
  52. #define REG_LR_PREAMBLELSB 0x21
  53. #define REG_LR_PAYLOADLENGTH 0x22
  54. #define REG_LR_PAYLOADMAXLENGTH 0x23
  55. #define REG_LR_HOPPERIOD 0x24
  56. #define REG_LR_FIFORXBYTEADDR 0x25
  57. #define REG_LR_MODEMCONFIG3 0x26
  58. #define REG_LR_FEIMSB 0x28
  59. #define REG_LR_FEIMID 0x29
  60. #define REG_LR_FEILSB 0x2A
  61. #define REG_LR_RSSIWIDEBAND 0x2C
  62. #define REG_LR_TEST2F 0x2F
  63. #define REG_LR_TEST30 0x30
  64. #define REG_LR_DETECTOPTIMIZE 0x31
  65. #define REG_LR_INVERTIQ 0x33
  66. #define REG_LR_TEST36 0x36
  67. #define REG_LR_DETECTIONTHRESHOLD 0x37
  68. #define REG_LR_SYNCWORD 0x39
  69. #define REG_LR_TEST3A 0x3A
  70. #define REG_LR_INVERTIQ2 0x3B
  71. // end of documented register in datasheet
  72. // I/O settings
  73. #define REG_LR_DIOMAPPING1 0x40
  74. #define REG_LR_DIOMAPPING2 0x41
  75. // Version
  76. #define REG_LR_VERSION 0x42
  77. // Additional settings
  78. #define REG_LR_PLLHOP 0x44
  79. #define REG_LR_TCXO 0x4B
  80. #define REG_LR_PADAC 0x4D
  81. #define REG_LR_FORMERTEMP 0x5B
  82. #define REG_LR_BITRATEFRAC 0x5D
  83. #define REG_LR_AGCREF 0x61
  84. #define REG_LR_AGCTHRESH1 0x62
  85. #define REG_LR_AGCTHRESH2 0x63
  86. #define REG_LR_AGCTHRESH3 0x64
  87. #define REG_LR_PLL 0x70
  88. /*!
  89. * ============================================================================
  90. * SX1276 LoRa bits control definition
  91. * ============================================================================
  92. */
  93. /*!
  94. * RegFifo
  95. */
  96. /*!
  97. * RegOpMode
  98. */
  99. #define RFLR_OPMODE_LONGRANGEMODE_MASK 0x7F
  100. #define RFLR_OPMODE_LONGRANGEMODE_OFF 0x00 // Default
  101. #define RFLR_OPMODE_LONGRANGEMODE_ON 0x80
  102. #define RFLR_OPMODE_ACCESSSHAREDREG_MASK 0xBF
  103. #define RFLR_OPMODE_ACCESSSHAREDREG_ENABLE 0x40
  104. #define RFLR_OPMODE_ACCESSSHAREDREG_DISABLE 0x00 // Default
  105. #define RFLR_OPMODE_FREQMODE_ACCESS_MASK 0xF7
  106. #define RFLR_OPMODE_FREQMODE_ACCESS_LF 0x08 // Default
  107. #define RFLR_OPMODE_FREQMODE_ACCESS_HF 0x00
  108. #define RFLR_OPMODE_MASK 0xF8
  109. #define RFLR_OPMODE_SLEEP 0x00
  110. #define RFLR_OPMODE_STANDBY 0x01 // Default
  111. #define RFLR_OPMODE_SYNTHESIZER_TX 0x02
  112. #define RFLR_OPMODE_TRANSMITTER 0x03
  113. #define RFLR_OPMODE_SYNTHESIZER_RX 0x04
  114. #define RFLR_OPMODE_RECEIVER 0x05
  115. // LoRa specific modes
  116. #define RFLR_OPMODE_RECEIVER_SINGLE 0x06
  117. #define RFLR_OPMODE_CAD 0x07
  118. /*!
  119. * RegFrf (MHz)
  120. */
  121. #define RFLR_FRFMSB_434_MHZ 0x6C // Default
  122. #define RFLR_FRFMID_434_MHZ 0x80 // Default
  123. #define RFLR_FRFLSB_434_MHZ 0x00 // Default
  124. /*!
  125. * RegPaConfig
  126. */
  127. #define RFLR_PACONFIG_PASELECT_MASK 0x7F
  128. #define RFLR_PACONFIG_PASELECT_PABOOST 0x80
  129. #define RFLR_PACONFIG_PASELECT_RFO 0x00 // Default
  130. #define RFLR_PACONFIG_MAX_POWER_MASK 0x8F
  131. #define RFLR_PACONFIG_OUTPUTPOWER_MASK 0xF0
  132. /*!
  133. * RegPaRamp
  134. */
  135. #define RFLR_PARAMP_TXBANDFORCE_MASK 0xEF
  136. #define RFLR_PARAMP_TXBANDFORCE_BAND_SEL 0x10
  137. #define RFLR_PARAMP_TXBANDFORCE_AUTO 0x00 // Default
  138. #define RFLR_PARAMP_MASK 0xF0
  139. #define RFLR_PARAMP_3400_US 0x00
  140. #define RFLR_PARAMP_2000_US 0x01
  141. #define RFLR_PARAMP_1000_US 0x02
  142. #define RFLR_PARAMP_0500_US 0x03
  143. #define RFLR_PARAMP_0250_US 0x04
  144. #define RFLR_PARAMP_0125_US 0x05
  145. #define RFLR_PARAMP_0100_US 0x06
  146. #define RFLR_PARAMP_0062_US 0x07
  147. #define RFLR_PARAMP_0050_US 0x08
  148. #define RFLR_PARAMP_0040_US 0x09 // Default
  149. #define RFLR_PARAMP_0031_US 0x0A
  150. #define RFLR_PARAMP_0025_US 0x0B
  151. #define RFLR_PARAMP_0020_US 0x0C
  152. #define RFLR_PARAMP_0015_US 0x0D
  153. #define RFLR_PARAMP_0012_US 0x0E
  154. #define RFLR_PARAMP_0010_US 0x0F
  155. /*!
  156. * RegOcp
  157. */
  158. #define RFLR_OCP_MASK 0xDF
  159. #define RFLR_OCP_ON 0x20 // Default
  160. #define RFLR_OCP_OFF 0x00
  161. #define RFLR_OCP_TRIM_MASK 0xE0
  162. #define RFLR_OCP_TRIM_045_MA 0x00
  163. #define RFLR_OCP_TRIM_050_MA 0x01
  164. #define RFLR_OCP_TRIM_055_MA 0x02
  165. #define RFLR_OCP_TRIM_060_MA 0x03
  166. #define RFLR_OCP_TRIM_065_MA 0x04
  167. #define RFLR_OCP_TRIM_070_MA 0x05
  168. #define RFLR_OCP_TRIM_075_MA 0x06
  169. #define RFLR_OCP_TRIM_080_MA 0x07
  170. #define RFLR_OCP_TRIM_085_MA 0x08
  171. #define RFLR_OCP_TRIM_090_MA 0x09
  172. #define RFLR_OCP_TRIM_095_MA 0x0A
  173. #define RFLR_OCP_TRIM_100_MA 0x0B // Default
  174. #define RFLR_OCP_TRIM_105_MA 0x0C
  175. #define RFLR_OCP_TRIM_110_MA 0x0D
  176. #define RFLR_OCP_TRIM_115_MA 0x0E
  177. #define RFLR_OCP_TRIM_120_MA 0x0F
  178. #define RFLR_OCP_TRIM_130_MA 0x10
  179. #define RFLR_OCP_TRIM_140_MA 0x11
  180. #define RFLR_OCP_TRIM_150_MA 0x12
  181. #define RFLR_OCP_TRIM_160_MA 0x13
  182. #define RFLR_OCP_TRIM_170_MA 0x14
  183. #define RFLR_OCP_TRIM_180_MA 0x15
  184. #define RFLR_OCP_TRIM_190_MA 0x16
  185. #define RFLR_OCP_TRIM_200_MA 0x17
  186. #define RFLR_OCP_TRIM_210_MA 0x18
  187. #define RFLR_OCP_TRIM_220_MA 0x19
  188. #define RFLR_OCP_TRIM_230_MA 0x1A
  189. #define RFLR_OCP_TRIM_240_MA 0x1B
  190. /*!
  191. * RegLna
  192. */
  193. #define RFLR_LNA_GAIN_MASK 0x1F
  194. #define RFLR_LNA_GAIN_G1 0x20 // Default
  195. #define RFLR_LNA_GAIN_G2 0x40
  196. #define RFLR_LNA_GAIN_G3 0x60
  197. #define RFLR_LNA_GAIN_G4 0x80
  198. #define RFLR_LNA_GAIN_G5 0xA0
  199. #define RFLR_LNA_GAIN_G6 0xC0
  200. #define RFLR_LNA_BOOST_LF_MASK 0xE7
  201. #define RFLR_LNA_BOOST_LF_DEFAULT 0x00 // Default
  202. #define RFLR_LNA_BOOST_HF_MASK 0xFC
  203. #define RFLR_LNA_BOOST_HF_OFF 0x00 // Default
  204. #define RFLR_LNA_BOOST_HF_ON 0x03
  205. /*!
  206. * RegFifoAddrPtr
  207. */
  208. #define RFLR_FIFOADDRPTR 0x00 // Default
  209. /*!
  210. * RegFifoTxBaseAddr
  211. */
  212. #define RFLR_FIFOTXBASEADDR 0x80 // Default
  213. /*!
  214. * RegFifoTxBaseAddr
  215. */
  216. #define RFLR_FIFORXBASEADDR 0x00 // Default
  217. /*!
  218. * RegFifoRxCurrentAddr (Read Only)
  219. */
  220. /*!
  221. * RegIrqFlagsMask
  222. */
  223. #define RFLR_IRQFLAGS_RXTIMEOUT_MASK 0x80
  224. #define RFLR_IRQFLAGS_RXDONE_MASK 0x40
  225. #define RFLR_IRQFLAGS_PAYLOADCRCERROR_MASK 0x20
  226. #define RFLR_IRQFLAGS_VALIDHEADER_MASK 0x10
  227. #define RFLR_IRQFLAGS_TXDONE_MASK 0x08
  228. #define RFLR_IRQFLAGS_CADDONE_MASK 0x04
  229. #define RFLR_IRQFLAGS_FHSSCHANGEDCHANNEL_MASK 0x02
  230. #define RFLR_IRQFLAGS_CADDETECTED_MASK 0x01
  231. /*!
  232. * RegIrqFlags
  233. */
  234. #define RFLR_IRQFLAGS_RXTIMEOUT 0x80
  235. #define RFLR_IRQFLAGS_RXDONE 0x40
  236. #define RFLR_IRQFLAGS_PAYLOADCRCERROR 0x20
  237. #define RFLR_IRQFLAGS_VALIDHEADER 0x10
  238. #define RFLR_IRQFLAGS_TXDONE 0x08
  239. #define RFLR_IRQFLAGS_CADDONE 0x04
  240. #define RFLR_IRQFLAGS_FHSSCHANGEDCHANNEL 0x02
  241. #define RFLR_IRQFLAGS_CADDETECTED 0x01
  242. /*!
  243. * RegFifoRxNbBytes (Read Only)
  244. */
  245. /*!
  246. * RegRxHeaderCntValueMsb (Read Only)
  247. */
  248. /*!
  249. * RegRxHeaderCntValueLsb (Read Only)
  250. */
  251. /*!
  252. * RegRxPacketCntValueMsb (Read Only)
  253. */
  254. /*!
  255. * RegRxPacketCntValueLsb (Read Only)
  256. */
  257. /*!
  258. * RegModemStat (Read Only)
  259. */
  260. #define RFLR_MODEMSTAT_RX_CR_MASK 0x1F
  261. #define RFLR_MODEMSTAT_MODEM_STATUS_MASK 0xE0
  262. /*!
  263. * RegPktSnrValue (Read Only)
  264. */
  265. /*!
  266. * RegPktRssiValue (Read Only)
  267. */
  268. /*!
  269. * RegRssiValue (Read Only)
  270. */
  271. /*!
  272. * RegHopChannel (Read Only)
  273. */
  274. #define RFLR_HOPCHANNEL_PLL_LOCK_TIMEOUT_MASK 0x7F
  275. #define RFLR_HOPCHANNEL_PLL_LOCK_FAIL 0x80
  276. #define RFLR_HOPCHANNEL_PLL_LOCK_SUCCEED 0x00 // Default
  277. #define RFLR_HOPCHANNEL_CRCONPAYLOAD_MASK 0xBF
  278. #define RFLR_HOPCHANNEL_CRCONPAYLOAD_ON 0x40
  279. #define RFLR_HOPCHANNEL_CRCONPAYLOAD_OFF 0x00 // Default
  280. #define RFLR_HOPCHANNEL_CHANNEL_MASK 0x3F
  281. /*!
  282. * RegModemConfig1
  283. */
  284. #define RFLR_MODEMCONFIG1_BW_MASK 0x0F
  285. #define RFLR_MODEMCONFIG1_BW_7_81_KHZ 0x00
  286. #define RFLR_MODEMCONFIG1_BW_10_41_KHZ 0x10
  287. #define RFLR_MODEMCONFIG1_BW_15_62_KHZ 0x20
  288. #define RFLR_MODEMCONFIG1_BW_20_83_KHZ 0x30
  289. #define RFLR_MODEMCONFIG1_BW_31_25_KHZ 0x40
  290. #define RFLR_MODEMCONFIG1_BW_41_66_KHZ 0x50
  291. #define RFLR_MODEMCONFIG1_BW_62_50_KHZ 0x60
  292. #define RFLR_MODEMCONFIG1_BW_125_KHZ 0x70 // Default
  293. #define RFLR_MODEMCONFIG1_BW_250_KHZ 0x80
  294. #define RFLR_MODEMCONFIG1_BW_500_KHZ 0x90
  295. #define RFLR_MODEMCONFIG1_CODINGRATE_MASK 0xF1
  296. #define RFLR_MODEMCONFIG1_CODINGRATE_4_5 0x02
  297. #define RFLR_MODEMCONFIG1_CODINGRATE_4_6 0x04 // Default
  298. #define RFLR_MODEMCONFIG1_CODINGRATE_4_7 0x06
  299. #define RFLR_MODEMCONFIG1_CODINGRATE_4_8 0x08
  300. #define RFLR_MODEMCONFIG1_IMPLICITHEADER_MASK 0xFE
  301. #define RFLR_MODEMCONFIG1_IMPLICITHEADER_ON 0x01
  302. #define RFLR_MODEMCONFIG1_IMPLICITHEADER_OFF 0x00 // Default
  303. /*!
  304. * RegModemConfig2
  305. */
  306. #define RFLR_MODEMCONFIG2_SF_MASK 0x0F
  307. #define RFLR_MODEMCONFIG2_SF_6 0x60
  308. #define RFLR_MODEMCONFIG2_SF_7 0x70 // Default
  309. #define RFLR_MODEMCONFIG2_SF_8 0x80
  310. #define RFLR_MODEMCONFIG2_SF_9 0x90
  311. #define RFLR_MODEMCONFIG2_SF_10 0xA0
  312. #define RFLR_MODEMCONFIG2_SF_11 0xB0
  313. #define RFLR_MODEMCONFIG2_SF_12 0xC0
  314. #define RFLR_MODEMCONFIG2_TXCONTINUOUSMODE_MASK 0xF7
  315. #define RFLR_MODEMCONFIG2_TXCONTINUOUSMODE_ON 0x08
  316. #define RFLR_MODEMCONFIG2_TXCONTINUOUSMODE_OFF 0x00
  317. #define RFLR_MODEMCONFIG2_RXPAYLOADCRC_MASK 0xFB
  318. #define RFLR_MODEMCONFIG2_RXPAYLOADCRC_ON 0x04
  319. #define RFLR_MODEMCONFIG2_RXPAYLOADCRC_OFF 0x00 // Default
  320. #define RFLR_MODEMCONFIG2_SYMBTIMEOUTMSB_MASK 0xFC
  321. #define RFLR_MODEMCONFIG2_SYMBTIMEOUTMSB 0x00 // Default
  322. /*!
  323. * RegSymbTimeoutLsb
  324. */
  325. #define RFLR_SYMBTIMEOUTLSB_SYMBTIMEOUT 0x64 // Default
  326. /*!
  327. * RegPreambleLengthMsb
  328. */
  329. #define RFLR_PREAMBLELENGTHMSB 0x00 // Default
  330. /*!
  331. * RegPreambleLengthLsb
  332. */
  333. #define RFLR_PREAMBLELENGTHLSB 0x08 // Default
  334. /*!
  335. * RegPayloadLength
  336. */
  337. #define RFLR_PAYLOADLENGTH 0x0E // Default
  338. /*!
  339. * RegPayloadMaxLength
  340. */
  341. #define RFLR_PAYLOADMAXLENGTH 0xFF // Default
  342. /*!
  343. * RegHopPeriod
  344. */
  345. #define RFLR_HOPPERIOD_FREQFOPPINGPERIOD 0x00 // Default
  346. /*!
  347. * RegFifoRxByteAddr (Read Only)
  348. */
  349. /*!
  350. * RegModemConfig3
  351. */
  352. #define RFLR_MODEMCONFIG3_LOWDATARATEOPTIMIZE_MASK 0xF7
  353. #define RFLR_MODEMCONFIG3_LOWDATARATEOPTIMIZE_ON 0x08
  354. #define RFLR_MODEMCONFIG3_LOWDATARATEOPTIMIZE_OFF 0x00 // Default
  355. #define RFLR_MODEMCONFIG3_AGCAUTO_MASK 0xFB
  356. #define RFLR_MODEMCONFIG3_AGCAUTO_ON 0x04 // Default
  357. #define RFLR_MODEMCONFIG3_AGCAUTO_OFF 0x00
  358. /*!
  359. * RegFeiMsb (Read Only)
  360. */
  361. /*!
  362. * RegFeiMid (Read Only)
  363. */
  364. /*!
  365. * RegFeiLsb (Read Only)
  366. */
  367. /*!
  368. * RegRssiWideband (Read Only)
  369. */
  370. /*!
  371. * RegDetectOptimize
  372. */
  373. #define RFLR_DETECTIONOPTIMIZE_MASK 0xF8
  374. #define RFLR_DETECTIONOPTIMIZE_SF7_TO_SF12 0x03 // Default
  375. #define RFLR_DETECTIONOPTIMIZE_SF6 0x05
  376. /*!
  377. * RegInvertIQ
  378. */
  379. #define RFLR_INVERTIQ_RX_MASK 0xBF
  380. #define RFLR_INVERTIQ_RX_OFF 0x00
  381. #define RFLR_INVERTIQ_RX_ON 0x40
  382. #define RFLR_INVERTIQ_TX_MASK 0xFE
  383. #define RFLR_INVERTIQ_TX_OFF 0x01
  384. #define RFLR_INVERTIQ_TX_ON 0x00
  385. /*!
  386. * RegDetectionThreshold
  387. */
  388. #define RFLR_DETECTIONTHRESH_SF7_TO_SF12 0x0A // Default
  389. #define RFLR_DETECTIONTHRESH_SF6 0x0C
  390. /*!
  391. * RegInvertIQ2
  392. */
  393. #define RFLR_INVERTIQ2_ON 0x19
  394. #define RFLR_INVERTIQ2_OFF 0x1D
  395. /*!
  396. * RegDioMapping1
  397. */
  398. #define RFLR_DIOMAPPING1_DIO0_MASK 0x3F
  399. #define RFLR_DIOMAPPING1_DIO0_00 0x00 // Default
  400. #define RFLR_DIOMAPPING1_DIO0_01 0x40
  401. #define RFLR_DIOMAPPING1_DIO0_10 0x80
  402. #define RFLR_DIOMAPPING1_DIO0_11 0xC0
  403. #define RFLR_DIOMAPPING1_DIO1_MASK 0xCF
  404. #define RFLR_DIOMAPPING1_DIO1_00 0x00 // Default
  405. #define RFLR_DIOMAPPING1_DIO1_01 0x10
  406. #define RFLR_DIOMAPPING1_DIO1_10 0x20
  407. #define RFLR_DIOMAPPING1_DIO1_11 0x30
  408. #define RFLR_DIOMAPPING1_DIO2_MASK 0xF3
  409. #define RFLR_DIOMAPPING1_DIO2_00 0x00 // Default
  410. #define RFLR_DIOMAPPING1_DIO2_01 0x04
  411. #define RFLR_DIOMAPPING1_DIO2_10 0x08
  412. #define RFLR_DIOMAPPING1_DIO2_11 0x0C
  413. #define RFLR_DIOMAPPING1_DIO3_MASK 0xFC
  414. #define RFLR_DIOMAPPING1_DIO3_00 0x00 // Default
  415. #define RFLR_DIOMAPPING1_DIO3_01 0x01
  416. #define RFLR_DIOMAPPING1_DIO3_10 0x02
  417. #define RFLR_DIOMAPPING1_DIO3_11 0x03
  418. /*!
  419. * RegDioMapping2
  420. */
  421. #define RFLR_DIOMAPPING2_DIO4_MASK 0x3F
  422. #define RFLR_DIOMAPPING2_DIO4_00 0x00 // Default
  423. #define RFLR_DIOMAPPING2_DIO4_01 0x40
  424. #define RFLR_DIOMAPPING2_DIO4_10 0x80
  425. #define RFLR_DIOMAPPING2_DIO4_11 0xC0
  426. #define RFLR_DIOMAPPING2_DIO5_MASK 0xCF
  427. #define RFLR_DIOMAPPING2_DIO5_00 0x00 // Default
  428. #define RFLR_DIOMAPPING2_DIO5_01 0x10
  429. #define RFLR_DIOMAPPING2_DIO5_10 0x20
  430. #define RFLR_DIOMAPPING2_DIO5_11 0x30
  431. #define RFLR_DIOMAPPING2_MAP_MASK 0xFE
  432. #define RFLR_DIOMAPPING2_MAP_PREAMBLEDETECT 0x01
  433. #define RFLR_DIOMAPPING2_MAP_RSSI 0x00 // Default
  434. /*!
  435. * RegVersion (Read Only)
  436. */
  437. /*!
  438. * RegPllHop
  439. */
  440. #define RFLR_PLLHOP_FASTHOP_MASK 0x7F
  441. #define RFLR_PLLHOP_FASTHOP_ON 0x80
  442. #define RFLR_PLLHOP_FASTHOP_OFF 0x00 // Default
  443. /*!
  444. * RegTcxo
  445. */
  446. #define RFLR_TCXO_TCXOINPUT_MASK 0xEF
  447. #define RFLR_TCXO_TCXOINPUT_ON 0x10
  448. #define RFLR_TCXO_TCXOINPUT_OFF 0x00 // Default
  449. /*!
  450. * RegPaDac
  451. */
  452. #define RFLR_PADAC_20DBM_MASK 0xF8
  453. #define RFLR_PADAC_20DBM_ON 0x07
  454. #define RFLR_PADAC_20DBM_OFF 0x04 // Default
  455. /*!
  456. * RegFormerTemp
  457. */
  458. /*!
  459. * RegBitrateFrac
  460. */
  461. #define RF_BITRATEFRAC_MASK 0xF0
  462. /*!
  463. * RegAgcRef
  464. */
  465. /*!
  466. * RegAgcThresh1
  467. */
  468. /*!
  469. * RegAgcThresh2
  470. */
  471. /*!
  472. * RegAgcThresh3
  473. */
  474. /*!
  475. * RegPll
  476. */
  477. #define RF_PLL_BANDWIDTH_MASK 0x3F
  478. #define RF_PLL_BANDWIDTH_75 0x00
  479. #define RF_PLL_BANDWIDTH_150 0x40
  480. #define RF_PLL_BANDWIDTH_225 0x80
  481. #define RF_PLL_BANDWIDTH_300 0xC0 // Default
  482. #endif // __SX1276_REGS_LORA_H__