Skip to content

Commit c789b9e

Browse files
authored
Merge pull request stm32duino#378 from fpistm/Cube_update
Update STM32F1xx and STM32L0xx
2 parents 63a062b + 8bf7f8b commit c789b9e

File tree

236 files changed

+121527
-82444
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

236 files changed

+121527
-82444
lines changed

cores/arduino/stm32/LL/stm32yyxx_ll_usb.c

+3
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@
1010
#ifdef STM32F7xx
1111
#include "stm32f7xx_ll_usb.c"
1212
#endif
13+
#ifdef STM32L0xx
14+
#include "stm32l0xx_ll_usb.c"
15+
#endif
1316
#ifdef STM32L4xx
1417
#include "stm32l4xx_ll_usb.c"
1518
#endif

cores/arduino/stm32/LL/stm32yyxx_ll_usb.h

+3
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313
#ifdef STM32F7xx
1414
#include "stm32f7xx_ll_usb.h"
1515
#endif
16+
#ifdef STM32L0xx
17+
#include "stm32l0xx_ll_usb.h"
18+
#endif
1619
#ifdef STM32L4xx
1720
#include "stm32l4xx_ll_usb.h"
1821
#endif

cores/arduino/stm32/stm32_def_build.h

+8
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,14 @@
172172
#define CMSIS_STARTUP_FILE "startup_stm32f777xx.s"
173173
#elif defined(STM32F779xx)
174174
#define CMSIS_STARTUP_FILE "startup_stm32f779xx.s"
175+
#elif defined(STM32L010x4)
176+
#define CMSIS_STARTUP_FILE "startup_stm32l010x4.s"
177+
#elif defined(STM32L010x6)
178+
#define CMSIS_STARTUP_FILE "startup_stm32l010x6.s"
179+
#elif defined(STM32L010x8)
180+
#define CMSIS_STARTUP_FILE "startup_stm32l010x8.s"
181+
#elif defined(STM32L010xB)
182+
#define CMSIS_STARTUP_FILE "startup_stm32l010xb.s"
175183
#elif defined(STM32L011xx)
176184
#define CMSIS_STARTUP_FILE "startup_stm32l011xx.s"
177185
#elif defined(STM32L021xx)

cores/arduino/stm32/twi.c

+15
Original file line numberDiff line numberDiff line change
@@ -524,15 +524,25 @@ void HAL_I2C_AddrCallback(I2C_HandleTypeDef *hi2c, uint8_t TransferDirection, ui
524524
if(obj->i2c_onSlaveTransmit != NULL) {
525525
obj->i2c_onSlaveTransmit();
526526
}
527+
#if defined(STM32L0xx)
528+
HAL_I2C_Slave_Seq_Transmit_IT(hi2c, (uint8_t *) obj->i2cTxRxBuffer,
529+
obj->i2cTxRxBufferSize, I2C_LAST_FRAME);
530+
#else
527531
HAL_I2C_Slave_Sequential_Transmit_IT(hi2c, (uint8_t *) obj->i2cTxRxBuffer,
528532
obj->i2cTxRxBufferSize, I2C_LAST_FRAME);
533+
#endif
529534
} else {
530535
obj->slaveRxNbData = 0;
531536
obj->slaveMode = SLAVE_MODE_RECEIVE;
532537
/* We don't know in advance how many bytes will be sent by master so
533538
* we'll fetch one by one until master ends the sequence */
539+
#if defined(STM32L0xx)
540+
HAL_I2C_Slave_Seq_Receive_IT(hi2c, (uint8_t *) &(obj->i2cTxRxBuffer[obj->slaveRxNbData]),
541+
1, I2C_NEXT_FRAME);
542+
#else
534543
HAL_I2C_Slave_Sequential_Receive_IT(hi2c, (uint8_t *) &(obj->i2cTxRxBuffer[obj->slaveRxNbData]),
535544
1, I2C_NEXT_FRAME);
545+
#endif
536546
}
537547
}
538548
}
@@ -577,8 +587,13 @@ void HAL_I2C_SlaveRxCpltCallback(I2C_HandleTypeDef *hi2c)
577587
}
578588
/* Restart interrupt mode for next Byte */
579589
if(obj->slaveMode == SLAVE_MODE_RECEIVE) {
590+
#if defined(STM32L0xx)
591+
HAL_I2C_Slave_Seq_Receive_IT(hi2c, (uint8_t *) &(obj->i2cTxRxBuffer[obj->slaveRxNbData]),
592+
1, I2C_NEXT_FRAME);
593+
#else
580594
HAL_I2C_Slave_Sequential_Receive_IT(hi2c, (uint8_t *) &(obj->i2cTxRxBuffer[obj->slaveRxNbData]),
581595
1, I2C_NEXT_FRAME);
596+
#endif
582597
}
583598
}
584599

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f100xb.h

