nrf52840dk/include/board.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2017 Feie 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 
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(0, 13)
35 #define LED1_PIN GPIO_PIN(0, 14)
36 #define LED2_PIN GPIO_PIN(0, 15)
37 #define LED3_PIN GPIO_PIN(0, 16)
38 
39 #define LED_PORT (NRF_P0)
40 #define LED0_MASK (1 << 13)
41 #define LED1_MASK (1 << 14)
42 #define LED2_MASK (1 << 15)
43 #define LED3_MASK (1 << 16)
44 
45 #define LED0_ON (LED_PORT->OUTCLR = LED0_MASK)
46 #define LED0_OFF (LED_PORT->OUTSET = LED0_MASK)
47 #define LED0_TOGGLE (LED_PORT->OUT ^= LED0_MASK)
48 
49 #define LED1_ON (LED_PORT->OUTCLR = LED1_MASK)
50 #define LED1_OFF (LED_PORT->OUTSET = LED1_MASK)
51 #define LED1_TOGGLE (LED_PORT->OUT ^= LED1_MASK)
52 
53 #define LED2_ON (LED_PORT->OUTCLR = LED2_MASK)
54 #define LED2_OFF (LED_PORT->OUTSET = LED2_MASK)
55 #define LED2_TOGGLE (LED_PORT->OUT ^= LED2_MASK)
56 
57 #define LED3_ON (LED_PORT->OUTCLR = LED3_MASK)
58 #define LED3_OFF (LED_PORT->OUTSET = LED3_MASK)
59 #define LED3_TOGGLE (LED_PORT->OUT ^= LED3_MASK)
60 
66 #define BUTTON1_PIN (GPIO_PIN(0, 11))
67 #define BUTTON2_PIN (GPIO_PIN(0, 12))
68 #define BUTTON3_PIN (GPIO_PIN(0, 24))
69 #define BUTTON4_PIN (GPIO_PIN(0, 25))
70 
75 void board_init(void);
76 
77 #ifdef __cplusplus
78 }
79 #endif
80 
81 #endif /* BOARD_H */
82 
void board_init(void)
Initialize board specific hardware, including clock, LEDs and std-IO.