The friendly Operating System for the Internet of Things
stm32f3discovery/include/board.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2014 Freie Universit├Ąt Berlin
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser General
5  * Public License v2.1. See the file LICENSE in the top level directory for more
6  * details.
7  */
8 
21 #ifndef BOARD_H
22 #define BOARD_H
23 
24 #include "cpu.h"
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
34 #define LED0_PIN GPIO_PIN(PORT_E, 9)
35 #define LED1_PIN GPIO_PIN(PORT_E, 8)
36 #define LED2_PIN GPIO_PIN(PORT_E, 10)
37 #define LED3_PIN GPIO_PIN(PORT_E, 15)
38 #define LED4_PIN GPIO_PIN(PORT_E, 11)
39 #define LED5_PIN GPIO_PIN(PORT_E, 14)
40 #define LED6_PIN GPIO_PIN(PORT_E, 12)
41 #define LED7_PIN GPIO_PIN(PORT_E, 13)
42 
43 #define LED_PORT GPIOE
44 #define LED0_MASK (1 << 9)
45 #define LED1_MASK (1 << 8)
46 #define LED2_MASK (1 << 10)
47 #define LED3_MASK (1 << 15)
48 #define LED4_MASK (1 << 11)
49 #define LED5_MASK (1 << 14)
50 #define LED6_MASK (1 << 12)
51 #define LED7_MASK (1 << 13)
52 
53 #define LED0_ON (LED_PORT->BSRR = LED0_MASK)
54 #define LED0_OFF (LED_PORT->BSRR = (LED0_MASK << 16))
55 #define LED0_TOGGLE (LED_PORT->ODR ^= LED0_MASK)
56 
57 #define LED1_ON (LED_PORT->BSRR = LED1_MASK)
58 #define LED1_OFF (LED_PORT->BSRR = (LED1_MASK << 16))
59 #define LED1_TOGGLE (LED_PORT->ODR ^= LED1_MASK)
60 
61 #define LED2_ON (LED_PORT->BSRR = LED2_MASK)
62 #define LED2_OFF (LED_PORT->BSRR = (LED2_MASK << 16))
63 #define LED2_TOGGLE (LED_PORT->ODR ^= LED2_MASK)
64 
65 #define LED3_ON (LED_PORT->BSRR = LED3_MASK)
66 #define LED3_OFF (LED_PORT->BSRR = (LED3_MASK << 16))
67 #define LED3_TOGGLE (LED_PORT->ODR ^= LED3_MASK)
68 
69 #define LED4_ON (LED_PORT->BSRR = LED4_MASK)
70 #define LED4_OFF (LED_PORT->BSRR = (LED4_MASK << 16))
71 #define LED4_TOGGLE (LED_PORT->ODR ^= LED4_MASK)
72 
73 #define LED5_ON (LED_PORT->BSRR = LED5_MASK)
74 #define LED5_OFF (LED_PORT->BSRR = (LED5_MASK << 16))
75 #define LED5_TOGGLE (LED_PORT->ODR ^= LED5_MASK)
76 
77 #define LED6_ON (LED_PORT->BSRR = LED6_MASK)
78 #define LED6_OFF (LED_PORT->BSRR = (LED6_MASK << 16))
79 #define LED6_TOGGLE (LED_PORT->ODR ^= LED6_MASK)
80 
81 #define LED7_ON (LED_PORT->BSRR = LED7_MASK)
82 #define LED7_OFF (LED_PORT->BSRR = (LED7_MASK << 16))
83 #define LED7_TOGGLE (LED_PORT->ODR ^= LED7_MASK)
84 
89 #define BTN_B1_PIN GPIO_PIN(PORT_A, 0)
90 
94 void board_init(void);
95 
96 #ifdef __cplusplus
97 }
98 #endif
99 
100 #endif /* BOARD_H */
101 
void board_init(void)
Initialize board specific hardware, including clock, LEDs and std-IO.