remote-revb/include/board.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2014 Freie Universit├Ąt Berlin
3  * Copyright (C) 2015 Zolertia SL
4  *
5  * This file is subject to the terms and conditions of the GNU Lesser General
6  * Public License v2.1. See the file LICENSE in the top level directory for more
7  * details.
8  */
9 
23 #ifndef BOARD_H
24 #define BOARD_H
25 
26 #include "cpu.h"
27 #include "board_common.h"
28 
29 #ifdef __cplusplus
30  extern "C" {
31 #endif
32 
37 #define LED0_PIN GPIO_PIN(3, 4)
38 #define LED1_PIN GPIO_PIN(1, 7)
39 #define LED2_PIN GPIO_PIN(1, 6)
40 
41 #define LED0_MASK (1 << 4)
42 #define LED1_MASK (1 << 7)
43 #define LED2_MASK (1 << 6)
44 
45 #define LED0_ON (GPIO_D->DATA |= LED0_MASK)
46 #define LED0_OFF (GPIO_D->DATA &= ~LED0_MASK)
47 #define LED0_TOGGLE (GPIO_D->DATA ^= LED0_MASK)
48 
49 #define LED1_ON (GPIO_B->DATA |= LED1_MASK)
50 #define LED1_OFF (GPIO_B->DATA &= ~LED1_MASK)
51 #define LED1_TOGGLE (GPIO_B->DATA ^= LED1_MASK)
52 
53 #define LED2_ON (GPIO_B->DATA |= LED2_MASK)
54 #define LED2_OFF (GPIO_B->DATA &= ~LED2_MASK)
55 #define LED2_TOGGLE (GPIO_B->DATA ^= LED2_MASK)
56 
62 #define BTN0_PIN GPIO_PIN(0, 3)
63 
85 #define RF_SWITCH_GPIO GPIO_PD2
86 #define RF_SWITCH_SUB_GHZ gpio_set(RF_SWITCH_GPIO)
87 #define RF_SWITCH_2_4_GHZ gpio_clear(RF_SWITCH_GPIO)
88 #define RF_SWITCH_TOGGLE gpio_toggle(RF_SWITCH_GPIO)
89 
95 #define SHUTDOWN_EN_GPIO GPIO_PD1
96 
102 #define CC1200_SPI_DEV SSI0
103 #define CC1200_MOSI_GPIO GPIO_PB1
104 #define CC1200_MISO_GPIO GPIO_PB3
105 #define CC1200_SCLK_GPIO GPIO_PB2
106 #define CC1200_CSN_GPIO GPIO_PB5
107 #define CC1200_RESET_GPIO GPIO_PC7
108 #define CC1200_GPD0_GPIO GPIO_PB4
109 #define CC1200_GPD2_GPIO GPIO_PB0
110 
116 #define SDCARD_SPI_PARAM_SPI SPI_DEV(1)
117 #define SDCARD_SPI_PARAM_CS GPIO_PIN(0,7)
118 #define SDCARD_SPI_PARAM_CLK GPIO_PIN(2,4)
119 #define SDCARD_SPI_PARAM_MOSI GPIO_PIN(2,5)
120 #define SDCARD_SPI_PARAM_MISO GPIO_PIN(2,6)
121 #define SDCARD_SPI_PARAM_POWER GPIO_PIN(0,6)
122 #define SDCARD_SPI_PARAM_POWER_AH false
123 
128 void board_init(void);
129 
130 #ifdef __cplusplus
131 } /* end extern "C" */
132 #endif
133 #endif /* BOARD_H */
134 
void board_init(void)
Initialize board specific hardware, including clock, LEDs and std-IO.