From 74cea9a3ff7695097a3f5a07fff5b6eb07a11565 Mon Sep 17 00:00:00 2001 From: Hauke Petersen Date: Fri, 11 Mar 2016 18:04:26 +0100 Subject: [PATCH] boards/nucleo-common: unified LED defines --- boards/nucleo-common/include/board_common.h | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/boards/nucleo-common/include/board_common.h b/boards/nucleo-common/include/board_common.h index 97f397e4ba..0aca63d094 100644 --- a/boards/nucleo-common/include/board_common.h +++ b/boards/nucleo-common/include/board_common.h @@ -34,12 +34,22 @@ extern "C" { */ #define LED0_PIN GPIO_PIN(PORT_A, 5) -#define LED_MASK GPIOA #define LED0_MASK (1 << 5) -#define LED0_ON (GPIOA->BRR = ~LED0_MASK) -#define LED0_OFF (GPIOA->OSRR = LED0_MASK) -#define LED0_TOGGLE (GPIOA->ODR ^= LED0_MASK) +#if defined(CPU_FAM_STM32F4) +#define LED_CREG BSRRH +#else +#define LED_CREG BRR +#endif +#if defined(CPU_FAM_STM32F3) || defined(CPU_FAM_STM32F4) || defined(CPU_FAM_STM32L1) +#define LED_SREG BSRRL +#else +#define LED_SREG BSRR +#endif + +#define LED0_ON (GPIOA->LED_SREG = LED0_MASK) +#define LED0_OFF (GPIOA->LED_CREG = LED0_MASK) +#define LED0_TOGGLE (GPIOA->ODR ^= LED0_MASK) /** @} */ /**