Toggle navigation
Documentation
The friendly Operating System for the Internet of Things
Loading...
Searching...
No Matches
sx126x_params.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2021 Inria
3
*
4
* This file is subject to the terms and conditions of the GNU Lesser
5
* General Public License v2.1. See the file LICENSE in the top level
6
* directory for more details.
7
*/
8
19
#ifndef SX126X_PARAMS_H
20
#define SX126X_PARAMS_H
21
22
#include "board.h"
23
#include "
sx126x.h
"
24
#include "sx126x_driver.h"
25
26
#ifdef MODULE_SHIELD_LC68
27
# include "arduino_iomap.h"
28
#endif
29
30
#ifdef __cplusplus
31
extern
"C"
{
32
#endif
33
34
#ifdef MODULE_SHIELD_LLCC68
35
# define SX126X_PARAM_SPI ARDUINO_SPI_D11D12D13
36
# define SX126X_PARAM_SPI_NSS ARDUINO_PIN_7
37
# define SX126X_PARAM_RESET ARDUINO_PIN_A0
38
# define SX126X_PARAM_BUSY ARDUINO_PIN_3
39
# define SX126X_PARAM_DIO1 ARDUINO_PIN_5
40
#endif
41
48
#ifndef SX126X_PARAM_SPI
49
# define SX126X_PARAM_SPI SPI_DEV(0)
50
#endif
51
52
#ifndef SX126X_PARAM_SPI_NSS
53
# define SX126X_PARAM_SPI_NSS GPIO_PIN(0, 8)
/* D7 */
54
#endif
55
56
#ifndef SX126X_PARAM_RESET
57
# define SX126X_PARAM_RESET GPIO_PIN(0, 0)
/* A0 */
58
#endif
59
60
#ifndef SX126X_PARAM_BUSY
61
# define SX126X_PARAM_BUSY GPIO_PIN(1, 3)
/* D3 */
62
#endif
63
64
#ifndef SX126X_PARAM_DIO1
65
# define SX126X_PARAM_DIO1 GPIO_PIN(1, 4)
/* D5 */
66
#endif
67
68
#ifndef SX126X_PARAM_REGULATOR
69
# define SX126X_PARAM_REGULATOR SX126X_REG_MODE_DCDC
70
#endif
71
72
#ifndef SX126X_PARAM_SET_RF_MODE_CB
73
# define SX126X_PARAM_SET_RF_MODE_CB NULL
74
#endif
75
76
#ifndef SX126X_PARAM_TX_PA_MODE
77
# define SX126X_PARAM_TX_PA_MODE SX126X_RF_MODE_TX_LPA
78
#endif
79
80
#ifndef SX126X_PARAM_TYPE
81
# if IS_USED(MODULE_SX1261)
82
# define SX126X_PARAM_TYPE SX126X_TYPE_SX1261
83
# elif IS_USED(MODULE_SX1262)
84
# define SX126X_PARAM_TYPE SX126X_TYPE_SX1262
85
# elif IS_USED(MODULE_SX1268)
86
# define SX126X_PARAM_TYPE SX126X_TYPE_SX1268
87
# elif IS_USED(MODULE_LLCC68)
88
# define SX126X_PARAM_TYPE SX126X_TYPE_LLCC68
89
# elif IS_USED(MODULE_SX126X_STM32WL)
90
# define SX126X_PARAM_TYPE SX126X_TYPE_STM32WL
91
# else
92
# error "You should select at least one of the SX126x variants."
93
# endif
94
#endif
95
96
#if IS_USED(MODULE_SX126X_RF_SWITCH)
97
# define SX126X_SET_RF_MODE .set_rf_mode = SX126X_PARAM_SET_RF_MODE_CB,
98
# define SX126X_TX_PA_MODE .tx_pa_mode = SX126X_PARAM_TX_PA_MODE
99
#else
100
# define SX126X_SET_RF_MODE
101
# define SX126X_TX_PA_MODE
102
#endif
103
104
#define SX126X_PARAMS { .spi = SX126X_PARAM_SPI, \
105
.nss_pin = SX126X_PARAM_SPI_NSS, \
106
.reset_pin = SX126X_PARAM_RESET, \
107
.busy_pin = SX126X_PARAM_BUSY, \
108
.dio1_pin = SX126X_PARAM_DIO1, \
109
.type = SX126X_PARAM_TYPE, \
110
.regulator = SX126X_PARAM_REGULATOR, \
111
SX126X_SET_RF_MODE \
112
SX126X_TX_PA_MODE}
113
119
static
const
sx126x_params_t
sx126x_params
[] =
120
{
121
SX126X_PARAMS
122
};
123
124
#ifdef __cplusplus
125
}
126
#endif
127
128
#endif
/* SX126X_PARAMS_H */
sx126x_params_t
Device initialization parameters.
Definition
sx126x.h:85
sx126x.h
sx126x_params
static const sx126x_params_t sx126x_params[]
Configuration struct.
Definition
sx126x_params.h:119
Generated on Sat Nov 23 2024 01:58:07 by
1.9.8