Skip to content

Commit b013d99

Browse files
committed
Support new board NUCLEO_L552ZE-Q
Signed-off-by: Francois Ramu <[email protected]>
1 parent 433a0a6 commit b013d99

File tree

6 files changed

+22
-10
lines changed

6 files changed

+22
-10
lines changed

Diff for: cores/arduino/stm32/backup.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ static inline void setBackupRegister(uint32_t index, uint32_t value)
125125
LL_RTC_BKP_SetRegister(BKP, index, value);
126126
#elif defined(STM32G0xx)
127127
LL_RTC_BKP_SetRegister(TAMP, index, value);
128-
#elif defined(STM32G4xx)
128+
#elif defined(STM32G4xx) || defined(STM32L5xx)
129129
LL_RTC_BKP_SetRegister(RTC, index, value);
130130
#else
131131
#ifdef ENABLE_BACKUP_SUPPORT
@@ -143,7 +143,7 @@ static inline uint32_t getBackupRegister(uint32_t index)
143143
return LL_RTC_BKP_GetRegister(BKP, index);
144144
#elif defined(STM32G0xx)
145145
return LL_RTC_BKP_GetRegister(TAMP, index);
146-
#elif defined(STM32G4xx)
146+
#elif defined(STM32G4xx) || defined(STM32L5xx)
147147
return LL_RTC_BKP_GetRegister(RTC, index);
148148
#else
149149
#ifdef ENABLE_BACKUP_SUPPORT

Diff for: cores/arduino/stm32/stm32_def.h

+2
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,8 @@
4646
#include "stm32l1xx.h"
4747
#elif defined(STM32L4xx)
4848
#include "stm32l4xx.h"
49+
#elif defined(STM32L5xx)
50+
#include "stm32l5xx.h"
4951
#elif defined(STM32MP1xx)
5052
#include "stm32mp1xx.h"
5153
#elif defined(STM32WBxx)

Diff for: cores/arduino/stm32/timer.h

