Loading...
Searching...
No Matches
periph_conf.h File Reference

Configuration of CPU peripherals for the STK3600 starter kit. More...

Detailed Description

Configuration of CPU peripherals for the STK3600 starter kit.

Author
Hauke Petersen hauke.nosp@m..pet.nosp@m.ersen.nosp@m.@fu-.nosp@m.berli.nosp@m.n.de
Bas Stottelaar basst.nosp@m.otte.nosp@m.laar@.nosp@m.gmai.nosp@m.l.com

Definition in file periph_conf.h.

#include "cpu.h"
#include "periph_cpu.h"
#include "em_cmu.h"
#include "usbdev_cfg_otg_fs.h"
+ Include dependency graph for periph_conf.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Clock configuration

#define CLOCK_HF   cmuSelect_HFXO
 
#define CLOCK_CORE_DIV   cmuClkDiv_1
 
#define CLOCK_LFA   cmuSelect_LFXO
 
#define CLOCK_LFB   cmuSelect_LFXO
 

ADC configuration

#define ADC_DEV_NUMOF   ARRAY_SIZE(adc_config)
 
#define ADC_NUMOF   ARRAY_SIZE(adc_channel_config)
 
static const adc_conf_t adc_config []
 
static const adc_chan_conf_t adc_channel_config []
 

DAC configuration

#define DAC_DEV_NUMOF   ARRAY_SIZE(dac_config)
 
#define DAC_NUMOF   ARRAY_SIZE(dac_channel_config)
 
static const dac_conf_t dac_config []
 
static const dac_chan_conf_t dac_channel_config []
 

I2C configuration

#define I2C_NUMOF   ARRAY_SIZE(i2c_config)
 
#define I2C_0_ISR   isr_i2c0
 
#define I2C_1_ISR   isr_i2c1
 
static const i2c_conf_t i2c_config []
 

PWM configuration

#define PWM_DEV_NUMOF   ARRAY_SIZE(pwm_config)
 
#define PWM_NUMOF   ARRAY_SIZE(pwm_channel_config)
 
static const pwm_chan_conf_t pwm_channel_config []
 
static const pwm_conf_t pwm_config []
 

RTT configuration

#define RTT_FREQUENCY   (1U) /* in Hz */
 

SPI configuration

#define SPI_NUMOF   ARRAY_SIZE(spi_config)
 
static const spi_dev_t spi_config []
 

Timer configuration

The implementation uses two timers in cascade mode.

#define TIMER_NUMOF   ARRAY_SIZE(timer_config)
 
#define TIMER_0_ISR   isr_timer1
 
#define TIMER_1_ISR   isr_letimer0
 
static const timer_conf_t timer_config []
 

UART configuration

#define UART_NUMOF   ARRAY_SIZE(uart_config)
 
#define UART_0_ISR_RX   isr_uart0_rx
 
#define UART_1_ISR_RX   isr_leuart0
 
static const uart_conf_t uart_config []
 

Macro Definition Documentation

◆ ADC_DEV_NUMOF

#define ADC_DEV_NUMOF   ARRAY_SIZE(adc_config)

Definition at line 76 of file periph_conf.h.

◆ ADC_NUMOF

#define ADC_NUMOF   ARRAY_SIZE(adc_channel_config)

Definition at line 77 of file periph_conf.h.

◆ CLOCK_CORE_DIV

#define CLOCK_CORE_DIV   cmuClkDiv_1

Definition at line 40 of file periph_conf.h.

◆ CLOCK_HF

#define CLOCK_HF   cmuSelect_HFXO

Definition at line 37 of file periph_conf.h.

◆ CLOCK_LFA

#define CLOCK_LFA   cmuSelect_LFXO

Definition at line 43 of file periph_conf.h.

◆ CLOCK_LFB

#define CLOCK_LFB   cmuSelect_LFXO

Definition at line 46 of file periph_conf.h.

◆ DAC_DEV_NUMOF

#define DAC_DEV_NUMOF   ARRAY_SIZE(dac_config)

Definition at line 99 of file periph_conf.h.

◆ DAC_NUMOF

#define DAC_NUMOF   ARRAY_SIZE(dac_channel_config)

Definition at line 100 of file periph_conf.h.

◆ I2C_0_ISR

#define I2C_0_ISR   isr_i2c0

Definition at line 129 of file periph_conf.h.

◆ I2C_1_ISR

#define I2C_1_ISR   isr_i2c1

Definition at line 130 of file periph_conf.h.

◆ I2C_NUMOF

#define I2C_NUMOF   ARRAY_SIZE(i2c_config)

Definition at line 128 of file periph_conf.h.

◆ PWM_DEV_NUMOF

#define PWM_DEV_NUMOF   ARRAY_SIZE(pwm_config)

Definition at line 155 of file periph_conf.h.

◆ PWM_NUMOF

#define PWM_NUMOF   ARRAY_SIZE(pwm_channel_config)

Definition at line 156 of file periph_conf.h.

◆ RTT_FREQUENCY

#define RTT_FREQUENCY   (1U) /* in Hz */

Definition at line 164 of file periph_conf.h.

◆ SPI_NUMOF

#define SPI_NUMOF   ARRAY_SIZE(spi_config)

Definition at line 193 of file periph_conf.h.

◆ TIMER_0_ISR

#define TIMER_0_ISR   isr_timer1

Definition at line 230 of file periph_conf.h.

◆ TIMER_1_ISR

#define TIMER_1_ISR   isr_letimer0

Definition at line 231 of file periph_conf.h.

◆ TIMER_NUMOF

#define TIMER_NUMOF   ARRAY_SIZE(timer_config)

