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

Commit7526c47

Browse files
shreyask21fpistm
andcommitted
variants(F7): add generic F723I(C-E)(K-T)_F730I8K_F733IE(K-T)
Signed-off-by: Shreyas Kulkarni <shreyaskulkarni202@gmail.com>Co-authored-by: Frederic Pillon <frederic.pillon@st.com>
1 parent586319c commit7526c47

File tree

4 files changed

+300
-6
lines changed

4 files changed

+300
-6
lines changed

‎README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -383,8 +383,12 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
383383
| :----:| :-------:| ----| :-----:| :----|
384384
|:green_heart:| STM32F722RC<br>STM32F722RE| Generic Board|*2.3.0*||
385385
|:green_heart:| STM32F722ZC<br>STM32F722ZE| Generic Board|*2.4.0*||
386-
|:green_heart:| STM32F730R8<br>STM32F732RE| Generic Board|*2.3.0*||
386+
|:yellow_heart:| STM32F723IC<br>STM32F723IE| Generic Board|**2.7.0**||
387+
|:yellow_heart:| STM32F730I8K| Generic Board|**2.7.0**||
388+
|:green_heart:| STM32F730R8| Generic Board|*2.3.0*||
389+
|:green_heart:| STM32F732RE| Generic Board|*2.3.0*||
387390
|:green_heart:| STM32F732ZE| Generic Board|*2.4.0*||
391+
|:yellow_heart:| STM32F733IE<br>| Generic Board|**2.7.0**||
388392
|:green_heart:| STM32F745ZE<br>STM32F745ZG| Generic Board|*2.0.0*||
389393
|:green_heart:| STM32F746BE<br>STM32F746BG<br>STM32F746NE<br>STM32F746NG| Generic Board|*2.0.0*||
390394
|:green_heart:| STM32F746ZE<br>STM32F746ZG| Generic Board|*2.0.0*||

‎boards.txt

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4628,6 +4628,46 @@ GenF7.menu.pnum.GENERIC_F722ZETX.build.board=GENERIC_F722ZETX
46284628
GenF7.menu.pnum.GENERIC_F722ZETX.build.product_line=STM32F722xx
46294629
GenF7.menu.pnum.GENERIC_F722ZETX.build.variant=STM32F7xx/F722Z(C-E)T_F732ZET
46304630

4631+
# Generic F723ICKx
4632+
GenF7.menu.pnum.GENERIC_F723ICKX=Generic F723ICKx
4633+
GenF7.menu.pnum.GENERIC_F723ICKX.upload.maximum_size=262144
4634+
GenF7.menu.pnum.GENERIC_F723ICKX.upload.maximum_data_size=196608
4635+
GenF7.menu.pnum.GENERIC_F723ICKX.build.board=GENERIC_F723ICKX
4636+
GenF7.menu.pnum.GENERIC_F723ICKX.build.product_line=STM32F723xx
4637+
GenF7.menu.pnum.GENERIC_F723ICKX.build.variant=STM32F7xx/F723I(C-E)(K-T)_F730I8K_F733IE(K-T)
4638+
4639+
# Generic F723ICTx
4640+
GenF7.menu.pnum.GENERIC_F723ICTX=Generic F723ICTx
4641+
GenF7.menu.pnum.GENERIC_F723ICTX.upload.maximum_size=262144
4642+
GenF7.menu.pnum.GENERIC_F723ICTX.upload.maximum_data_size=196608
4643+
GenF7.menu.pnum.GENERIC_F723ICTX.build.board=GENERIC_F723ICTX
4644+
GenF7.menu.pnum.GENERIC_F723ICTX.build.product_line=STM32F723xx
4645+
GenF7.menu.pnum.GENERIC_F723ICTX.build.variant=STM32F7xx/F723I(C-E)(K-T)_F730I8K_F733IE(K-T)
4646+
4647+
# Generic F723IEKx
4648+
GenF7.menu.pnum.GENERIC_F723IEKX=Generic F723IEKx
4649+
GenF7.menu.pnum.GENERIC_F723IEKX.upload.maximum_size=524288
4650+
GenF7.menu.pnum.GENERIC_F723IEKX.upload.maximum_data_size=196608
4651+
GenF7.menu.pnum.GENERIC_F723IEKX.build.board=GENERIC_F723IEKX
4652+
GenF7.menu.pnum.GENERIC_F723IEKX.build.product_line=STM32F723xx
4653+
GenF7.menu.pnum.GENERIC_F723IEKX.build.variant=STM32F7xx/F723I(C-E)(K-T)_F730I8K_F733IE(K-T)
4654+
4655+
# Generic F723IETx
4656+
GenF7.menu.pnum.GENERIC_F723IETX=Generic F723IETx
4657+
GenF7.menu.pnum.GENERIC_F723IETX.upload.maximum_size=524288
4658+
GenF7.menu.pnum.GENERIC_F723IETX.upload.maximum_data_size=196608
4659+
GenF7.menu.pnum.GENERIC_F723IETX.build.board=GENERIC_F723IETX
4660+
GenF7.menu.pnum.GENERIC_F723IETX.build.product_line=STM32F723xx
4661+
GenF7.menu.pnum.GENERIC_F723IETX.build.variant=STM32F7xx/F723I(C-E)(K-T)_F730I8K_F733IE(K-T)
4662+
4663+
# Generic F730I8Kx
4664+
GenF7.menu.pnum.GENERIC_F730I8KX=Generic F730I8Kx
4665+
GenF7.menu.pnum.GENERIC_F730I8KX.upload.maximum_size=65536
4666+
GenF7.menu.pnum.GENERIC_F730I8KX.upload.maximum_data_size=196608
4667+
GenF7.menu.pnum.GENERIC_F730I8KX.build.board=GENERIC_F730I8KX
4668+
GenF7.menu.pnum.GENERIC_F730I8KX.build.product_line=STM32F730xx
4669+
GenF7.menu.pnum.GENERIC_F730I8KX.build.variant=STM32F7xx/F723I(C-E)(K-T)_F730I8K_F733IE(K-T)
4670+
46314671
# Generic F730R8Tx
46324672
GenF7.menu.pnum.GENERIC_F730R8TX=Generic F730R8Tx
46334673
GenF7.menu.pnum.GENERIC_F730R8TX.upload.maximum_size=65536
@@ -4652,6 +4692,22 @@ GenF7.menu.pnum.GENERIC_F732ZETX.build.board=GENERIC_F732ZETX
46524692
GenF7.menu.pnum.GENERIC_F732ZETX.build.product_line=STM32F732xx
46534693
GenF7.menu.pnum.GENERIC_F732ZETX.build.variant=STM32F7xx/F722Z(C-E)T_F732ZET
46544694

