diff --git a/boards/nucleo-f070/Makefile.features b/boards/nucleo-f070/Makefile.features index 67092097f3..5942339b26 100644 --- a/boards/nucleo-f070/Makefile.features +++ b/boards/nucleo-f070/Makefile.features @@ -1,6 +1,8 @@ # Put defined MCU peripherals here (in alphabetical order) +FEATURES_PROVIDED += periph_adc FEATURES_PROVIDED += periph_cpuid FEATURES_PROVIDED += periph_gpio +FEATURES_PROVIDED += periph_pwm FEATURES_PROVIDED += periph_rtc FEATURES_PROVIDED += periph_timer FEATURES_PROVIDED += periph_uart diff --git a/boards/nucleo-f070/include/periph_conf.h b/boards/nucleo-f070/include/periph_conf.h index a6775d15e2..8b68825eb0 100644 --- a/boards/nucleo-f070/include/periph_conf.h +++ b/boards/nucleo-f070/include/periph_conf.h @@ -49,15 +49,32 @@ extern "C" { */ static const timer_conf_t timer_config[] = { { - .dev = TIM3, - .max = 0xffffffff, - .rcc_mask = RCC_APB1ENR_TIM3EN, + .dev = TIM14, + .max = 0x0000ffff, + .rcc_mask = RCC_APB1ENR_TIM14EN, .bus = APB1, - .irqn = TIM3_IRQn + .irqn = TIM14_IRQn + }, + { + .dev = TIM16, + .max = 0x0000ffff, + .rcc_mask = RCC_APB2ENR_TIM16EN, + .bus = APB2, + .irqn = TIM16_IRQn + }, + { + .dev = TIM17, + .max = 0x0000ffff, + .rcc_mask = RCC_APB2ENR_TIM17EN, + .bus = APB2, + .irqn = TIM17_IRQn } }; -#define TIMER_0_ISR isr_tim3 +#define TIMER_0_ISR isr_tim14 +#define TIMER_1_ISR isr_tim16 +#define TIMER_2_ISR isr_tim17 + #define TIMER_NUMOF (sizeof(timer_config) / sizeof(timer_config[0])) /** @} */ @@ -77,6 +94,16 @@ static const uart_conf_t uart_config[] = { .bus = APB1, .irqn = USART2_IRQn }, + { + .dev = USART1, + .rcc_mask = RCC_APB2ENR_USART1EN, + .rx_pin = GPIO_PIN(PORT_A, 10), + .tx_pin = GPIO_PIN(PORT_A, 9), + .rx_af = GPIO_AF1, + .tx_af = GPIO_AF1, + .bus = APB2, + .irqn = USART1_IRQn + }, { .dev = USART3, .rcc_mask = RCC_APB1ENR_USART3EN, @@ -90,11 +117,42 @@ static const uart_conf_t uart_config[] = { }; #define UART_0_ISR (isr_usart2) -#define UART_1_ISR (isr_usart3_8) +#define UART_1_ISR (isr_usart1) +#define UART_2_ISR (isr_usart3_8) #define UART_NUMOF (sizeof(uart_config) / sizeof(uart_config[0])) /** @} */ +/** + * @brief PWM configuration + * @{ + */ +static const pwm_conf_t pwm_config[] = { + { + .dev = TIM3, + .rcc_mask = RCC_APB1ENR_TIM3EN, + .chan = { { .pin = GPIO_PIN(PORT_B, 4) /* D5 */, .cc_chan = 0 }, + { .pin = GPIO_PIN(PORT_B, 5) /* D4 */, .cc_chan = 1 }, + { .pin = GPIO_UNDEF, .cc_chan = 0 }, + { .pin = GPIO_UNDEF, .cc_chan = 0 } }, + .af = GPIO_AF1, + .bus = APB1 + }, + { + .dev = TIM15, + .rcc_mask = RCC_APB2ENR_TIM15EN, + .chan = { { .pin = GPIO_PIN(PORT_B, 14), .cc_chan = 0 }, + { .pin = GPIO_PIN(PORT_B, 15), .cc_chan = 1 }, + { .pin = GPIO_UNDEF, .cc_chan = 0 }, + { .pin = GPIO_UNDEF, .cc_chan = 0 } }, + .af = GPIO_AF1, + .bus = APB2 + } +}; + +#define PWM_NUMOF (sizeof(pwm_config) / sizeof(pwm_config[0])) +/** @} */ + /** * @brief ADC configuration * @{ @@ -111,7 +169,6 @@ static const uart_conf_t uart_config[] = { #define ADC_NUMOF (6) /** @} */ - /** * @brief DAC configuration * @{