24#ifndef CONFIG_BOARD_HAS_LSE
25#define CONFIG_BOARD_HAS_LSE 1
29#ifndef CONFIG_BOARD_HAS_HSE
30#define CONFIG_BOARD_HAS_HSE 1
33#include "periph_cpu.h"
45#define RTT_FREQUENCY (16384)
70#if !defined(BOARD_BLACKPILL_STM32F103C8) \
71 && !defined(BOARD_BLACKPILL_STM32F103CB) \
72 && !defined(MODULE_PERIPH_PWM)
78#define ADC_NUMOF ARRAY_SIZE(adc_config)
93#define DMA_0_ISR isr_dma1_channel2
94#define DMA_1_ISR isr_dma1_channel3
95#define DMA_2_ISR isr_dma1_channel4
96#define DMA_3_ISR isr_dma1_channel5
97#define DMA_4_ISR isr_dma1_channel7
99#define DMA_NUMOF ARRAY_SIZE(dma_config)
110 .rcc_mask = RCC_APB1ENR_TIM2EN,
117 .rcc_mask = RCC_APB1ENR_TIM3EN,
124 .rcc_mask = RCC_APB1ENR_TIM4EN,
130#define TIMER_0_ISR isr_tim2
131#define TIMER_1_ISR isr_tim3
132#define TIMER_2_ISR isr_tim4
134#define TIMER_NUMOF ARRAY_SIZE(timer_config)
146 .rcc_mask = RCC_APB1ENR_TIM4EN,
153#ifndef MODULE_PERIPH_PWM
157 .rcc_mask = RCC_APB1ENR_TIM3EN,
161 .remap = AFIO_MAPR_TIM3_REMAP_1,
167#ifndef MODULE_PERIPH_UART
171 .rcc_mask = RCC_APB2ENR_TIM1EN,
180#define QDEC_NUMOF ARRAY_SIZE(qdec_config)
190 .rcc_mask = RCC_APB2ENR_USART1EN,
195#ifdef MODULE_PERIPH_DMA
202 .rcc_mask = RCC_APB1ENR_USART2EN,
207#ifdef MODULE_PERIPH_DMA
214 .rcc_mask = RCC_APB1ENR_USART3EN,
219#ifdef MODULE_PERIPH_DMA
226#define UART_0_ISR (isr_usart1)
227#define UART_1_ISR (isr_usart2)
228#define UART_2_ISR (isr_usart3)
230#define UART_NUMOF ARRAY_SIZE(uart_config)
245 .rcc_mask = RCC_APB1ENR_I2C1EN,
255 .rcc_mask = RCC_APB1ENR_I2C2EN,
261#define I2C_0_ISR isr_i2c1_ev
262#define I2C_1_ISR isr_i2c2_ev
264#define I2C_NUMOF ARRAY_SIZE(i2c_config)
274 .rcc_mask = RCC_APB1ENR_TIM3EN,
276 .remap = AFIO_MAPR_TIM3_REMAP_1,
280#if !defined(BOARD_BLACKPILL_STM32F103C8) \
281 && !defined(BOARD_BLACKPILL_STM32F103CB)
294#define PWM_NUMOF ARRAY_SIZE(pwm_config)
308 .rccmask = RCC_APB1ENR_SPI2EN,
310#ifdef MODULE_PERIPH_DMA
317#ifndef MODULE_PERIPH_ADC
324 .rccmask = RCC_APB2ENR_SPI1EN,
326#ifdef MODULE_PERIPH_DMA
336#define SPI_NUMOF ARRAY_SIZE(spi_config)
344 .base_addr = (uintptr_t)USB,
345 .rcc_mask = RCC_APB1ENR_USBEN,
346 .irqn = USB_LP_CAN1_RX0_IRQn,
358#define USBDEV_ISR isr_usb_lp_can1_rx0
363#define USBDEV_NUMOF ARRAY_SIZE(stm32_usbdev_fs_config)
#define GPIO_PIN(x, y)
Define a CPU specific GPIO pin generator macro.
#define GPIO_UNDEF
Definition of a fitting UNDEF value.
@ I2C_SPEED_NORMAL
normal mode: ~100 kbit/s
static const stm32_usbdev_fs_config_t stm32_usbdev_fs_config[]
USB device FS configuration.
#define DMA_CHAN_CONFIG_UNSUPPORTED
DMA channel/trigger configuration for DMA peripherals without channel/trigger filtering such as the s...
@ GPIO_AF_UNDEF
an UNDEF value definition, e.g.
@ GPIO_AF_OUT_PP
alternate function output - push-pull
@ APB1
Advanced Peripheral Bus 1.
@ APB2
Advanced Peripheral Bus 2.
ADC device configuration.
I2C configuration structure.
PWM device configuration.
Quadrature decoder configuration struct.
SPI device configuration.
stm32 USB device FS configuration
Timer device configuration.
UART device configuration.