periph_conf.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2014 Christian Mehlis <mehlis@inf.fu-berlin.de>
3  * SPDX-License-Identifier: LGPL-2.1-only
4  */
5 
6 #pragma once
7 
19 #include "periph_cpu.h"
20 #include "cfg_clock_16_1.h"
21 #include "cfg_timer_012.h"
22 #include "cfg_rtt_default.h"
23 
24 #ifdef __cplusplus
25  extern "C" {
26 #endif
27 
32 static const uart_conf_t uart_config[] = {
33  { /* Mapped to USB virtual COM port */
34  .dev = NRF_UART0,
35  .rx_pin = GPIO_PIN(0, 17),
36  .tx_pin = GPIO_PIN(0, 18),
37 #ifdef MODULE_PERIPH_UART_HW_FC
38  .rts_pin = GPIO_UNDEF,
39  .cts_pin = GPIO_UNDEF,
40 #endif
41  .irqn = UART0_IRQn,
42  },
43 };
44 
45 #define UART_NUMOF ARRAY_SIZE(uart_config)
46 #define UART_0_ISR isr_uart0
53 static const spi_conf_t spi_config[] = {
54  {
55  .dev = NRF_SPI0,
56  .sclk = 15,
57  .mosi = 13,
58  .miso = 14
59  }
60 };
61 
62 #define SPI_NUMOF ARRAY_SIZE(spi_config)
69 static const i2c_conf_t i2c_config[] = {
70  {
71  .dev = NRF_TWI0,
72  .pin_scl = 7,
73  .pin_sda = 8,
74  .ppi = 0,
75  .speed = I2C_SPEED_NORMAL,
76  },
77  {
78  .dev = NRF_TWI1,
79  .pin_scl = 9,
80  .pin_sda = 10,
81  .ppi = 1,
82  .speed = I2C_SPEED_NORMAL,
83  }
84 };
85 
86 #define I2C_NUMOF ARRAY_SIZE(i2c_config)
95 static const adc_conf_t adc_config[] = {3, 4, 5, 6};
96 
97 #define ADC_NUMOF ARRAY_SIZE(adc_config)
100 #ifdef __cplusplus
101 } /* end extern "C" */
102 #endif
103 
#define GPIO_PIN(x, y)
Define a CPU specific GPIO pin generator macro.
Definition: periph_cpu.h:45
#define GPIO_UNDEF
Definition of a fitting UNDEF value.
static const uart_conf_t uart_config[]
UART configuration.
Definition: periph_conf.h:35
static const spi_conf_t spi_config[]
SPI configuration.
Definition: periph_conf.h:93
static const i2c_conf_t i2c_config[]
I2C configuration.
Definition: periph_conf.h:65
static const adc_conf_t adc_config[]
ADC configuration.
Definition: periph_conf.h:247
Common clock configuration for some nrf51 based boards.
Shared timer peripheral configuration mapping timers 0, 1, and 2.
@ UART0_IRQn
UART0
Definition: cc2538.h:52
@ I2C_SPEED_NORMAL
normal mode: ~100 kbit/s
Definition: periph_cpu.h:277
ADC device configuration.
Definition: periph_cpu.h:377
I2C configuration structure.
Definition: periph_cpu.h:298
TWI_t * dev
Pointer to hardware module registers.
Definition: periph_cpu.h:299
SPI device configuration.
Definition: periph_cpu.h:336
SPI_t * dev
pointer to the used SPI device
Definition: periph_cpu.h:337
UART device configuration.
Definition: periph_cpu.h:217
USART_t * dev
pointer to the used UART device
Definition: periph_cpu.h:218