Loading...
Searching...
No Matches
board.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2017 Freie Universität Berlin
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
18
19#include "board_common.h"
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
29#define LED0_PIN GPIO_PIN(0, 13)
30#define LED1_PIN GPIO_PIN(0, 14)
31#define LED2_PIN GPIO_PIN(0, 15)
32#define LED3_PIN GPIO_PIN(0, 16)
33
34#define LED_PORT (NRF_P0)
35#define LED0_MASK (1 << 13)
36#define LED1_MASK (1 << 14)
37#define LED2_MASK (1 << 15)
38#define LED3_MASK (1 << 16)
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)
57
64#define NRF52840DK_NOR_PAGE_SIZE (256)
65#define NRF52840DK_NOR_PAGES_PER_SECTOR (16)
66#define NRF52840DK_NOR_SECTOR_COUNT (2048)
67#define NRF52840DK_NOR_FLAGS (SPI_NOR_F_SECT_4K | SPI_NOR_F_SECT_32K)
68#define NRF52840DK_NOR_SPI_DEV SPI_DEV(1)
69#define NRF52840DK_NOR_SPI_CLK SPI_CLK_10MHZ
70#define NRF52840DK_NOR_SPI_CS GPIO_PIN(0, 17)
71#define NRF52840DK_NOR_SPI_MODE SPI_MODE_0
73
75#define MTD_0 mtd_dev_get(0)
76
81#define BTN0_PIN GPIO_PIN(0, 11)
82#define BTN0_MODE GPIO_IN_PU
83#define BTN1_PIN GPIO_PIN(0, 12)
84#define BTN1_MODE GPIO_IN_PU
85#define BTN2_PIN GPIO_PIN(0, 24)
86#define BTN2_MODE GPIO_IN_PU
87#define BTN3_PIN GPIO_PIN(0, 25)
88#define BTN3_MODE GPIO_IN_PU
90
91#ifdef __cplusplus
92}
93#endif
94