+2
Original file line numberDiff line numberDiff line change
@@ -6124,6 +6124,8 @@ typedef struct
61246124
((INSTANCE) == TIM4) || \
61256125
((INSTANCE) == TIM15))
61266126

6127+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
6128+
61276129
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
61286130
(((INSTANCE) == TIM1) || \
61296131
((INSTANCE) == TIM2) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f100xe.h

+2
Original file line numberDiff line numberDiff line change
@@ -6689,6 +6689,8 @@ typedef struct
66896689
((INSTANCE) == TIM12) || \
66906690
((INSTANCE) == TIM15))
66916691

6692+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
6693+
66926694
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
66936695
(((INSTANCE) == TIM1) || \
66946696
((INSTANCE) == TIM2) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f101x6.h

+2
Original file line numberDiff line numberDiff line change
@@ -5576,6 +5576,8 @@ typedef struct
55765576
(((INSTANCE) == TIM2) || \
55775577
((INSTANCE) == TIM3))
55785578

5579+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
5580+
55795581
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
55805582
(((INSTANCE) == TIM2) || \
55815583
((INSTANCE) == TIM3))

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f101xb.h

+2
Original file line numberDiff line numberDiff line change
@@ -5685,6 +5685,8 @@ typedef struct
56855685
((INSTANCE) == TIM3) || \
56865686
((INSTANCE) == TIM4))
56875687

5688+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
5689+
56885690
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
56895691
(((INSTANCE) == TIM2) || \
56905692
((INSTANCE) == TIM3) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f101xe.h

+2
Original file line numberDiff line numberDiff line change
@@ -6658,6 +6658,8 @@ typedef struct
66586658
((INSTANCE) == TIM4) || \
66596659
((INSTANCE) == TIM5))
66606660

6661+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
6662+
66616663
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
66626664
(((INSTANCE) == TIM2) || \
66636665
((INSTANCE) == TIM3) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f101xg.h

+2
Original file line numberDiff line numberDiff line change
@@ -6812,6 +6812,8 @@ typedef struct
68126812
((INSTANCE) == TIM5) || \
68136813
((INSTANCE) == TIM12))
68146814

6815+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
6816+
68156817
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
68166818
(((INSTANCE) == TIM2) || \
68176819
((INSTANCE) == TIM3) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f102x6.h

+2
Original file line numberDiff line numberDiff line change
@@ -6695,6 +6695,8 @@ typedef struct
66956695
(((INSTANCE) == TIM2) || \
66966696
((INSTANCE) == TIM3))
66976697

6698+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
6699+
66986700
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
66996701
(((INSTANCE) == TIM2) || \
67006702
((INSTANCE) == TIM3))

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f102xb.h

+2
Original file line numberDiff line numberDiff line change
@@ -6795,6 +6795,8 @@ typedef struct
67956795
((INSTANCE) == TIM3) || \
67966796
((INSTANCE) == TIM4))
67976797

6798+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
6799+
67986800
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
67996801
(((INSTANCE) == TIM2) || \
68006802
((INSTANCE) == TIM3) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103x6.h

+2
Original file line numberDiff line numberDiff line change
@@ -10318,6 +10318,8 @@ typedef struct
1031810318
((INSTANCE) == TIM2) || \
1031910319
((INSTANCE) == TIM3))
1032010320

