board.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2017 Baptiste Clenet <bapclenet@gmail.com>
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 
21 #ifndef BOARD_H
22 #define BOARD_H
23 
24 #include "cpu.h"
25 #include "periph/gpio.h"
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
35 #define AT86RF2XX_PARAM_SPI SPI_DEV(0)
36 #define AT86RF2XX_PARAM_CS GPIO_PIN(PB, 31)
37 #define AT86RF2XX_PARAM_INT GPIO_PIN(PB, 0)
38 #define AT86RF2XX_PARAM_SLEEP GPIO_PIN(PA, 20)
39 #define AT86RF2XX_PARAM_RESET GPIO_PIN(PB, 15)
40 #define AT86RF2XX_PARAM_SPI_CLK SPI_CLK_5MHZ
47 #define LED_PORT PORT->Group[0]
48 
49 #define LED0_PIN GPIO_PIN(PA, 18)
50 #define LED0_MASK (1 << 18)
51 #define LED0_ON (LED_PORT.OUTCLR.reg = LED0_MASK)
52 #define LED0_OFF (LED_PORT.OUTSET.reg = LED0_MASK)
53 #define LED0_TOGGLE (LED_PORT.OUTTGL.reg = LED0_MASK)
54 
55 #define LED1_PIN GPIO_PIN(PA, 19)
56 #define LED1_MASK (1 << 19)
57 #define LED1_ON (LED_PORT.OUTCLR.reg = LED1_MASK)
58 #define LED1_OFF (LED_PORT.OUTSET.reg = LED1_MASK)
59 #define LED1_TOGGLE (LED_PORT.OUTTGL.reg = LED1_MASK)
66 #define BTN0_PIN GPIO_PIN(PA, 28)
67 #define BTN0_MODE GPIO_IN_PU
74 #define RFCTL1_PIN GPIO_PIN(PA, 9)
75 #define RFCTL2_PIN GPIO_PIN(PA, 12)
81 enum {
82  RFCTL_ANTENNA_BOARD,
83  RFCTL_ANTENNA_EXT,
84 };
85 
90 #ifndef RFCTL_ANTENNA_DEFAULT
91 #define RFCTL_ANTENNA_DEFAULT RFCTL_ANTENNA_BOARD
92 #endif
98 void board_antenna_config(uint8_t antenna);
99 
100 #ifdef __cplusplus
101 }
102 #endif
103 
104 #endif /* BOARD_H */
Low-level GPIO peripheral driver interface definitions.
void board_antenna_config(uint8_t antenna)
Set antenna switch.