4695+
# Generic F733IEKx
4696+
GenF7.menu.pnum.GENERIC_F733IEKX=Generic F733IEKx
4697+
GenF7.menu.pnum.GENERIC_F733IEKX.upload.maximum_size=524288
4698+
GenF7.menu.pnum.GENERIC_F733IEKX.upload.maximum_data_size=196608
4699+
GenF7.menu.pnum.GENERIC_F733IEKX.build.board=GENERIC_F733IEKX
4700+
GenF7.menu.pnum.GENERIC_F733IEKX.build.product_line=STM32F733xx
4701+
GenF7.menu.pnum.GENERIC_F733IEKX.build.variant=STM32F7xx/F723I(C-E)(K-T)_F730I8K_F733IE(K-T)
4702+
4703+
# Generic F733IETx
4704+
GenF7.menu.pnum.GENERIC_F733IETX=Generic F733IETx
4705+
GenF7.menu.pnum.GENERIC_F733IETX.upload.maximum_size=524288
4706+
GenF7.menu.pnum.GENERIC_F733IETX.upload.maximum_data_size=196608
4707+
GenF7.menu.pnum.GENERIC_F733IETX.build.board=GENERIC_F733IETX
4708+
GenF7.menu.pnum.GENERIC_F733IETX.build.product_line=STM32F733xx
4709+
GenF7.menu.pnum.GENERIC_F733IETX.build.variant=STM32F7xx/F723I(C-E)(K-T)_F730I8K_F733IE(K-T)
4710+
46554711
# Generic F745ZETx
46564712
GenF7.menu.pnum.GENERIC_F745ZETX=Generic F745ZETx
46574713
GenF7.menu.pnum.GENERIC_F745ZETX.upload.maximum_size=524288

‎variants/STM32F7xx/F723I(C-E)(K-T)_F730I8K_F733IE(K-T)/generic_clock.c

Lines changed: 56 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,65 @@
1717
#include"pins_arduino.h"
1818