Definition at line 229 of file periph_conf.h.

◆ UART_0_ISR_RX

#define UART_0_ISR_RX   isr_uart0_rx

Definition at line 258 of file periph_conf.h.

◆ UART_1_ISR_RX

#define UART_1_ISR_RX   isr_leuart0

Definition at line 259 of file periph_conf.h.

◆ UART_NUMOF

#define UART_NUMOF   ARRAY_SIZE(uart_config)

Definition at line 257 of file periph_conf.h.

Variable Documentation

◆ adc_channel_config

const adc_chan_conf_t adc_channel_config[]
static
Initial value:
= {
{
.dev = 0,
.input = adcSingleInputTemp,
.reference = adcRef1V25,
.acq_time = adcAcqTime8
},
{
.dev = 0,
.input = adcSingleInputVDDDiv3,
.reference = adcRef1V25,
.acq_time = adcAcqTime8
}
}

Definition at line 61 of file periph_conf.h.

◆ adc_config

const adc_conf_t adc_config[]
static
Initial value:
= {
{
.dev = ADC0,
.cmu = cmuClock_ADC0,
}
}

Definition at line 54 of file periph_conf.h.

◆ dac_channel_config

const dac_chan_conf_t dac_channel_config[]
static
Initial value:
= {
{
.dev = 0,
.index = 1,
}
}

Definition at line 92 of file periph_conf.h.

◆ dac_config

const dac_conf_t dac_config[]
static
Initial value:
= {
{
.dev = DAC0,
.ref = dacRefVDD,
.cmu = cmuClock_DAC0,
}
}

Definition at line 84 of file periph_conf.h.

◆ i2c_config

const i2c_conf_t i2c_config[]
static
Initial value:
= {
{
.dev = I2C0,
.sda_pin = GPIO_PIN(PD, 6),
.scl_pin = GPIO_PIN(PD, 7),
.loc = I2C_ROUTE_LOCATION_LOC1,
.cmu = cmuClock_I2C0,
.irq = I2C0_IRQn,
},
{
.dev = I2C1,
.sda_pin = GPIO_PIN(PC, 4),
.scl_pin = GPIO_PIN(PC, 5),
.loc = I2C_ROUTE_LOCATION_LOC0,
.cmu = cmuClock_I2C1,
.irq = I2C1_IRQn,
}
}
#define GPIO_PIN(x, y)
Define a CPU specific GPIO pin generator macro.
Definition periph_cpu.h:46
@ I2C_SPEED_NORMAL
normal mode: ~100 kbit/s
Definition periph_cpu.h:278
@ PC
port C
@ PD
port D

Definition at line 107 of file periph_conf.h.

◆ pwm_channel_config

const pwm_chan_conf_t pwm_channel_config[]
static
Initial value:
= {
{
.index = 2,
.pin = GPIO_PIN(PE, 2),
.loc = TIMER_ROUTE_LOCATION_LOC1
}
}

Definition at line 137 of file periph_conf.h.

◆ pwm_config

const pwm_conf_t pwm_config[]
static
Initial value:
= {
{
.dev = TIMER3,
.cmu = cmuClock_TIMER3,
.irq = TIMER3_IRQn,
.channels = 1,
.channel = pwm_channel_config
}
}

Definition at line 145 of file periph_conf.h.

◆ spi_config

const spi_dev_t spi_config[]
static
Initial value:
= {
{
.dev = USART1,
.mosi_pin = GPIO_PIN(PD, 0),
.miso_pin = GPIO_PIN(PD, 1),
.clk_pin = GPIO_PIN(PD, 2),
.loc = USART_ROUTE_LOCATION_LOC1,
.cmu = cmuClock_USART1,
.irq = USART1_RX_IRQn
},
{
.dev = USART2,
.mosi_pin = GPIO_UNDEF,
.miso_pin = GPIO_PIN(PC, 3),
.clk_pin = GPIO_PIN(PC, 4),
.loc = USART_ROUTE_LOCATION_LOC0,
.cmu = cmuClock_USART2,
.irq = USART2_RX_IRQn
}
}
#define GPIO_UNDEF
Definition of a fitting UNDEF value.

Definition at line 172 of file periph_conf.h.

◆ timer_config

const timer_conf_t timer_config[]
static
Initial value:
= {
{
.prescaler = {
.dev = TIMER0,
.cmu = cmuClock_TIMER0
},
.timer = {
.dev = TIMER1,
.cmu = cmuClock_TIMER1
},
.irq = TIMER1_IRQn,
.channel_numof = 3
},
{
.prescaler = {
.dev = NULL,
.cmu = cmuClock_LETIMER0
},
.timer = {
.dev = LETIMER0,
.cmu = cmuClock_LETIMER0
},
.irq = LETIMER0_IRQn,
.channel_numof = 2
}
}

Definition at line 202 of file periph_conf.h.

◆ uart_config

const uart_conf_t uart_config[]
static
Initial value:
= {
{
.dev = UART0,
.rx_pin = GPIO_PIN(PE, 1),
.tx_pin = GPIO_PIN(PE, 0),
.loc = UART_ROUTE_LOCATION_LOC1,
.cmu = cmuClock_UART0,
.irq = UART0_RX_IRQn
},
{
.dev = LEUART0,
.rx_pin = GPIO_PIN(PD, 5),
.tx_pin = GPIO_PIN(PD, 4),
.loc = LEUART_ROUTE_LOCATION_LOC0,
.cmu = cmuClock_LEUART0,
.irq = LEUART0_IRQn
}
}
#define UART0
UART0 register bank.

Definition at line 238 of file periph_conf.h.