board.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2021 Freie Universität Berlin
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 
20 #ifndef BOARD_H
21 #define BOARD_H
22 
23 #include "board_nucleo.h"
24 
25 /* Required for `nucleo_wl55jc_sx126x_set_rf_mode` */
26 #if IS_USED(MODULE_SX126X_STM32WL)
27 #include "sx126x.h"
28 #endif
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
38 #define SX126X_PARAM_SPI (SPI_DEV(0))
39 
40 #if IS_USED(MODULE_SX126X_STM32WL)
41 extern void nucleo_wl55jc_sx126x_set_rf_mode(sx126x_t *dev, sx126x_rf_mode_t rf_mode);
42 #define SX126X_PARAM_SET_RF_MODE_CB nucleo_wl55jc_sx126x_set_rf_mode
43 #define SX126X_PARAM_TYPE SX126X_TYPE_STM32WL
44 #endif
51 #define LED0_PIN_NUM 15
52 #define LED0_PORT GPIO_PORT_B
53 #define LED0_PORT_NUM PORT_B
54 
55 #define LED1_PIN_NUM 9
56 #define LED1_PORT GPIO_PORT_B
57 #define LED1_PORT_NUM PORT_B
58 
59 #define LED2_PIN_NUM 11
60 #define LED2_PORT GPIO_PORT_B
61 #define LED2_PORT_NUM PORT_B
68 #define BTN0_PIN GPIO_PIN(PORT_A, 0)
69 #define BTN0_MODE GPIO_IN_PU
70 #define BTN1_PIN GPIO_PIN(PORT_A, 1)
71 #define BTN1_MODE GPIO_IN_PU
72 #define BTN2_PIN GPIO_PIN(PORT_C, 6)
73 #define BTN2_MODE GPIO_IN_PU
82 #define FE_CTRL1 GPIO_PIN(PORT_C, 4)
83 #define FE_CTRL2 GPIO_PIN(PORT_C, 5)
84 #define FE_CTRL3 GPIO_PIN(PORT_C, 3)
87 #ifdef __cplusplus
88 }
89 #endif
90 
91 #include "stm32_leds.h"
92 
93 #endif /* BOARD_H */
Global common Nucleo board configuration.
sx126x_rf_mode_t
RF switch states.
Definition: sx126x.h:45
Common LED macros.
Device descriptor for the driver.
Definition: sx126x.h:105