1919
/**
20-
* @brief System Clock Configuration
21-
* @param None
22-
* @retval None
23-
*/
20+
* @brief System Clock Configuration
21+
* @param None
22+
* @retval None
23+
*/
2424
WEAKvoidSystemClock_Config(void)
2525
{
2626
/* SystemClock_Config can be generated by STM32CubeMX */
27-
#warning "SystemClock_Config() is empty. Default clock at reset is used."
27+
RCC_OscInitTypeDefRCC_OscInitStruct= {};
28+
RCC_ClkInitTypeDefRCC_ClkInitStruct= {};
29+
RCC_PeriphCLKInitTypeDefPeriphClkInitStruct= {};
30+
31+
/** Configure the main internal regulator output voltage
32+
*/
33+
__HAL_RCC_PWR_CLK_ENABLE();
34+
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
35+
36+
/** Initializes the RCC Oscillators according to the specified parameters
37+
* in the RCC_OscInitTypeDef structure.
38+
*/
39+
RCC_OscInitStruct.OscillatorType=RCC_OSCILLATORTYPE_HSI;
40+
RCC_OscInitStruct.HSIState=RCC_HSI_ON;
41+
RCC_OscInitStruct.HSICalibrationValue=RCC_HSICALIBRATION_DEFAULT;
42+
RCC_OscInitStruct.PLL.PLLState=RCC_PLL_ON;
43+
RCC_OscInitStruct.PLL.PLLSource=RCC_PLLSOURCE_HSI;
44+
RCC_OscInitStruct.PLL.PLLM=8;
45+
RCC_OscInitStruct.PLL.PLLN=216;
46+
RCC_OscInitStruct.PLL.PLLP=RCC_PLLP_DIV2;
47+
RCC_OscInitStruct.PLL.PLLQ=9;
48+
if (HAL_RCC_OscConfig(&RCC_OscInitStruct)!=HAL_OK) {
49+
Error_Handler();
50+
}
51+
52+
/** Activate the Over-Drive mode
53+
*/
54+
if (HAL_PWREx_EnableOverDrive()!=HAL_OK) {
55+
Error_Handler();
56+
}
57+
58+
/** Initializes the CPU, AHB and APB buses clocks
59+
*/
60+
RCC_ClkInitStruct.ClockType=RCC_CLOCKTYPE_HCLK |RCC_CLOCKTYPE_SYSCLK
61+
|RCC_CLOCKTYPE_PCLK1 |RCC_CLOCKTYPE_PCLK2;
62+
RCC_ClkInitStruct.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK;
63+
RCC_ClkInitStruct.AHBCLKDivider=RCC_SYSCLK_DIV1;
64+
RCC_ClkInitStruct.APB1CLKDivider=RCC_HCLK_DIV4;
65+
RCC_ClkInitStruct.APB2CLKDivider=RCC_HCLK_DIV2;
66+
67+
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct,FLASH_LATENCY_7)!=HAL_OK) {
68+
Error_Handler();
69+
}
70+
71+
/** Initializes the peripherals clock
72+
*/
73+
PeriphClkInitStruct.PeriphClockSelection=RCC_PERIPHCLK_SDMMC1 |RCC_PERIPHCLK_CLK48;
74+
PeriphClkInitStruct.Clk48ClockSelection=RCC_CLK48SOURCE_PLL;
75+
PeriphClkInitStruct.Sdmmc1ClockSelection=RCC_SDMMC1CLKSOURCE_CLK48;
76+
if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct)!=HAL_OK) {
77+
Error_Handler();
78+
}
2879
}
2980

