periph_conf.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2020 Inria
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
20 #ifndef PERIPH_CONF_H
21 #define PERIPH_CONF_H
22 
23 #include "periph_cpu.h"
24 #include "cfg_clock_32_1.h"
25 #include "cfg_rtt_default.h"
26 #include "cfg_timer_default.h"
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
36 static const uart_conf_t uart_config[] = {
37  {
38  .dev = NRF_UARTE0,
39  .rx_pin = GPIO_PIN(0, 4),
40  .tx_pin = GPIO_PIN(0, 5),
41 #ifdef MODULE_PERIPH_UART_HW_FC
42  .rts_pin = GPIO_UNDEF,
43  .cts_pin = GPIO_UNDEF,
44 #endif
45  .irqn = UARTE0_UART0_IRQn,
46  },
47 };
48 
49 #define UART_0_ISR (isr_uart0)
50 
51 #define UART_NUMOF ARRAY_SIZE(uart_config)
52 
58 static const i2c_conf_t i2c_config[] = {
59  { /* External connectors */
60  .dev = NRF_TWIM0,
61  .scl = GPIO_PIN(0, 0), /* D19 */
62  .sda = GPIO_PIN(0, 30), /* D20 */
63  .speed = I2C_SPEED_NORMAL
64  },
65  { /* On board sensors */
66  .dev = NRF_TWIM1,
67  .scl = GPIO_PIN(0, 25),
68  .sda = GPIO_PIN(0, 24),
69  .speed = I2C_SPEED_NORMAL
70  },
71 };
72 
73 #define I2C_NUMOF (sizeof(i2c_config) / sizeof(i2c_config[0]))
74 
80 static const spi_conf_t spi_config[] = {
81  { /* External connectors */
82  .dev = NRF_SPIM0,
83  .sclk = GPIO_PIN(0, 23), /* D13 */
84  .mosi = GPIO_PIN(0, 21), /* D15 */
85  .miso = GPIO_PIN(0, 22), /* D14 */
86  },
87  { /* TFT LCD screen */
88  .dev = NRF_SPIM1,
89  .sclk = GPIO_PIN(0, 14),
90  .mosi = GPIO_PIN(0, 15),
91  .miso = GPIO_PIN(0, 0),
92  },
93 };
94 
95 #define SPI_NUMOF ARRAY_SIZE(spi_config)
96 
98 #ifdef __cplusplus
99 }
100 #endif
101 
102 #endif /* PERIPH_CONF_H */
cfg_clock_32_1.h
Common clock configuration for the nRF52 based boards.
I2C_SPEED_NORMAL
@ I2C_SPEED_NORMAL
normal mode: ~100 kbit/s
Definition: i2c.h:177
GPIO_UNDEF
#define GPIO_UNDEF
Definition of a fitting UNDEF value.
Definition: periph_cpu_common.h:52
uart_conf_t
UART device configuration.
Definition: periph_cpu.h:166
uart_conf_t::dev
cc2538_uart_t * dev
pointer to the used UART device
Definition: periph_cpu.h:167
GPIO_PIN
#define GPIO_PIN(x, y)
Define a CPU specific GPIO pin generator macro.
Definition: periph_cpu.h:35
i2c_conf_t
I2C configuration options.
Definition: periph_cpu.h:128
spi_conf_t::dev
SPI_Type * dev
SPI device to use.
Definition: periph_cpu.h:465
spi_conf_t
SPI configuration structure type.
Definition: periph_cpu.h:273
i2c_conf_t::dev
I2C_TypeDef * dev
USART device used.
Definition: periph_cpu.h:247