boards/feather-m0/include/periph_conf.h¶
Configuration of CPU peripherals for Adafruit Feather M0.
-
CLOCK_USE_PLL
¶ 1
(1)
-
CLOCK_PLL_MUL
¶ 1
(47U) /* must be >= 31 & <= 95 */
-
CLOCK_PLL_DIV
¶ 1
(1U) /* adjust to your needs */
-
CLOCK_CORECLOCK
¶ 1
(((CLOCK_PLL_MUL + 1) * 1000000U) / CLOCK_PLL_DIV)
-
TIMER_NUMOF
¶ 1
(2U)
-
TIMER_0_EN
¶ 1
1
-
TIMER_1_EN
¶ 1
1
-
TIMER_0_DEV
¶ 1
TC3->COUNT16
-
TIMER_0_CHANNELS
¶ 1
2
-
TIMER_0_MAX_VALUE
¶ 1
(0xffff)
-
TIMER_0_ISR
¶ 1
isr_tc3
-
TIMER_1_DEV
¶ 1
TC4->COUNT32
-
TIMER_1_CHANNELS
¶ 1
2
-
TIMER_1_MAX_VALUE
¶ 1
(0xffffffff)
-
TIMER_1_ISR
¶ 1
isr_tc4
-
UART_0_ISR
¶ 1
isr_sercom0
-
UART_NUMOF
¶ 1
(sizeof(uart_config) / sizeof(uart_config[0]))
-
const uart_conf_t
uart_config
()¶ 1 2 3 4 5 6 7 8 9 10 11 12
= { { .dev = &SERCOM0->USART, .rx_pin = GPIO_PIN(PA, 11), .tx_pin = GPIO_PIN(PA, 10), .mux = GPIO_MUX_C, .rx_pad = UART_PAD_RX_3, .tx_pad = UART_PAD_TX_2, .flags = UART_FLAG_NONE, .gclk_src = GCLK_CLKCTRL_GEN_GCLK0, } }
-
PWM_0_EN
¶ 1
1
-
PWM_1_EN
¶ 1
1
-
PWM_MAX_CHANNELS
¶ 1
2
-
PWM_0_CHANNELS
¶ 1
PWM_MAX_CHANNELS
-
PWM_1_CHANNELS
¶ 1
PWM_MAX_CHANNELS
-
PWM_NUMOF
¶ 1
(2U)
-
const pwm_conf_t
pwm_config
()¶ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
= { {TCC0, { { GPIO_UNDEF, (gpio_mux_t)0, 0 }, { GPIO_PIN(PA, 7), GPIO_MUX_E, 1 }, }}, {TCC2, { { GPIO_PIN(PA, 16), GPIO_MUX_E, 0 }, { GPIO_UNDEF, (gpio_mux_t)0, 1 }, }}, }
-
ADC_0_EN
¶ 1
1
-
ADC_MAX_CHANNELS
¶ 1
14
-
ADC_0_DEV
¶ 1
ADC
-
ADC_0_IRQ
¶ 1
ADC_IRQn
-
ADC_0_CLK_SOURCE
¶ 1
0 /* GCLK_GENERATOR_0 */
-
ADC_0_PRESCALER
¶ 1
ADC_CTRLB_PRESCALER_DIV512
-
ADC_0_NEG_INPUT
¶ 1
ADC_INPUTCTRL_MUXNEG_GND
-
ADC_0_GAIN_FACTOR_DEFAULT
¶ 1
ADC_INPUTCTRL_GAIN_1X
-
ADC_0_REF_DEFAULT
¶ 1
ADC_REFCTRL_REFSEL_INT1V
-
ADC_0_CHANNELS
¶ 1
(6U)
-
ADC_NUMOF
¶ 1
ADC_0_CHANNELS
-
const adc_conf_chan_t
adc_channels
()¶ 1 2 3 4 5 6 7 8 9
= { { GPIO_PIN(PA, 2), ADC_INPUTCTRL_MUXPOS_PIN0 }, { GPIO_PIN(PB, 8), ADC_INPUTCTRL_MUXPOS_PIN2 }, { GPIO_PIN(PB, 9), ADC_INPUTCTRL_MUXPOS_PIN3 }, { GPIO_PIN(PA, 4), ADC_INPUTCTRL_MUXPOS_PIN4 }, { GPIO_PIN(PA, 5), ADC_INPUTCTRL_MUXPOS_PIN5 }, { GPIO_PIN(PB, 2), ADC_INPUTCTRL_MUXPOS_PIN10 }, }
-
SPI_NUMOF
¶ 1
(sizeof(spi_config) / sizeof(spi_config[0]))
-
const spi_conf_t
spi_config
()¶ 1 2 3 4 5 6 7 8 9 10 11 12 13
= { { .dev = &SERCOM4->SPI, .miso_pin = GPIO_PIN(PA, 12), .mosi_pin = GPIO_PIN(PB, 10), .clk_pin = GPIO_PIN(PB, 11), .miso_mux = GPIO_MUX_D, .mosi_mux = GPIO_MUX_D, .clk_mux = GPIO_MUX_D, .miso_pad = SPI_PAD_MISO_0, .mosi_pad = SPI_PAD_MOSI_2_SCK_3 } }
-
I2C_NUMOF
¶ 1
(sizeof(i2c_config) / sizeof(i2c_config[0]))
-
const i2c_conf_t
i2c_config
()¶ 1 2 3 4 5 6 7 8 9 10 11
= { { .dev = &(SERCOM3->I2CM), .speed = I2C_SPEED_NORMAL, .scl_pin = GPIO_PIN(PA, 23), .sda_pin = GPIO_PIN(PA, 22), .mux = GPIO_MUX_C, .gclk_src = GCLK_CLKCTRL_GEN_GCLK0, .flags = I2C_FLAG_NONE } }
-
RTC_NUMOF
¶ 1
(1U)
-
RTC_DEV
¶ 1
RTC->MODE2
-
RTT_NUMOF
¶ 1
(1U)
-
RTT_DEV
¶ 1
RTC->MODE0
-
RTT_IRQ
¶ 1
RTC_IRQn
-
RTT_IRQ_PRIO
¶ 1
10
-
RTT_ISR
¶ 1
isr_rtc
-
RTT_MAX_VALUE
¶ 1
(0xffffffff)
-
RTT_FREQUENCY
¶ 1
(32768U) /* in Hz. For changes see `rtt.c` */
-
RTT_RUNSTDBY
¶ 1
(1) /* Keep RTT running in sleep states */