+11-4
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,10 @@ extern "C" {
3737
#endif
3838

3939
#if defined(TIM1_BASE) && !defined(TIM1_IRQn)
40-
#if defined(STM32F0xx) || defined(STM32G0xx)
40+
#if defined(STM32L5xx)
41+
#define TIM1_IRQn TIM1_UP_IRQn
42+
#define TIM1_IRQHandler TIM1_UP_IRQHandler
43+
#elif defined(STM32F0xx) || defined(STM32G0xx)
4144
#define TIM1_IRQn TIM1_BRK_UP_TRG_COM_IRQn
4245
#define TIM1_IRQHandler TIM1_BRK_UP_TRG_COM_IRQHandler
4346
#elif defined(STM32F1xx) ||defined(STM32G4xx)
@@ -63,17 +66,19 @@ extern "C" {
6366
#define TIM1_IRQHandler TIM1_UP_IRQHandler
6467
#endif
6568
#endif
69+
6670
#if defined(TIM6_BASE) && !defined(TIM6_IRQn)
6771
#if defined(DAC_BASE) || defined(DAC1_BASE)
6872
#if defined(STM32G0xx)
6973
#define TIM6_IRQn TIM6_DAC_LPTIM1_IRQn
7074
#define TIM6_IRQHandler TIM6_DAC_LPTIM1_IRQHandler
71-
#elif !defined(STM32F1xx) && !defined(STM32L1xx) && !defined(STM32MP1xx)
75+
#elif !defined(STM32F1xx) && !defined(STM32L1xx) && !defined(STM32L5xx) && !defined(STM32MP1xx)
7276
#define TIM6_IRQn TIM6_DAC_IRQn
73-
#define TIM6_IRQHandler TIM6_DAC_IRQHandler
77+
#define TIM6_IRQHandler TIM2_DAC_IRQHandler
7478
#endif
7579
#endif
7680
#endif
81+
7782
#if defined(TIM7_BASE) && !defined(TIM7_IRQn)
7883
#if defined(STM32G0xx) && defined(LPTIM2_BASE)
7984
#define TIM7_IRQn TIM7_LPTIM2_IRQn
@@ -89,11 +94,13 @@ extern "C" {
8994
|| defined(STM32H7xx)
9095
#define TIM8_IRQn TIM8_UP_TIM13_IRQn
9196
#define TIM8_IRQHandler TIM8_UP_TIM13_IRQHandler
92-
#elif defined(STM32F3xx) || defined(STM32G4xx) || defined(STM32L4xx) || defined(STM32MP1xx)
97+
#elif defined(STM32F3xx) || defined(STM32G4xx) || defined(STM32L4xx)\
98+
|| defined(STM32L5xx) || defined(STM32MP1xx)
9399
#define TIM8_IRQn TIM8_UP_IRQn
94100
#define TIM8_IRQHandler TIM8_UP_IRQHandler
95101
#endif
96102
#endif
103+
97104
#if defined(TIM9_BASE) && !defined(TIM9_IRQn)
98105
#if defined(STM32F1xx) || defined(STM32F2xx) ||defined(STM32F4xx) || defined(STM32F7xx)
99106
#define TIM9_IRQn TIM1_BRK_TIM9_IRQn

Diff for: libraries/SrcWrapper/src/stm32/analog.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -842,8 +842,8 @@ uint16_t adc_read_value(PinName pin, uint32_t resolution)
842842
#endif
843843
#if !defined(STM32F1xx) && !defined(STM32F2xx) && !defined(STM32F3xx) && \
844844
!defined(STM32F4xx) && !defined(STM32F7xx) && !defined(STM32G4xx) && \
845-
!defined(STM32H7xx) && !defined(STM32L4xx) && !defined(STM32MP1xx) && \
846-
!defined(STM32WBxx)
845+
!defined(STM32H7xx) && !defined(STM32L4xx) && !defined(STM32L5xx) && \
846+
!defined(STM32MP1xx) && !defined(STM32WBxx)
847847
AdcHandle.Init.LowPowerAutoPowerOff = DISABLE; /* ADC automatically powers-off after a conversion and automatically wakes-up when a new conversion is triggered */
848848
#endif
849849
#ifdef ADC_CHANNELS_BANK_A
@@ -913,7 +913,7 @@ uint16_t adc_read_value(PinName pin, uint32_t resolution)
913913

914914
AdcChannelConf.Channel = channel; /* Specifies the channel to configure into ADC */
915915

916-
#if defined(STM32L4xx) || defined(STM32WBxx)
916+
#if defined(STM32L4xx) || defined(STM32L5xx) || defined(STM32WBxx)
917917
if (!IS_ADC_CHANNEL(&AdcHandle, AdcChannelConf.Channel)) {
918918
#elif defined(STM32G4xx)
919919
if (!IS_ADC_CHANNEL(&AdcHandle, AdcChannelConf.Channel)) {

Diff for: libraries/SrcWrapper/src/stm32/interrupt.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ static gpio_irq_conf_str gpio_irq_conf[NB_EXTI] = {
7171
{.irqnb = EXTI4_15_IRQn, .callback = NULL}, //GPIO_PIN_13
7272
{.irqnb = EXTI4_15_IRQn, .callback = NULL}, //GPIO_PIN_14
7373
{.irqnb = EXTI4_15_IRQn, .callback = NULL} //GPIO_PIN_15
74-
#elif defined (STM32MP1xx)
74+
#elif defined (STM32MP1xx) || defined (STM32L5xx)
7575
{.irqnb = EXTI0_IRQn, .callback = NULL}, //GPIO_PIN_0
7676
{.irqnb = EXTI1_IRQn, .callback = NULL}, //GPIO_PIN_1
7777
{.irqnb = EXTI2_IRQn, .callback = NULL}, //GPIO_PIN_2

Diff for: libraries/SrcWrapper/src/stm32/system_stm32yyxx.c

+3
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,9 @@
3636
#ifdef STM32L4xx
3737
#include "system_stm32l4xx.c"
3838
#endif
39+
#ifdef STM32L5xx
40+
#include "system_stm32l5xx.c"
41+
#endif
3942
#ifdef STM32MP1xx
4043
#include "system_stm32mp1xx.c"
4144
#endif

0 commit comments

Comments
 (0)