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
26 extern "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)
46 static 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)
101 static 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 */
static const timer_conf_t timer_config[]
All timers on board.
Definition: periph_conf.h:40
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.