board.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2016-2017 Freie Universität Berlin
3  * SPDX-License-Identifier: LGPL-2.1-only
4  */
5 
6 #pragma once
7 
19 #include "board_common.h"
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24 
29 #define LED0_PIN GPIO_PIN(0, 17)
30 #define LED1_PIN GPIO_PIN(0, 18)
31 #define LED2_PIN GPIO_PIN(0, 19)
32 #define LED3_PIN GPIO_PIN(0, 20)
33 
34 #define LED_PORT (NRF_P0)
35 #define LED0_MASK (1 << 17)
36 #define LED1_MASK (1 << 18)
37 #define LED2_MASK (1 << 19)
38 #define LED3_MASK (1 << 20)
39 #define LED_MASK (LED0_MASK | LED1_MASK | LED2_MASK | LED3_MASK)
40 
41 #define LED0_ON (LED_PORT->OUTCLR = LED0_MASK)
42 #define LED0_OFF (LED_PORT->OUTSET = LED0_MASK)
43 #define LED0_TOGGLE (LED_PORT->OUT ^= LED0_MASK)
44 
45 #define LED1_ON (LED_PORT->OUTCLR = LED1_MASK)
46 #define LED1_OFF (LED_PORT->OUTSET = LED1_MASK)
47 #define LED1_TOGGLE (LED_PORT->OUT ^= LED1_MASK)
48 
49 #define LED2_ON (LED_PORT->OUTCLR = LED2_MASK)
50 #define LED2_OFF (LED_PORT->OUTSET = LED2_MASK)
51 #define LED2_TOGGLE (LED_PORT->OUT ^= LED2_MASK)
52 
53 #define LED3_ON (LED_PORT->OUTCLR = LED3_MASK)
54 #define LED3_OFF (LED_PORT->OUTSET = LED3_MASK)
55 #define LED3_TOGGLE (LED_PORT->OUT ^= LED3_MASK)
62 #define BTN0_PIN GPIO_PIN(0, 13)
63 #define BTN0_MODE GPIO_IN_PU
64 #define BTN1_PIN GPIO_PIN(0, 14)
65 #define BTN1_MODE GPIO_IN_PU
66 #define BTN2_PIN GPIO_PIN(0, 15)
67 #define BTN2_MODE GPIO_IN_PU
68 #define BTN3_PIN GPIO_PIN(0, 16)
69 #define BTN3_MODE GPIO_IN_PU
72 #ifdef __cplusplus
73 }
74 #endif
75