periph_conf.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2014 Freie Universität Berlin
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser General
5  * Public License v2.1. See the file LICENSE in the top level directory for more
6  * details.
7  */
8 
9 #pragma once
10 
21 #include "periph_cpu.h"
22 #include "cfg_clock_16_0.h"
23 #include "cfg_timer_012.h"
24 #include "cfg_rtt_default.h"
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
34 static const uart_conf_t uart_config[] = {
35  { /* Mapped to USB virtual COM port */
36  .dev = NRF_UART0,
37  .rx_pin = GPIO_PIN(0, 1),
38  .tx_pin = GPIO_PIN(0, 2),
39 #ifdef MODULE_PERIPH_UART_HW_FC
40  .rts_pin = GPIO_UNDEF,
41  .cts_pin = GPIO_UNDEF,
42 #endif
43  .irqn = UART0_IRQn,
44  },
45 };
46 
47 #define UART_NUMOF ARRAY_SIZE(uart_config)
48 #define UART_0_ISR isr_uart0
55 static const spi_conf_t spi_config[] = {
56  {
57  .dev = NRF_SPI0,
58  .sclk = 19,
59  .mosi = 17,
60  .miso = 18
61  },
62  {
63  .dev = NRF_SPI1,
64  .sclk = 22,
65  .mosi = 20,
66  .miso = 21
67  }
68 };
69 
70 #define SPI_NUMOF ARRAY_SIZE(spi_config)
77 static const i2c_conf_t i2c_config[] = {
78  {
79  .dev = NRF_TWI0,
80  .pin_scl = 23,
81  .pin_sda = 24,
82  .ppi = 0,
83  .speed = I2C_SPEED_NORMAL
84  }
85 };
86 
87 #define I2C_NUMOF ARRAY_SIZE(i2c_config)
96 static const adc_conf_t adc_config[] = {4, 5, 6, 7};
97 
98 #define ADC_NUMOF ARRAY_SIZE(adc_config)
101 #ifdef __cplusplus
102 }
103 #endif
104 
#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:38
static const spi_conf_t spi_config[]
SPI configuration.
Definition: periph_conf.h:96
static const i2c_conf_t i2c_config[]
I2C configuration.
Definition: periph_conf.h:68
static const adc_conf_t adc_config[]
ADC configuration.
Definition: periph_conf.h:250
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