3081
#endif/* ARDUINO_GENERIC_* */
Lines changed: 183 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,183 @@
1+
/*
2+
******************************************************************************
3+
**
4+
** @file : LinkerScript.ld
5+
**
6+
** @author : Auto-generated by STM32CubeIDE
7+
**
8+
** @brief : Linker script for F723I(C-E)(K-T)_F730I8K_F733IE(K-T) Devices from STM32F7 series
9+
**
10+
** Set heap size, stack size and stack location according
11+
** to application requirements.
12+
**
13+
** Set memory bank area and size if external memory is used
14+
**
15+
** Target : STMicroelectronics STM32
16+
**
17+
** Distribution: The file is distributed as is, without any warranty
18+
** of any kind.
19+
**
20+
******************************************************************************
21+
** @attention
22+
**
23+
** Copyright (c) 2023 STMicroelectronics.
24+
** All rights reserved.
25+
**
26+
** This software is licensed under terms that can be found in the LICENSE file
27+
** in the root directory of this software component.
28+
** If no LICENSE file comes with this software, it is provided AS-IS.
29+
**
30+
******************************************************************************
31+
*/
32+
33+
/* Entry Point */
34+
ENTRY(Reset_Handler)
35+
36+
/* Highest address of the user mode stack */
37+
_estack =ORIGIN(RAM) +LENGTH(RAM); /* end of "RAM" Ram type memory */
38+
39+
_Min_Heap_Size = 0x200; /* required amount of heap */
40+
_Min_Stack_Size = 0x400; /* required amount of stack */
41+
42+
/* Memories definition */
43+
MEMORY
44+
{
45+
RAM (xrw) :ORIGIN = 0x20000000,LENGTH = LD_MAX_DATA_SIZE
46+
FLASH (rx) :ORIGIN = 0x8000000 + LD_FLASH_OFFSET,LENGTH = LD_MAX_SIZE - LD_FLASH_OFFSET
47+
}
48+
49+
/* Sections */
50+
SECTIONS
51+
{
52+
/* The startup code into "FLASH" Rom type memory */
53+
.isr_vector :
54+
{
55+
. =ALIGN(4);
56+
KEEP(*(.isr_vector)) /* Startup code */
57+
. =ALIGN(4);
58+
} >FLASH
59+
60+
/* The program code and other data into "FLASH" Rom type memory */
61+
.text :
62+
{
63+
. =ALIGN(4);
64+
*(.text) /* .text sections (code) */
65+
*(.text*) /* .text* sections (code) */
66+
*(.glue_7) /* glue arm to thumb code */
67+
*(.glue_7t) /* glue thumb to arm code */
68+
*(.eh_frame)
69+
70+
KEEP (*(.init))
71+
KEEP (*(.fini))
72+
73+
. =ALIGN(4);
74+
_etext = .; /* define a global symbols at end of code */
75+
} >FLASH
76+
77+
/* Constant data into "FLASH" Rom type memory */
78+
.rodata :
79+
{
80+
. =ALIGN(4);
81+
*(.rodata) /* .rodata sections (constants, strings, etc.) */
82+
*(.rodata*) /* .rodata* sections (constants, strings, etc.) */
83+
. =ALIGN(4);
84+
} >FLASH
85+
86+
.ARM.extab : {
87+
. =ALIGN(4);
88+
*(.ARM.extab* .gnu.linkonce.armextab.*)
89+
. =ALIGN(4);
90+
} >FLASH
91+
92+
.ARM : {
93+
. =ALIGN(4);
94+
__exidx_start = .;
95+
*(.ARM.exidx*)
96+
__exidx_end = .;
97+
. =ALIGN(4);
98+
} >FLASH
99+
100+
.preinit_array :
101+
{
102+
. =ALIGN(4);
103+
PROVIDE_HIDDEN (__preinit_array_start = .);
104+
KEEP (*(.preinit_array*))
105+
PROVIDE_HIDDEN (__preinit_array_end = .);
106+
. =ALIGN(4);
107+
} >FLASH
108+
109+
.init_array :
110+
{
111+
. =ALIGN(4);
112+
PROVIDE_HIDDEN (__init_array_start = .);
113+
KEEP (*(SORT(.init_array.*)))
114+
KEEP (*(.init_array*))
115+
PROVIDE_HIDDEN (__init_array_end = .);
116+
. =ALIGN(4);
117+
} >FLASH
118+
119+
.fini_array :
120+
{
121+
. =ALIGN(4);
122+
PROVIDE_HIDDEN (__fini_array_start = .);
123+
KEEP (*(SORT(.fini_array.*)))
124+
KEEP (*(.fini_array*))
125+
PROVIDE_HIDDEN (__fini_array_end = .);
126+
. =ALIGN(4);
127+
} >FLASH
128+
129+
/* Used by the startup to initialize data */
130+
_sidata =LOADADDR(.data);
131+
132+
/* Initialized data sections into "RAM" Ram type memory */
133+
.data :
134+
{
135+
. =ALIGN(4);
136+
_sdata = .; /* create a global symbol at data start */
137+
*(.data) /* .data sections */
138+
*(.data*) /* .data* sections */
139+
*(.RamFunc) /* .RamFunc sections */
140+
*(.RamFunc*) /* .RamFunc* sections */
141+
142+
. =ALIGN(4);
143+
_edata = .; /* define a global symbol at data end */
144+
145+
} >RAM AT> FLASH
146+
147+
/* Uninitialized data section into "RAM" Ram type memory */
148+
. =ALIGN(4);
149+
.bss :
150+
{
151+
/* This is used by the startup in order to initialize the .bss section */
152+
_sbss = .; /* define a global symbol at bss start */
153+
__bss_start__ = _sbss;
154+
*(.bss)
155+
*(.bss*)
156+
*(COMMON)
157+
158+
. =ALIGN(4);
159+
_ebss = .; /* define a global symbol at bss end */
160+
__bss_end__ = _ebss;
161+
} >RAM
162+
163+
/* User_heap_stack section, used to check that there is enough "RAM" Ram type memory left */
164+
._user_heap_stack :
165+
{
166+
. =ALIGN(8);
167+
PROVIDE ( end = . );
168+
PROVIDE ( _end = . );
169+
. = . + _Min_Heap_Size;
170+
. = . + _Min_Stack_Size;
171+
. =ALIGN(8);
172+
} >RAM
173+
174+
/* Remove information from the compiler libraries */
175+
/DISCARD/ :
176+
{
177+
libc.a ( * )
178+
libm.a ( * )
179+
libgcc.a ( * )
180+
}
181+
182+
.ARM.attributes 0 : { *(.ARM.attributes) }
183+
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp