Loading...
Searching...
No Matches
board.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2024 TU Dresden
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
19
20#include "cpu.h"
21#include "board_common.h"
22#include "periph/gpio.h"
23
24#ifdef __cplusplus
25extern "C" {
26#endif
27
34#define LED0_PIN GPIO_PIN(0, 26)
35#define LED1_PIN GPIO_PIN(0, 30)
36#define LED2_PIN GPIO_PIN(0, 6)
37
38#define LED_PORT (NRF_P0)
39#define LED0_MASK (1 << 26)
40#define LED1_MASK (1 << 30)
41#define LED2_MASK (1 << 6)
42#define LED_MASK (LED0_MASK | LED1_MASK | LED2_MASK)
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)
57
67#define XIAO_NRF52840_NOR_PAGE_SIZE (256)
68#define XIAO_NRF52840_NOR_PAGES_PER_SECTOR (16)
69#define XIAO_NRF52840_NOR_SECTOR_COUNT (512)
70#define XIAO_NRF52840_NOR_FLAGS \
71 (SPI_NOR_F_SECT_4K | \
72 SPI_NOR_F_SECT_32K | \
73 SPI_NOR_F_SECT_64K)
74#define XIAO_NRF52840_NOR_SPI_DEV SPI_DEV(1)
75#define XIAO_NRF52840_NOR_SPI_CLK SPI_CLK_10MHZ
76#define XIAO_NRF52840_NOR_SPI_CS GPIO_PIN(0, 25)
77#define XIAO_NRF52840_NOR_SPI_WP GPIO_PIN(0, 22)
78#define XIAO_NRF52840_NOR_SPI_HOLD GPIO_PIN(0, 23)
79#define XIAO_NRF52840_NOR_SPI_MODE SPI_MODE_0
81
83#define MTD_0 mtd_dev_get(0)
84
85#ifdef BOARD_SEEEDSTUDIO_XIAO_NRF52840_SENSE
92#define LSM6DSXX_PARAM_I2C I2C_DEV(1)
93#define LSM6DSXX_PARAM_ADDR (0x6A)
94
95#define LSM6DS3_PWR_PIN GPIO_PIN(1, 8)
97#endif
98
103#define CONFIG_ZTIMER_USEC_ADJUST_SET 7
104#define CONFIG_ZTIMER_USEC_ADJUST_SLEEP 22
106
107#ifdef __cplusplus
108}
109#endif
110
Low-level GPIO peripheral driver interface definitions.