Loading...
Searching...
No Matches
board.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2021 Mesotic SAS
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
17
18#include "cpu.h"
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
31#define CLOCK_HFCLK (32U)
33/* LFCLK Source clock selection:*/
34/* - CLOCK_LFCLKSRC_SRC_LFRC: 32.768 kHz RC oscillator
35 * - CLOCK_LFCLKSRC_SRC_LFXO: 32.768 kHz crystal oscillator */
36#define CLOCK_LFCLK (CLOCK_LFCLKSRC_SRC_LFXO)
38
43#define LED0_PIN GPIO_PIN(0, 2)
44#define LED1_PIN GPIO_PIN(0, 3)
45#define LED2_PIN GPIO_PIN(0, 4)
46#define LED3_PIN GPIO_PIN(0, 5)
47
48#define LED0_MASK (1 << 2)
49#define LED1_MASK (1 << 3)
50#define LED2_MASK (1 << 4)
51#define LED3_MASK (1 << 5)
52
53#define LED_PORT (NRF_P0_S)
54
55#define LED0_ON (LED_PORT->OUTSET = LED0_MASK)
56#define LED0_OFF (LED_PORT->OUTCLR = LED0_MASK)
57#define LED0_TOGGLE (LED_PORT->OUT ^= LED0_MASK)
58
59#define LED1_ON (LED_PORT->OUTSET = LED1_MASK)
60#define LED1_OFF (LED_PORT->OUTCLR = LED1_MASK)
61#define LED1_TOGGLE (LED_PORT->OUT ^= LED1_MASK)
62
63#define LED2_ON (LED_PORT->OUTSET = LED2_MASK)
64#define LED2_OFF (LED_PORT->OUTCLR = LED2_MASK)
65#define LED2_TOGGLE (LED_PORT->OUT ^= LED2_MASK)
66
67#define LED3_ON (LED_PORT->OUTSET = LED3_MASK)
68#define LED3_OFF (LED_PORT->OUTCLR = LED3_MASK)
69#define LED3_TOGGLE (LED_PORT->OUT ^= LED3_MASK)
71
76#define BTN0_PIN GPIO_PIN(0, 6)
77#define BTN0_MODE GPIO_IN_PU
78#define BTN1_PIN GPIO_PIN(0, 7)
79#define BTN1_MODE GPIO_IN_PU
80#define BTN2_PIN GPIO_PIN(0, 8)
81#define BTN2_MODE GPIO_IN_PU
82#define BTN3_PIN GPIO_PIN(0, 9)
83#define BTN3_MODE GPIO_IN_PU
85
90#define WS281X_TIMER_DEV TIMER_DEV(1)
91#define WS281X_TIMER_MAX_VALUE TIMER_1_MAX_VALUE
93
94#ifdef __cplusplus
95}
96#endif
97