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 __cplusplus
27
extern
"C"
{
28
#endif
29
36
#ifndef SX126X_PARAM_SPI
37
#define SX126X_PARAM_SPI SPI_DEV(0)
38
#endif
39
40
#ifndef SX126X_PARAM_SPI_NSS
41
#define SX126X_PARAM_SPI_NSS GPIO_PIN(0, 8)
/* D7 */
42
#endif
43
44
#ifndef SX126X_PARAM_RESET
45
#define SX126X_PARAM_RESET GPIO_PIN(0, 0)
/* A0 */
46
#endif
47
48
#ifndef SX126X_PARAM_BUSY
49
#define SX126X_PARAM_BUSY GPIO_PIN(1, 3)
/* D3 */
50
#endif
51
52
#ifndef SX126X_PARAM_DIO1
53
#define SX126X_PARAM_DIO1 GPIO_PIN(1, 4)
/* D5 */
54
#endif
55
56
#ifndef SX126X_PARAM_REGULATOR
57
#define SX126X_PARAM_REGULATOR SX126X_REG_MODE_DCDC
58
#endif
59
60
#ifndef SX126X_PARAM_SET_RF_MODE_CB
61
#define SX126X_PARAM_SET_RF_MODE_CB NULL
62
#endif
63
64
#ifndef SX126X_PARAM_TX_PA_MODE
65
#define SX126X_PARAM_TX_PA_MODE SX126X_RF_MODE_TX_LPA
66
#endif
67
68
#ifndef SX126X_PARAM_TYPE
69
# if IS_USED(MODULE_SX1261)
70
# define SX126X_PARAM_TYPE SX126X_TYPE_SX1261
71
# elif IS_USED(MODULE_SX1262)
72
# define SX126X_PARAM_TYPE SX126X_TYPE_SX1262
73
# elif IS_USED(MODULE_SX1268)
74
# define SX126X_PARAM_TYPE SX126X_TYPE_SX1268
75
# elif IS_USED(MODULE_LLCC68)
76
# define SX126X_PARAM_TYPE SX126X_TYPE_LLCC68
77
# elif IS_USED(MODULE_SX126X_STM32WL)
78
# define SX126X_PARAM_TYPE SX126X_TYPE_STM32WL
79
# else
80
# error "You should select at least one of the SX126x variants."
81
# endif
82
#endif
83
84
#if IS_USED(MODULE_SX126X_RF_SWITCH)
85
#define SX126X_SET_RF_MODE .set_rf_mode = SX126X_PARAM_SET_RF_MODE_CB,
86
#define SX126X_TX_PA_MODE .tx_pa_mode = SX126X_PARAM_TX_PA_MODE
87
#else
88
#define SX126X_SET_RF_MODE
89
#define SX126X_TX_PA_MODE
90
#endif
91
92
#define SX126X_PARAMS { .spi = SX126X_PARAM_SPI, \
93
.nss_pin = SX126X_PARAM_SPI_NSS, \
94
.reset_pin = SX126X_PARAM_RESET, \
95
.busy_pin = SX126X_PARAM_BUSY, \
96
.dio1_pin = SX126X_PARAM_DIO1, \
97
.type = SX126X_PARAM_TYPE, \
98
.regulator = SX126X_PARAM_REGULATOR, \
99
SX126X_SET_RF_MODE \
100
SX126X_TX_PA_MODE}
101
107
static
const
sx126x_params_t
sx126x_params
[] =
108
{
109
SX126X_PARAMS
110
};
111
112
#ifdef __cplusplus
113
}
114
#endif
115
116
#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:107
Generated on Thu Sep 19 2024 10:50:10 by
1.9.8