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

Commit114fd72

Browse files
committed
variant(h7): add Nucleo-H745ZI-Q support
Fixes#2090Signed-off-by: Aymane Bahssain <aymane.bahssain@st.com>
1 parent60888f1 commit114fd72

File tree

8 files changed

+924
-3
lines changed

8 files changed

+924
-3
lines changed

‎README.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
115115
|:green_heart:| STM32H563ZI|[Nucleo H563ZI](https://www.st.com/en/evaluation-tools/nucleo-h563zi.html)|*2.6.0*||
116116
|:green_heart:| STM32H723ZG|[Nucleo H723ZG](https://www.st.com/en/evaluation-tools/nucleo-h723zg.html)|*2.4.0*||
117117
|: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|
118+
|:yellow_heart:| STM32H745ZI-Q|[Nucleo-H745ZI-Q](https://www.st.com/en/evaluation-tools/nucleo-h745zi-q.html)|**2.12.0**||
118119
|:green_heart:| STM32H753ZI|[Nucleo H753ZI](https://www.st.com/en/evaluation-tools/nucleo-h753zi.html)|*2.7.0*||
119120
|:green_heart:| STM32H7A3ZITxQ|[NUCLEO-H7A3ZI-Q](https://www.st.com/en/evaluation-tools/nucleo-h7a3zi-q.html)|*2.10.0*||
120121
|:green_heart:| STM32L496ZG|[Nucleo L496ZG](http://www.st.com/en/evaluation-tools/nucleo-l496zg.html)|*1.3.0*||

‎boards.txt‎

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,24 @@ Nucleo_144.menu.pnum.NUCLEO_H743ZI2.build.variant_h=variant_NUCLEO_H743ZI.h
257257
Nucleo_144.menu.pnum.NUCLEO_H743ZI2.openocd.target=stm32h7x
258258
Nucleo_144.menu.pnum.NUCLEO_H743ZI2.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H743.svd
259259

260+
# NUCLEO_H745ZI_Q board
261+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q=Nucleo H745ZI-Q
262+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.node=NODE_H743ZIQ
263+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.upload.maximum_size=2097152
264+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.upload.maximum_data_size=884736
265+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.mcu=cortex-m7
266+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.fpu=-mfpu=fpv4-sp-d16
267+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.float-abi=-mfloat-abi=hard
268+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.st_extra_flags=-D{build.product_line} {build.enable_usb} {build.xSerial} -DCORE_CM7
269+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.board=NUCLEO_H745ZI_Q
270+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.series=STM32H7xx
271+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.product_line=STM32H745xx
272+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.variant=STM32H7xx/H745Z(G-I)T_H755ZIT
273+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.build.variant_h=variant_NUCLEO_H745ZI_Q.h
274+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.openocd.target=stm32h7x
275+
Nucleo_144.menu.pnum.NUCLEO_H745ZI_Q.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H745_CM7.svd
276+
277+
260278
# NUCLEO_H753ZI board
261279
Nucleo_144.menu.pnum.NUCLEO_H753ZI=Nucleo H753ZI
262280
Nucleo_144.menu.pnum.NUCLEO_H753ZI.node=NODE_H753ZI
@@ -9830,6 +9848,15 @@ GenH7.menu.pnum.GENERIC_H745XIHX.build.product_line=STM32H745xx
98309848
GenH7.menu.pnum.GENERIC_H745XIHX.build.variant=STM32H7xx/H742X(G-I)H_H743X(G-I)H_H745X(G-I)H_H747X(G-I)H_H750XBH_H753XIH_H755XIH_H757XIH
98319849
GenH7.menu.pnum.GENERIC_H745XIHX.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H745_CM7.svd
98329850

9851+
# Generic H745ZITx
9852+
GenH7.menu.pnum.GENERIC_H745ZITX=Generic H745ZITx
9853+
GenH7.menu.pnum.GENERIC_H745ZITX.upload.maximum_size=2097152
9854+
GenH7.menu.pnum.GENERIC_H745ZITX.upload.maximum_data_size=884736
9855+
GenH7.menu.pnum.GENERIC_H745ZITX.build.board=GENERIC_H745ZITX
9856+
GenH7.menu.pnum.GENERIC_H745ZITX.build.product_line=STM32H745xx
9857+
GenH7.menu.pnum.GENERIC_H745ZITX.build.variant=STM32H7xx/H745Z(G-I)T_H755ZIT
9858+
GenH7.menu.pnum.GENERIC_H745ZITX.debug.svd_file={runtime.tools.STM32_SVD.path}/svd/STM32H7xx/STM32H745_CM7.svd
9859+
98339860
# Generic H747AGIx
98349861
GenH7.menu.pnum.GENERIC_H747AGIX=Generic H747AGIx
98359862
GenH7.menu.pnum.GENERIC_H747AGIX.upload.maximum_size=1048576

‎cmake/boards_db.cmake‎

Lines changed: 164 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81022,6 +81022,88 @@ target_compile_options(GENERIC_H745XIHX_xusb_HSFS INTERFACE
8102281022
"SHELL:-DUSE_USB_HS -DUSE_USB_HS_IN_FS"
8102381023
)
8102481024

81025+
# GENERIC_H745ZITX
81026+
# -----------------------------------------------------------------------------
81027+
81028+
set(GENERIC_H745ZITX_VARIANT_PATH "${CMAKE_CURRENT_LIST_DIR}/../variants/STM32H7xx/H745Z(G-I)T_H755ZIT")
81029+
set(GENERIC_H745ZITX_MAXSIZE 2097152)
81030+
set(GENERIC_H745ZITX_MAXDATASIZE 884736)
81031+
set(GENERIC_H745ZITX_MCU cortex-m7)
81032+
set(GENERIC_H745ZITX_FPCONF "-")
81033+
add_library(GENERIC_H745ZITX INTERFACE)
81034+
target_compile_options(GENERIC_H745ZITX INTERFACE
81035+
"SHELL:-DCORE_CM7 -DSTM32H745xx"
81036+
"SHELL:"
81037+
"SHELL:"
81038+
"SHELL:-mfpu=fpv4-sp-d16 -mfloat-abi=hard"
81039+
-mcpu=${GENERIC_H745ZITX_MCU}
81040+
)
81041+
target_compile_definitions(GENERIC_H745ZITX INTERFACE
81042+
"STM32H7xx"
81043+
"ARDUINO_GENERIC_H745ZITX"
81044+
"BOARD_NAME=\"GENERIC_H745ZITX\""
81045+
"BOARD_ID=GENERIC_H745ZITX"
81046+
"VARIANT_H=\"variant_generic.h\""
81047+
)
81048+
target_include_directories(GENERIC_H745ZITX INTERFACE
81049+
${CMAKE_CURRENT_LIST_DIR}/../system/STM32H7xx
81050+
${CMAKE_CURRENT_LIST_DIR}/../system/Drivers/STM32H7xx_HAL_Driver/Inc
81051+
${CMAKE_CURRENT_LIST_DIR}/../system/Drivers/STM32H7xx_HAL_Driver/Src
81052+
${CMAKE_CURRENT_LIST_DIR}/../system/Drivers/CMSIS/Device/ST/STM32H7xx/Include/
81053+
${CMAKE_CURRENT_LIST_DIR}/../system/Drivers/CMSIS/Device/ST/STM32H7xx/Source/Templates/gcc/
81054+
${GENERIC_H745ZITX_VARIANT_PATH}
81055+
)
81056+
81057+
target_link_options(GENERIC_H745ZITX INTERFACE
81058+
"LINKER:--default-script=${GENERIC_H745ZITX_VARIANT_PATH}/ldscript.ld"
81059+
"LINKER:--defsym=LD_FLASH_OFFSET=0x0"
81060+
"LINKER:--defsym=LD_MAX_SIZE=2097152"
81061+
"LINKER:--defsym=LD_MAX_DATA_SIZE=884736"
81062+
"SHELL:-mfpu=fpv4-sp-d16 -mfloat-abi=hard"
81063+
-mcpu=${GENERIC_H745ZITX_MCU}
81064+
)
81065+
81066+
add_library(GENERIC_H745ZITX_serial_disabled INTERFACE)
81067+
target_compile_options(GENERIC_H745ZITX_serial_disabled INTERFACE
81068+
"SHELL:"
81069+
)
81070+
add_library(GENERIC_H745ZITX_serial_generic INTERFACE)
81071+
target_compile_options(GENERIC_H745ZITX_serial_generic INTERFACE
81072+
"SHELL:-DHAL_UART_MODULE_ENABLED"
81073+
)
81074+
add_library(GENERIC_H745ZITX_serial_none INTERFACE)
81075+
target_compile_options(GENERIC_H745ZITX_serial_none INTERFACE
81076+
"SHELL:-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE"
81077+
)
81078+
add_library(GENERIC_H745ZITX_usb_CDC INTERFACE)
81079+
target_compile_options(GENERIC_H745ZITX_usb_CDC INTERFACE
81080+
"SHELL:-DUSBCON -DUSBD_VID=0x0483 -DUSBD_PID=0x5740 -DHAL_PCD_MODULE_ENABLED -DUSBD_USE_CDC -DDISABLE_GENERIC_SERIALUSB"
81081+
)
81082+
add_library(GENERIC_H745ZITX_usb_CDCgen INTERFACE)
81083+
target_compile_options(GENERIC_H745ZITX_usb_CDCgen INTERFACE
81084+
"SHELL:-DUSBCON -DUSBD_VID=0x0483 -DUSBD_PID=0x5740 -DHAL_PCD_MODULE_ENABLED -DUSBD_USE_CDC"
81085+
)
81086+
add_library(GENERIC_H745ZITX_usb_HID INTERFACE)
81087+
target_compile_options(GENERIC_H745ZITX_usb_HID INTERFACE
81088+
"SHELL:-DUSBCON -DUSBD_VID=0x0483 -DUSBD_PID=0x5740 -DHAL_PCD_MODULE_ENABLED -DUSBD_USE_HID_COMPOSITE"
81089+
)
81090+
add_library(GENERIC_H745ZITX_usb_none INTERFACE)
81091+
target_compile_options(GENERIC_H745ZITX_usb_none INTERFACE
81092+
"SHELL:"
81093+
)
81094+
add_library(GENERIC_H745ZITX_xusb_FS INTERFACE)
81095+
target_compile_options(GENERIC_H745ZITX_xusb_FS INTERFACE
81096+
"SHELL:"
81097+
)
81098+
add_library(GENERIC_H745ZITX_xusb_HS INTERFACE)
81099+
target_compile_options(GENERIC_H745ZITX_xusb_HS INTERFACE
81100+
"SHELL:-DUSE_USB_HS"
81101+
)
81102+
add_library(GENERIC_H745ZITX_xusb_HSFS INTERFACE)
81103+
target_compile_options(GENERIC_H745ZITX_xusb_HSFS INTERFACE
81104+
"SHELL:-DUSE_USB_HS -DUSE_USB_HS_IN_FS"
81105+
)
81106+
8102581107
# GENERIC_H747AGIX
8102681108
# -----------------------------------------------------------------------------
8102781109

@@ -112956,6 +113038,88 @@ target_compile_options(NUCLEO_H743ZI2_xusb_HSFS INTERFACE
112956113038
"SHELL:-DUSE_USB_HS -DUSE_USB_HS_IN_FS"
112957113039
)
112958113040

113041+
# NUCLEO_H745ZI_Q
113042+
# -----------------------------------------------------------------------------
113043+
113044+
set(NUCLEO_H745ZI_Q_VARIANT_PATH "${CMAKE_CURRENT_LIST_DIR}/../variants/STM32H7xx/H745Z(G-I)T_H755ZIT")
113045+
set(NUCLEO_H745ZI_Q_MAXSIZE 2097152)
113046+
set(NUCLEO_H745ZI_Q_MAXDATASIZE 884736)
113047+
set(NUCLEO_H745ZI_Q_MCU cortex-m7)
113048+
set(NUCLEO_H745ZI_Q_FPCONF "fpv4-sp-d16-hard")
113049+
add_library(NUCLEO_H745ZI_Q INTERFACE)
113050+
target_compile_options(NUCLEO_H745ZI_Q INTERFACE
113051+
"SHELL:-DSTM32H745xx -DCORE_CM7"
113052+
"SHELL:"
113053+
"SHELL:"
113054+
"SHELL:-mfpu=fpv4-sp-d16 -mfloat-abi=hard"
113055+
-mcpu=${NUCLEO_H745ZI_Q_MCU}
113056+
)
113057+
target_compile_definitions(NUCLEO_H745ZI_Q INTERFACE
113058+
"STM32H7xx"
113059+
"ARDUINO_NUCLEO_H745ZI_Q"
113060+
"BOARD_NAME=\"NUCLEO_H745ZI_Q\""
113061+
"BOARD_ID=NUCLEO_H745ZI_Q"
113062+
"VARIANT_H=\"variant_NUCLEO_H745ZI_Q.h\""
113063+
)
113064+
target_include_directories(NUCLEO_H745ZI_Q INTERFACE
113065+
${CMAKE_CURRENT_LIST_DIR}/../system/STM32H7xx
113066+
${CMAKE_CURRENT_LIST_DIR}/../system/Drivers/STM32H7xx_HAL_Driver/Inc
113067+
${CMAKE_CURRENT_LIST_DIR}/../system/Drivers/STM32H7xx_HAL_Driver/Src
113068+
${CMAKE_CURRENT_LIST_DIR}/../system/Drivers/CMSIS/Device/ST/STM32H7xx/Include/
113069+
${CMAKE_CURRENT_LIST_DIR}/../system/Drivers/CMSIS/Device/ST/STM32H7xx/Source/Templates/gcc/
113070+
${NUCLEO_H745ZI_Q_VARIANT_PATH}
113071+
)
113072+
113073+
target_link_options(NUCLEO_H745ZI_Q INTERFACE
113074+
"LINKER:--default-script=${NUCLEO_H745ZI_Q_VARIANT_PATH}/ldscript.ld"
113075+
"LINKER:--defsym=LD_FLASH_OFFSET=0x0"
113076+
"LINKER:--defsym=LD_MAX_SIZE=2097152"
113077+
"LINKER:--defsym=LD_MAX_DATA_SIZE=884736"
113078+
"SHELL:-mfpu=fpv4-sp-d16 -mfloat-abi=hard"
113079+
-mcpu=${NUCLEO_H745ZI_Q_MCU}
113080+
)
113081+
113082+
add_library(NUCLEO_H745ZI_Q_serial_disabled INTERFACE)
113083+
target_compile_options(NUCLEO_H745ZI_Q_serial_disabled INTERFACE
113084+
"SHELL:"
113085+
)
113086+
add_library(NUCLEO_H745ZI_Q_serial_generic INTERFACE)
113087+
target_compile_options(NUCLEO_H745ZI_Q_serial_generic INTERFACE
113088+
"SHELL:-DHAL_UART_MODULE_ENABLED"
113089+
)
113090+
add_library(NUCLEO_H745ZI_Q_serial_none INTERFACE)
113091+
target_compile_options(NUCLEO_H745ZI_Q_serial_none INTERFACE
113092+
"SHELL:-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE"
113093+
)
113094+
add_library(NUCLEO_H745ZI_Q_usb_CDC INTERFACE)
113095+
target_compile_options(NUCLEO_H745ZI_Q_usb_CDC INTERFACE
113096+
"SHELL:-DUSBCON -DUSBD_VID=0x0483 -DUSBD_PID=0x5740 -DHAL_PCD_MODULE_ENABLED -DUSBD_USE_CDC -DDISABLE_GENERIC_SERIALUSB"
113097+
)
113098+
add_library(NUCLEO_H745ZI_Q_usb_CDCgen INTERFACE)
113099+
target_compile_options(NUCLEO_H745ZI_Q_usb_CDCgen INTERFACE
113100+
"SHELL:-DUSBCON -DUSBD_VID=0x0483 -DUSBD_PID=0x5740 -DHAL_PCD_MODULE_ENABLED -DUSBD_USE_CDC"
113101+
)
113102+
add_library(NUCLEO_H745ZI_Q_usb_HID INTERFACE)
113103+
target_compile_options(NUCLEO_H745ZI_Q_usb_HID INTERFACE
113104+
"SHELL:-DUSBCON -DUSBD_VID=0x0483 -DUSBD_PID=0x5740 -DHAL_PCD_MODULE_ENABLED -DUSBD_USE_HID_COMPOSITE"
113105+
)
113106+
add_library(NUCLEO_H745ZI_Q_usb_none INTERFACE)
113107+
target_compile_options(NUCLEO_H745ZI_Q_usb_none INTERFACE
113108+
"SHELL:"
113109+
)
113110+
add_library(NUCLEO_H745ZI_Q_xusb_FS INTERFACE)
113111+
target_compile_options(NUCLEO_H745ZI_Q_xusb_FS INTERFACE
113112+
"SHELL:"
113113+
)
113114+
add_library(NUCLEO_H745ZI_Q_xusb_HS INTERFACE)
113115+
target_compile_options(NUCLEO_H745ZI_Q_xusb_HS INTERFACE
113116+
"SHELL:-DUSE_USB_HS"
113117+
)
113118+
add_library(NUCLEO_H745ZI_Q_xusb_HSFS INTERFACE)
113119+
target_compile_options(NUCLEO_H745ZI_Q_xusb_HSFS INTERFACE
113120+
"SHELL:-DUSE_USB_HS -DUSE_USB_HS_IN_FS"
113121+
)
113122+
112959113123
# NUCLEO_H753ZI
112960113124
# -----------------------------------------------------------------------------
112961113125

‎variants/STM32H7xx/H745Z(G-I)T_H755ZIT/CMakeLists.txt‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ add_library(variant_bin STATIC EXCLUDE_FROM_ALL
2222
generic_clock.c
2323
PeripheralPins.c
2424
variant_generic.cpp
25+
variant_NUCLEO_H745ZI_Q.cpp
2526
)
2627
target_link_libraries(variant_binPUBLIC variant_usage)
2728

‎variants/STM32H7xx/H745Z(G-I)T_H755ZIT/generic_clock.c‎

Lines changed: 50 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
*******************************************************************************
3-
* Copyright (c)2020-2021, STMicroelectronics
3+
* Copyright (c)2025, STMicroelectronics
44
* All rights reserved.
55
*
66
* This software component is licensed by ST under BSD 3-Clause license,
@@ -21,8 +21,55 @@
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+
25+
RCC_OscInitTypeDefRCC_OscInitStruct= {};
26+
RCC_ClkInitTypeDefRCC_ClkInitStruct= {};
27+
RCC_PeriphCLKInitTypeDefPeriphClkInitStruct= {};
28+
29+
/** Supply configuration update enable
30+
*/
31+
HAL_PWREx_ConfigSupply(PWR_DIRECT_SMPS_SUPPLY);
32+
33+
/** Configure the main internal regulator output voltage
34+
*/
35+
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE3);
36+
37+
while (!__HAL_PWR_GET_FLAG(PWR_FLAG_VOSRDY)) {}
38+
39+
/** Initializes the RCC Oscillators according to the specified parameters
40+
* in the RCC_OscInitTypeDef structure.
41+
*/
42+
RCC_OscInitStruct.OscillatorType=RCC_OSCILLATORTYPE_HSI48 |RCC_OSCILLATORTYPE_HSI;
43+
RCC_OscInitStruct.HSIState=RCC_HSI_DIV1;
44+
RCC_OscInitStruct.HSICalibrationValue=RCC_HSICALIBRATION_DEFAULT;
45+
RCC_OscInitStruct.HSI48State=RCC_HSI48_ON;
46+
RCC_OscInitStruct.PLL.PLLState=RCC_PLL_NONE;
47+
if (HAL_RCC_OscConfig(&RCC_OscInitStruct)!=HAL_OK) {
48+
Error_Handler();
49+
}
50+
51+
/** Initializes the CPU, AHB and APB buses clocks
52+
*/
53+
RCC_ClkInitStruct.ClockType=RCC_CLOCKTYPE_HCLK |RCC_CLOCKTYPE_SYSCLK
54+
|RCC_CLOCKTYPE_PCLK1 |RCC_CLOCKTYPE_PCLK2
55+
|RCC_CLOCKTYPE_D3PCLK1 |RCC_CLOCKTYPE_D1PCLK1;
56+
RCC_ClkInitStruct.SYSCLKSource=RCC_SYSCLKSOURCE_HSI;
57+
RCC_ClkInitStruct.SYSCLKDivider=RCC_SYSCLK_DIV1;
58+
RCC_ClkInitStruct.AHBCLKDivider=RCC_HCLK_DIV1;
59+
RCC_ClkInitStruct.APB3CLKDivider=RCC_APB3_DIV1;
60+
RCC_ClkInitStruct.APB1CLKDivider=RCC_APB1_DIV1;
61+
RCC_ClkInitStruct.APB2CLKDivider=RCC_APB2_DIV1;
62+
RCC_ClkInitStruct.APB4CLKDivider=RCC_APB4_DIV1;
63+
64+
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct,FLASH_LATENCY_1)!=HAL_OK) {
65+
Error_Handler();
66+
}
67+
68+
PeriphClkInitStruct.PeriphClockSelection=RCC_PERIPHCLK_USB;
69+
PeriphClkInitStruct.UsbClockSelection=RCC_USBCLKSOURCE_HSI48;
70+
if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct)!=HAL_OK) {
71+
Error_Handler();
72+
}
2673
}
2774

2875
#endif/* ARDUINO_GENERIC_* */

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp