board.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2024 TU Dresden
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 
9 #ifndef BOARD_H
10 #define BOARD_H
23 #include "cpu.h"
24 #include "board_common.h"
25 #include "periph/gpio.h"
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
37 #define LED0_PIN GPIO_PIN(0, 26)
38 #define LED1_PIN GPIO_PIN(0, 30)
39 #define LED2_PIN GPIO_PIN(0, 6)
41 #define LED_PORT (NRF_P0)
42 #define LED0_MASK (1 << 26)
43 #define LED1_MASK (1 << 30)
44 #define LED2_MASK (1 << 6)
45 #define LED_MASK (LED0_MASK | LED1_MASK | LED2_MASK)
48 #define LED0_ON (LED_PORT->OUTCLR = LED0_MASK)
49 #define LED0_OFF (LED_PORT->OUTSET = LED0_MASK)
50 #define LED0_TOGGLE (LED_PORT->OUT ^= LED0_MASK)
52 #define LED1_ON (LED_PORT->OUTCLR = LED1_MASK)
53 #define LED1_OFF (LED_PORT->OUTSET = LED1_MASK)
54 #define LED1_TOGGLE (LED_PORT->OUT ^= LED1_MASK)
56 #define LED2_ON (LED_PORT->OUTCLR = LED2_MASK)
57 #define LED2_OFF (LED_PORT->OUTSET = LED2_MASK)
58 #define LED2_TOGGLE (LED_PORT->OUT ^= LED2_MASK)
70 #define XIAO_NRF52840_NOR_PAGE_SIZE (256)
71 #define XIAO_NRF52840_NOR_PAGES_PER_SECTOR (16)
72 #define XIAO_NRF52840_NOR_SECTOR_COUNT (512)
73 #define XIAO_NRF52840_NOR_FLAGS \
74  (SPI_NOR_F_SECT_4K | \
75  SPI_NOR_F_SECT_32K | \
76  SPI_NOR_F_SECT_64K)
77 #define XIAO_NRF52840_NOR_SPI_DEV SPI_DEV(1)
78 #define XIAO_NRF52840_NOR_SPI_CLK SPI_CLK_10MHZ
79 #define XIAO_NRF52840_NOR_SPI_CS GPIO_PIN(0, 25)
80 #define XIAO_NRF52840_NOR_SPI_WP GPIO_PIN(0, 22)
81 #define XIAO_NRF52840_NOR_SPI_HOLD GPIO_PIN(0, 23)
82 #define XIAO_NRF52840_NOR_SPI_MODE SPI_MODE_0
86 #define MTD_0 mtd_dev_get(0)
87 
88 #ifdef BOARD_SEEEDSTUDIO_XIAO_NRF52840_SENSE
95 #define LSM6DSXX_PARAM_I2C I2C_DEV(1)
96 #define LSM6DSXX_PARAM_ADDR (0x6A)
98 #define LSM6DS3_PWR_PIN GPIO_PIN(1, 8)
100 #endif
101 
106 #define CONFIG_ZTIMER_USEC_ADJUST_SET 7
107 #define CONFIG_ZTIMER_USEC_ADJUST_SLEEP 22
110 #ifdef __cplusplus
111 }
112 #endif
113 
115 #endif /* BOARD_H */
Low-level GPIO peripheral driver interface definitions.