Loading...
Searching...
No Matches
periph_conf.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2015 Rakendra Thapa <rakendrathapa@gmail.com>
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
19#ifndef PERIPH_CONF_H
20#define PERIPH_CONF_H
21
22#include "periph_cpu.h"
23#include "macros/units.h"
24
25#ifdef __cplusplus
26extern "C" {
27#endif
28
33#define CLK80 1
34#define CLK50 2
35#define CLK40 3
36#define CLK16 4
37#define CLK1 5
38#define CLOCK_SOURCE CLK40
39#define CLOCK_CORECLOCK MHZ(80)
46static const timer_conf_t timer_config[] = {
47 {
48 .dev = WTIMER0_BASE,
49 .max = 0xffffffff,
50 .irqn = Timer0A_IRQn,
51 .sysctl = SYSCTL_PERIPH_WTIMER0,
52 .intbase = INT_WTIMER0A,
53 .channels = 1
54 },
55 {
56 .dev = WTIMER1_BASE,
57 .max = 0xffffffff,
58 .irqn = Timer1A_IRQn,
59 .sysctl = SYSCTL_PERIPH_WTIMER1,
60 .intbase = INT_WTIMER1A,
61 .channels = 1
62 },
63};
64
65#define TIMER_NUMOF ARRAY_SIZE(timer_config)
66
67#define TIMER_0_ISR isr_wtimer0a
68#define TIMER_1_ISR isr_wtimer1a
75#define UART_NUMOF (1U)
76#define UART_IRQ_PRIO 1
77/* UART clock runs with 40MHz */
78#define UART_CLK ROM_SysCtlClockGet()
79/* UART 0 device configuration */
80#define UART_0_DEV UART0_BASE
81#define UART_0_CLK (40000000)
82#define UART_0_IRQ_CHAN UART0_IRQn
83#define UART_0_ISR isr_uart0
84/* UART 0 pin configuration */
85#define UART_0_PORT GPIOA
86#define UART_0_TX_PIN UART_PA1_U0TX
87#define UART_0_RX_PIN UART_PA0_U0RX
94#define ADC_NUMOF (12)
101static const spi_conf_t spi_confs[] = {
102 {
103 .ssi_sysctl = SYSCTL_PERIPH_SSI0,
104 .ssi_base = SSI0_BASE,
105 .gpio_sysctl = SYSCTL_PERIPH_GPIOA,
106 .gpio_port = GPIO_PORTA_BASE,
107 .pins = {
108 .clk = GPIO_PA2_SSI0CLK,
109 .fss = GPIO_PA3_SSI0FSS,
110 .rx = GPIO_PA4_SSI0RX,
111 .tx = GPIO_PA5_SSI0TX,
112 .mask = GPIO_PIN_2 | GPIO_PIN_3 | GPIO_PIN_4 | GPIO_PIN_5
113 }
114 },
115 {
116 .ssi_sysctl = SYSCTL_PERIPH_SSI1,
117 .ssi_base = SSI1_BASE,
118 .gpio_sysctl = SYSCTL_PERIPH_GPIOF,
119 .gpio_port = GPIO_PORTF_BASE,
120 .pins = {
121 .clk = GPIO_PF2_SSI1CLK,
122 .fss = GPIO_PF3_SSI1FSS,
123 .rx = GPIO_PF0_SSI1RX,
124 .tx = GPIO_PF1_SSI1TX,
125 .mask = GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_2 | GPIO_PIN_3
126 }
127 },
128 {
129 .ssi_sysctl = SYSCTL_PERIPH_SSI2,
130 .ssi_base = SSI2_BASE,
131 .gpio_sysctl = SYSCTL_PERIPH_GPIOB,
132 .gpio_port = GPIO_PORTB_BASE,
133 .pins = {
134 .clk = GPIO_PB4_SSI2CLK,
135 .fss = GPIO_PB5_SSI2FSS,
136 .rx = GPIO_PB6_SSI2RX,
137 .tx = GPIO_PB7_SSI2TX,
138 .mask = GPIO_PIN_4 | GPIO_PIN_5 | GPIO_PIN_6 | GPIO_PIN_7
139 }
140 },
141 {
142 .ssi_sysctl = SYSCTL_PERIPH_SSI3,
143 .ssi_base = SSI3_BASE,
144 .gpio_sysctl = SYSCTL_PERIPH_GPIOD,
145 .gpio_port = GPIO_PORTD_BASE,
146 .pins = {
147 .clk = GPIO_PD0_SSI3CLK,
148 .fss = GPIO_PD1_SSI3FSS,
149 .rx = GPIO_PD2_SSI3RX,
150 .tx = GPIO_PD3_SSI3TX,
151 .mask = GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_2 | GPIO_PIN_3
152 }
153 },
154};
155
156#define SPI_NUMOF ARRAY_SIZE(spi_confs)
159#ifdef __cplusplus
160}
161#endif
162
163#endif /* PERIPH_CONF_H */
SPI device configuration.
Definition periph_cpu.h:337
unsigned long ssi_sysctl
SSI device in sysctl.
Definition periph_cpu.h:132
Timer device configuration.
Definition periph_cpu.h:264
TC0_t * dev
Pointer to the used as Timer device.
Definition periph_cpu.h:265
Unit helper macros.