10321+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
10322+
1032110323
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
1032210324
(((INSTANCE) == TIM1) || \
1032310325
((INSTANCE) == TIM2) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h

+2
Original file line numberDiff line numberDiff line change
@@ -10427,6 +10427,8 @@ typedef struct
1042710427
((INSTANCE) == TIM3) || \
1042810428
((INSTANCE) == TIM4))
1042910429

10430+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
10431+
1043010432
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
1043110433
(((INSTANCE) == TIM1) || \
1043210434
((INSTANCE) == TIM2) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xe.h

+2
Original file line numberDiff line numberDiff line change
@@ -11500,6 +11500,8 @@ typedef struct
1150011500
((INSTANCE) == TIM4) || \
1150111501
((INSTANCE) == TIM5))
1150211502

11503+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
11504+
1150311505
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
1150411506
(((INSTANCE) == TIM1) || \
1150511507
((INSTANCE) == TIM8) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xg.h

+2
Original file line numberDiff line numberDiff line change
@@ -11658,6 +11658,8 @@ typedef struct
1165811658
((INSTANCE) == TIM5) || \
1165911659
((INSTANCE) == TIM12))
1166011660

11661+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
11662+
1166111663
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
1166211664
(((INSTANCE) == TIM1) || \
1166311665
((INSTANCE) == TIM8) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f105xc.h

+2
Original file line numberDiff line numberDiff line change
@@ -14505,6 +14505,8 @@ typedef struct
1450514505
((INSTANCE) == TIM4) || \
1450614506
((INSTANCE) == TIM5))
1450714507

14508+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
14509+
1450814510
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
1450914511
(((INSTANCE) == TIM1) || \
1451014512
((INSTANCE) == TIM2) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f107xc.h

+2
Original file line numberDiff line numberDiff line change
@@ -15416,6 +15416,8 @@ typedef struct
1541615416
((INSTANCE) == TIM4) || \
1541715417
((INSTANCE) == TIM5))
1541815418

15419+
#define IS_TIM_SYNCHRO_INSTANCE(INSTANCE) IS_TIM_MASTER_INSTANCE(INSTANCE)
15420+
1541915421
#define IS_TIM_DMABURST_INSTANCE(INSTANCE)\
1542015422
(((INSTANCE) == TIM1) || \
1542115423
((INSTANCE) == TIM2) || \

system/Drivers/CMSIS/Device/ST/STM32F1xx/Release_Notes.html

+24-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
1+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
22
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"><head>
33

44

@@ -294,7 +294,29 @@ <h1 style="margin-bottom: 18pt; text-align: center;" align="center"><span style=
294294
<tr>
295295
<td style="padding: 0cm;" valign="top">
296296
<span style="font-family: &quot;Times New Roman&quot;;"></span>
297-
<h2 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;"><a name="History"></a><span style="font-size: 12pt; color: white;">Update History</span></h2><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 180px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V4.2.0 / 31-March-2017 <o:p></o:p></span></h3>
297+
<h2 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;"><a name="History"></a><span style="font-size: 12pt; color: white;">Update History</span></h2><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 180px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V4.3.0 / 09-October-2018 <o:p></o:p></span></h3>
298+
299+
300+
301+
302+
303+
304+
305+
306+
307+
308+
309+
310+
311+
312+
313+
314+
315+
316+
317+
318+
<p class="MsoNormal" style="margin: 4.5pt 0cm 4.5pt 18pt;"><b style=""><u><span style="font-size: 10pt; font-family: Verdana; color: black;">Main
319+
Changes</span></u></b></p><ul><li class="MsoNormal" style="margin-top: 4.5pt; margin-bottom: 4.5pt; color: black;"><span style="font-family: Verdana,sans-serif; font-size: 10pt;">Add missing IS_TIM_SYNCHRO_INSTANCE macro definition&nbsp;</span><span style="font-family: Verdana,sans-serif; font-size: 10pt;">to check TIM SYNCHRO feature instance support.</span></li></ul><h3 style="background: rgb(51, 102, 255) none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial; margin-right: 500pt; width: 180px;"><span style="font-size: 10pt; font-family: Arial; color: white;">V4.2.0 / 31-March-2017 <o:p></o:p></span></h3>
298320

299321

300322

0 commit comments

Comments
 (0)