19#include "periph_cpu.h" 
   29#ifndef CLOCK_CORECLOCK 
   30#define CLOCK_CORECLOCK     MHZ(120) 
   38#define EXTERNAL_OSC32_SOURCE                    1 
   39#define ULTRA_LOW_POWER_INTERNAL_OSC_SOURCE      0 
   46#define USE_VREG_BUCK       (1) 
   56        .mclk           = &MCLK->APBAMASK.reg,
 
   57        .mclk_mask      = MCLK_APBAMASK_TC0 | MCLK_APBAMASK_TC1,
 
   58        .gclk_id        = TC0_GCLK_ID,
 
   60        .flags          = TC_CTRLA_MODE_COUNT32,
 
   65        .mclk           = &MCLK->APBBMASK.reg,
 
   66        .mclk_mask      = MCLK_APBBMASK_TC2 | MCLK_APBBMASK_TC3,
 
   67        .gclk_id        = TC2_GCLK_ID,
 
   69        .flags          = TC_CTRLA_MODE_COUNT32,
 
   74#define TIMER_0_CHANNELS    2 
   75#define TIMER_0_ISR         isr_tc0 
   78#define TIMER_1_CHANNELS    2 
   79#define TIMER_1_ISR         isr_tc2 
   81#define TIMER_NUMOF         ARRAY_SIZE(timer_config) 
  105#define ISR_CAN0            isr_can0 
  108#define ISR_CAN1            isr_can1 
  111#define CAN_NUMOF           ARRAY_SIZE(candev_conf) 
  120        .dev      = &SERCOM5->USART,
 
  130        .dev      = &SERCOM4->USART,
 
  133#ifdef MODULE_PERIPH_UART_HW_FC 
  139#ifdef MODULE_PERIPH_UART_HW_FC 
  148        .dev      = &SERCOM0->USART,
 
  151#ifdef MODULE_PERIPH_UART_HW_FC 
  157#ifdef MODULE_PERIPH_UART_HW_FC 
  166        .dev      = &SERCOM3->USART,
 
  178#define UART_0_ISR          isr_sercom5_2 
  179#define UART_0_ISR_TX       isr_sercom5_0 
  181#define UART_1_ISR          isr_sercom4_2 
  182#define UART_1_ISR_TX       isr_sercom4_0 
  184#define UART_2_ISR          isr_sercom0_2 
  185#define UART_2_ISR_TX       isr_sercom0_0 
  187#define UART_3_ISR          isr_sercom3_2 
  188#define UART_3_ISR_TX       isr_sercom3_0 
  190#define UART_NUMOF          ARRAY_SIZE(uart_config) 
  212        .chan = pwm_chan0_config,
 
  214        .gclk_src = SAM0_GCLK_48MHZ,
 
  219#define PWM_NUMOF           ARRAY_SIZE(pwm_config) 
  228        .dev      = &SERCOM1->SPI,
 
  238#ifdef MODULE_PERIPH_DMA 
  239        .tx_trigger = SERCOM1_DMAC_ID_TX,
 
  240        .rx_trigger = SERCOM1_DMAC_ID_RX,
 
  246#define SPI_NUMOF           ARRAY_SIZE(spi_config) 
  255        .dev      = &SERCOM2->I2CM,
 
  265#define I2C_NUMOF           ARRAY_SIZE(i2c_config) 
  273#define RTT_FREQUENCY       (32768U) 
  288        .device = &USB->DEVICE,
 
  300#define ADC_GCLK_SRC                        SAM0_GCLK_PERIPH     
  301#define ADC_PRESCALER                       ADC_CTRLA_PRESCALER_DIV8 
  303#define ADC_NEG_INPUT                       ADC_INPUTCTRL_MUXNEG(0x18u) 
  304#define ADC_REF_DEFAULT                     ADC_REFCTRL_REFSEL_INTVCC1 
  325#define ADC_NUMOF                           ARRAY_SIZE(adc_channels) 
  333#define DAC_CLOCK           SAM0_GCLK_TIMER 
  337#define DAC_VREF            DAC_CTRLB_REFSEL_VREFPU 
#define GPIO_PIN(x, y)
Define a CPU specific GPIO pin generator macro.
 
@ I2C_SPEED_NORMAL
normal mode: ~100 kbit/s
 
#define ARRAY_SIZE(a)
Calculate the number of elements in a static array.
 
@ UART_PAD_RX_1
select pad 1
 
@ I2C_FLAG_NONE
No flags set.
 
@ SPI_PAD_MISO_3
use pad 3 for MISO line
 
@ UART_FLAG_NONE
No flags set.
 
@ UART_PAD_TX_0_RTS_2_CTS_3
TX is pad 0, on top RTS on pad 2 and CTS on pad 3.
 
@ UART_PAD_TX_0
select pad 0
 
#define TCC_CONFIG(tim)
Static initializer for TCC timer configuration.
 
@ GPIO_MUX_H
select peripheral function H
 
@ GPIO_MUX_C
select peripheral function C
 
@ GPIO_MUX_F
select peripheral function F
 
@ SPI_PAD_MOSI_0_SCK_1
use pad 0 for MOSI, pad 1 for SCK
 
#define ADC0_INPUTCTRL_MUXPOS_PA04
Alias for AIN4.
 
#define ADC0_INPUTCTRL_MUXPOS_PA07
Alias for AIN7.
 
#define ADC0_INPUTCTRL_MUXPOS_PA10
Alias for AIN10.
 
#define ADC1_INPUTCTRL_MUXPOS_PB05
Alias for AIN7.
 
#define ADC1_INPUTCTRL_MUXPOS_PB04
Alias for AIN6.
 
#define ADC0_INPUTCTRL_MUXPOS_PB01
Alias for AIN13.
 
#define ADC0_INPUTCTRL_MUXPOS_PB03
Alias for AIN15.
 
#define ADC0_INPUTCTRL_MUXPOS_PB08
Alias for AIN2.
 
#define ADC0_INPUTCTRL_MUXPOS_PA11
Alias for AIN11.
 
#define ADC0_INPUTCTRL_MUXPOS_PB00
Alias for AIN12.
 
#define ADC1_INPUTCTRL_MUXPOS_PB07
Alias for AIN9.
 
#define ADC0_INPUTCTRL_MUXPOS_PA03
Alias for AIN1.
 
#define ADC0_INPUTCTRL_MUXPOS_PB09
Alias for AIN3.
 
#define SAM0_GCLK_TIMER
4-8 MHz clock for xTimer
 
#define ADC0_INPUTCTRL_MUXPOS_PA02
ADC pin aliases.
 
#define SAM0_GCLK_PERIPH
12-48 MHz (DFLL) clock
 
#define ADC1_INPUTCTRL_MUXPOS_PB06
Alias for AIN8.
 
ADC Channel Configuration.
 
ESP CAN device configuration.
 
Linux candev configuration.
 
I2C configuration structure.
 
PWM channel configuration data structure.
 
PWM device configuration.
 
USB peripheral parameters.
 
SPI device configuration.
 
Timer device configuration.
 
UART device configuration.