Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit7902338

Browse files
committed
[variant] Add Generic L5xx and Nucleo L552ZE-Q
Supersedestm32duino#1256Signed-off-by: Frederic Pillon <frederic.pillon@st.com>
1 parentbd55b5e commit7902338

File tree

6 files changed

+841
-2
lines changed

6 files changed

+841
-2
lines changed

‎README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
6161
-[Generic STM32H7 boards](#generic-stm32h7-boards)
6262
-[Generic STM32L0 boards](#generic-stm32l0-boards)
6363
-[Generic STM32L4 boards](#generic-stm32l4-boards)
64+
-[Generic STM32L5 boards](#generic-stm32l5-boards)
6465
-[3D printer boards](#3d-printer-boards)
6566
-[LoRa boards](#lora-boards)
6667
-[Electronic Speed Controller boards](#electronic-speed-controller-boards)
@@ -82,6 +83,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
8283
|:green_heart:| STM32L496ZG-P|[Nucleo L496ZG-P](http://www.st.com/en/evaluation-tools/nucleo-l496zg-p.html)|*1.3.0*||
8384
|:green_heart:| STM32L4R5ZI|[Nucleo L4R5ZI](http://www.st.com/en/evaluation-tools/nucleo-l4r5zi.html)|*1.4.0*||
8485
|:green_heart:| STM32L4R5ZI-P|[Nucleo L4R5ZI-P](http://www.st.com/en/evaluation-tools/nucleo-l4r5zi-p.html)|*1.4.0*||
86+
|:yellow_heart:| STM32L552ZE-Q|[Nucleo L552ZE-Q](https://www.st.com/en/evaluation-tools/nucleo-l552ze-q.html)|**2.0.0**||
8587
|:green_heart:| STM32H743ZI|[Nucleo H743ZI(2)](https://www.st.com/en/evaluation-tools/nucleo-h743zi.html)|*1.5.0*| Nucleo H743ZI2 since 1.6.0|
8688

8789
###[Nucleo 64](https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-nucleo-boards.html) boards
@@ -299,6 +301,13 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
299301
|:yellow_heart:| STM32L4S7ZITx| Generic Board|**2.0.0**||
300302
|:yellow_heart:| STM32L4S9ZIJx| Generic Board|**2.0.0**||
301303

304+
###Generic STM32L5 boards
305+
306+
| Status| Device(s)| Name| Release| Notes|
307+
| :----:| :-------:| ----| :-----:| :----|
308+
|:yellow_heart:| STM32L552ZC-Q<br>STM32L552ZE-Q| Generic Board|**2.0.0**||
309+
|:yellow_heart:| STM32L562ZE-Q| Generic Board|**2.0.0**||
310+
302311
###3D printer boards
303312

304313
| Status| Device(s)| Name| Release| Notes|

‎boards.txt

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,19 @@ Nucleo_144.menu.pnum.NUCLEO_L4R5ZI_P.build.product_line=STM32L4R5xx
167167
Nucleo_144.menu.pnum.NUCLEO_L4R5ZI_P.build.variant=STM32L4xx/L4R5ZITxP
168168
Nucleo_144.menu.pnum.NUCLEO_L4R5ZI_P.build.cmsis_lib_gcc=arm_cortexM4lf_math
169169

170+
# NUCLEO_L552ZE-Q board
171+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q=Nucleo L552ZE-Q
172+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.node=NODE_L552ZE
173+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.upload.maximum_size=524288
174+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.upload.maximum_data_size=196608
175+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.mcu=cortex-m33
176+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
177+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.board=NUCLEO_L552ZE_Q
178+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.series=STM32L5xx
179+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.product_line=STM32L552xx
180+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.variant=STM32L5xx/L552Z(C-E)TxQ_L562ZETxQ
181+
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.cmsis_lib_gcc=arm_ARMv8MMLlfsp_math
182+
170183
# Upload menu
171184
Nucleo_144.menu.upload_method.MassStorage=Mass Storage
172185
Nucleo_144.menu.upload_method.MassStorage.upload.protocol=
@@ -2980,6 +2993,58 @@ GenL4.menu.upload_method.dfuMethod.upload.options=-g
29802993
GenL4.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
29812994

29822995
################################################################################
2996+
# Generic L5
2997+
GenL5.name=Generic STM32L5 series
2998+
2999+
GenL5.build.core=arduino
3000+
GenL5.build.board=GenL5
3001+
GenL5.build.extra_flags=-D{build.product_line} {build.enable_usb} {build.xSerial}
3002+
GenL5.build.mcu=cortex-m33
3003+
GenL5.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
3004+
GenL5.build.series=STM32L5xx
3005+
GenL5.build.cmsis_lib_gcc=arm_ARMv8MMLlfsp_math
3006+
3007+
# Generic L552ZCTxQ
3008+
GenL5.menu.pnum.GENERIC_L552ZCTXQ=Generic L552ZCTxQ
3009+
GenL5.menu.pnum.GENERIC_L552ZCTXQ.upload.maximum_size=262144
3010+
GenL5.menu.pnum.GENERIC_L552ZCTXQ.upload.maximum_data_size=196608
3011+
GenL5.menu.pnum.GENERIC_L552ZCTXQ.build.board=GENERIC_L552ZCTXQ
3012+
GenL5.menu.pnum.GENERIC_L552ZCTXQ.build.product_line=STM32L552xx
3013+
GenL5.menu.pnum.GENERIC_L552ZCTXQ.build.variant=STM32L5xx/L552Z(C-E)TxQ_L562ZETxQ
3014+
3015+
# Generic L552ZETxQ
3016+
GenL5.menu.pnum.GENERIC_L552ZETXQ=Generic L552ZETxQ
3017+
GenL5.menu.pnum.GENERIC_L552ZETXQ.upload.maximum_size=524288
3018+
GenL5.menu.pnum.GENERIC_L552ZETXQ.upload.maximum_data_size=196608
3019+
GenL5.menu.pnum.GENERIC_L552ZETXQ.build.board=GENERIC_L552ZETXQ
3020+
GenL5.menu.pnum.GENERIC_L552ZETXQ.build.product_line=STM32L552xx
3021+
GenL5.menu.pnum.GENERIC_L552ZETXQ.build.variant=STM32L5xx/L552Z(C-E)TxQ_L562ZETxQ
3022+
3023+
# Generic L562ZETxQ
3024+
GenL5.menu.pnum.GENERIC_L562ZETXQ=Generic L562ZETxQ
3025+
GenL5.menu.pnum.GENERIC_L562ZETXQ.upload.maximum_size=524288
3026+
GenL5.menu.pnum.GENERIC_L562ZETXQ.upload.maximum_data_size=196608
3027+
GenL5.menu.pnum.GENERIC_L562ZETXQ.build.board=GENERIC_L562ZETXQ
3028+
GenL5.menu.pnum.GENERIC_L562ZETXQ.build.product_line=STM32L562xx
3029+
GenL5.menu.pnum.GENERIC_L562ZETXQ.build.variant=STM32L5xx/L552Z(C-E)TxQ_L562ZETxQ
3030+
3031+
# Upload menu
3032+
GenL5.menu.upload_method.swdMethod=STM32CubeProgrammer (SWD)
3033+
GenL5.menu.upload_method.swdMethod.upload.protocol=0
3034+
GenL5.menu.upload_method.swdMethod.upload.options=-g
3035+
GenL5.menu.upload_method.swdMethod.upload.tool=stm32CubeProg
3036+
3037+
GenL5.menu.upload_method.serialMethod=STM32CubeProgrammer (Serial)
3038+
GenL5.menu.upload_method.serialMethod.upload.protocol=1
3039+
GenL5.menu.upload_method.serialMethod.upload.options={serial.port.file} -s
3040+
GenL5.menu.upload_method.serialMethod.upload.tool=stm32CubeProg
3041+
3042+
GenL5.menu.upload_method.dfuMethod=STM32CubeProgrammer (DFU)
3043+
GenL5.menu.upload_method.dfuMethod.upload.protocol=2
3044+
GenL5.menu.upload_method.dfuMethod.upload.options=-g
3045+
GenL5.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
3046+
3047+
#################################################################################
29833048
# Electronic Speed Controller boards
29843049

29853050
ESC_board.name=Electronic speed controllers
@@ -3590,6 +3655,12 @@ GenL4.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
35903655
GenL4.menu.xserial.disabled=Disabled (no Serial support)
35913656
GenL4.menu.xserial.disabled.build.xSerial=
35923657

3658+
GenL5.menu.xserial.generic=Enabled (generic 'Serial')
3659+
GenL5.menu.xserial.none=Enabled (no generic 'Serial')
3660+
GenL5.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
3661+
GenL5.menu.xserial.disabled=Disabled (no Serial support)
3662+
GenL5.menu.xserial.disabled.build.xSerial=
3663+
35933664
ESC_board.menu.xserial.generic=Enabled (generic 'Serial')
35943665
ESC_board.menu.xserial.none=Enabled (no generic 'Serial')
35953666
ESC_board.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
@@ -3797,6 +3868,19 @@ GenL4.menu.xusb.HS.build.usb_speed=-DUSE_USB_HS
37973868
GenL4.menu.xusb.HSFS=High Speed in Full Speed mode
37983869
GenL4.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS
37993870

3871+
GenL5.menu.usb.none=None
3872+
GenL5.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
3873+
GenL5.menu.usb.CDCgen.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC
3874+
GenL5.menu.usb.CDC=CDC (no generic 'Serial')
3875+
GenL5.menu.usb.CDC.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC -DDISABLE_GENERIC_SERIALUSB
3876+
GenL5.menu.usb.HID=HID (keyboard and mouse)
3877+
GenL5.menu.usb.HID.build.enable_usb={build.usb_flags} -DUSBD_USE_HID_COMPOSITE
3878+
GenL5.menu.xusb.FS=Low/Full Speed
3879+
GenL5.menu.xusb.HS=High Speed
3880+
GenL5.menu.xusb.HS.build.usb_speed=-DUSE_USB_HS
3881+
GenL5.menu.xusb.HSFS=High Speed in Full Speed mode
3882+
GenL5.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS
3883+
38003884
3dprinter.menu.usb.none=None
38013885
3dprinter.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
38023886
3dprinter.menu.usb.CDCgen.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC
@@ -4135,6 +4219,25 @@ GenL4.menu.opt.o3lto.build.flags.optimize=-O3 -flto
41354219
GenL4.menu.opt.ogstd=Debug (-g)
41364220
GenL4.menu.opt.ogstd.build.flags.optimize=-g -Og
41374221

4222+
GenL5.menu.opt.osstd=Smallest (-Os default)
4223+
GenL5.menu.opt.osstd.build.flags.optimize=-Os
4224+
GenL5.menu.opt.oslto=Smallest (-Os) with LTO
4225+
GenL5.menu.opt.oslto.build.flags.optimize=-Os -flto
4226+
GenL5.menu.opt.o1std=Fast (-O1)
4227+
GenL5.menu.opt.o1std.build.flags.optimize=-O1
4228+
GenL5.menu.opt.o1lto=Fast (-O1) with LTO
4229+
GenL5.menu.opt.o1lto.build.flags.optimize=-O1 -flto
4230+
GenL5.menu.opt.o2std=Faster (-O2)
4231+
GenL5.menu.opt.o2std.build.flags.optimize=-O2
4232+
GenL5.menu.opt.o2lto=Faster (-O2) with LTO
4233+
GenL5.menu.opt.o2lto.build.flags.optimize=-O2 -flto
4234+
GenL5.menu.opt.o3std=Fastest (-O3)
4235+
GenL5.menu.opt.o3std.build.flags.optimize=-O3
4236+
GenL5.menu.opt.o3lto=Fastest (-O3) with LTO
4237+
GenL5.menu.opt.o3lto.build.flags.optimize=-O3 -flto
4238+
GenL5.menu.opt.ogstd=Debug (-g)
4239+
GenL5.menu.opt.ogstd.build.flags.optimize=-g -Og
4240+
41384241
ESC_board.menu.opt.osstd=Smallest (-Os default)
41394242
ESC_board.menu.opt.oslto=Smallest (-Os) with LTO
41404243
ESC_board.menu.opt.oslto.build.flags.optimize=-Os -flto
@@ -4404,6 +4507,16 @@ GenL4.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float
44044507
GenL4.menu.rtlib.full=Newlib Standard
44054508
GenL4.menu.rtlib.full.build.flags.ldspecs=
44064509

4510+
GenL5.menu.rtlib.nano=Newlib Nano (default)
4511+
GenL5.menu.rtlib.nanofp=Newlib Nano + Float Printf
4512+
GenL5.menu.rtlib.nanofp.build.flags.ldspecs=--specs=nano.specs -u _printf_float
4513+
GenL5.menu.rtlib.nanofs=Newlib Nano + Float Scanf
4514+
GenL5.menu.rtlib.nanofs.build.flags.ldspecs=--specs=nano.specs -u _scanf_float
4515+
GenL5.menu.rtlib.nanofps=Newlib Nano + Float Printf/Scanf
4516+
GenL5.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float -u _scanf_float
4517+
GenL5.menu.rtlib.full=Newlib Standard
4518+
GenL5.menu.rtlib.full.build.flags.ldspecs=
4519+
44074520
ESC_board.menu.rtlib.nano=Newlib Nano (default)
44084521
ESC_board.menu.rtlib.nanofp=Newlib Nano + Float Printf
44094522
ESC_board.menu.rtlib.nanofp.build.flags.ldspecs=--specs=nano.specs -u _printf_float

‎variants/STM32L5xx/L552Z(C-E)TxQ_L562ZETxQ/generic_clock.c

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,42 @@
2121
*/
2222
WEAKvoidSystemClock_Config(void)
2323
{
24-
/* SystemClock_Config can be generated by STM32CubeMX */
25-
#warning "SystemClock_Config() is empty. Default clock at reset is used."
24+
RCC_OscInitTypeDefRCC_OscInitStruct= {};
25+
RCC_ClkInitTypeDefRCC_ClkInitStruct= {};
26+
27+
/** Configure the main internal regulator output voltage
28+
*/
29+
if (HAL_PWREx_ControlVoltageScaling(PWR_REGULATOR_VOLTAGE_SCALE0)!=HAL_OK) {
30+
Error_Handler();
31+
}
32+
/** Initializes the RCC Oscillators according to the specified parameters
33+
* in the RCC_OscInitTypeDef structure.
34+
*/
35+
RCC_OscInitStruct.OscillatorType=RCC_OSCILLATORTYPE_HSI;
36+
RCC_OscInitStruct.HSIState=RCC_HSI_ON;
37+
RCC_OscInitStruct.HSICalibrationValue=RCC_HSICALIBRATION_DEFAULT;
38+
RCC_OscInitStruct.PLL.PLLState=RCC_PLL_ON;
39+
RCC_OscInitStruct.PLL.PLLSource=RCC_PLLSOURCE_HSI;
40+
RCC_OscInitStruct.PLL.PLLM=4;
41+
RCC_OscInitStruct.PLL.PLLN=55;
42+
RCC_OscInitStruct.PLL.PLLP=RCC_PLLP_DIV7;
43+
RCC_OscInitStruct.PLL.PLLQ=RCC_PLLQ_DIV2;
44+
RCC_OscInitStruct.PLL.PLLR=RCC_PLLR_DIV2;
45+
if (HAL_RCC_OscConfig(&RCC_OscInitStruct)!=HAL_OK) {
46+
Error_Handler();
47+
}
48+
/** Initializes the CPU, AHB and APB buses clocks
49+
*/
50+
RCC_ClkInitStruct.ClockType=RCC_CLOCKTYPE_HCLK |RCC_CLOCKTYPE_SYSCLK
51+
|RCC_CLOCKTYPE_PCLK1 |RCC_CLOCKTYPE_PCLK2;
52+
RCC_ClkInitStruct.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK;
53+
RCC_ClkInitStruct.AHBCLKDivider=RCC_SYSCLK_DIV1;
54+
RCC_ClkInitStruct.APB1CLKDivider=RCC_HCLK_DIV1;
55+
RCC_ClkInitStruct.APB2CLKDivider=RCC_HCLK_DIV1;
56+
57+
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct,FLASH_LATENCY_5)!=HAL_OK) {
58+
Error_Handler();
59+
}
2660
}
2761

2862
#endif/* ARDUINO_GENERIC_* */

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp