Loading...
Searching...
No Matches
periph_conf.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2020 Benjamin Valentin
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
18
19#include "periph_cpu.h"
20#include "cfg_rtt_default.h"
21#include "cfg_timer_default.h"
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
32#define CLOCK_HFCLK (1) /* external crystal */
33
34/* LFCLK Source clock selection:*/
35/* - CLOCK_LFCLKSRC_SRC_RC: internal RC oscillator
36 * - CLOCK_LFCLKSRC_SRC_Xtal: 32.768 kHz crystal
37 * - CLOCK_LFCLKSRC_SRC_Synth: derived from HFCLK */
38#define CLOCK_LFCLK (CLOCK_LFCLKSRC_SRC_RC)
40
45static const spi_conf_t spi_config[] = {
46 {
47 .dev = NRF_SPIM0,
48 .sclk = GPIO_PIN(0, 26),
49 .mosi = GPIO_PIN(0, 27),
50 .miso = GPIO_PIN(0, 28),
51 },
52};
53#define SPI_NUMOF ARRAY_SIZE(spi_config)
55
60static const i2c_conf_t i2c_config[] = {
61 {
62 .dev = NRF_TWIM0,
63 .scl = GPIO_PIN(0, 6),
64 .sda = GPIO_PIN(0, 7),
65 .speed = I2C_SPEED_NORMAL
66 }
67};
68#define I2C_NUMOF ARRAY_SIZE(i2c_config)
70
75static const uart_conf_t uart_config[] = {
76 { /* Mapped to USB virtual COM port */
77 .dev = NRF_UARTE0,
78 .rx_pin = GPIO_PIN(0, 14),
79 .tx_pin = GPIO_PIN(0, 18),
80#ifdef MODULE_PERIPH_UART_HW_FC
81 .rts_pin = GPIO_UNDEF,
82 .cts_pin = GPIO_UNDEF,
83#endif
84 .irqn = UARTE0_UART0_IRQn,
85 },
86};
87
88#define UART_0_ISR (isr_uart0)
89
90#define UART_NUMOF ARRAY_SIZE(uart_config)
92
93#ifdef __cplusplus
94}
95#endif
96
#define GPIO_PIN(x, y)
Define a CPU specific GPIO pin generator macro.
Definition periph_cpu.h:42
#define GPIO_UNDEF
Definition of a fitting UNDEF value.
@ I2C_SPEED_NORMAL
normal mode: ~100 kbit/s
Definition periph_cpu.h:274
I2C configuration structure.
Definition periph_cpu.h:295
SPI device configuration.
Definition periph_cpu.h:333
UART device configuration.
Definition periph_cpu.h:214