8000 stm32/boards/pllvalues.py: Support wider range of PLL values for F413. · micropython/micropython@6e0f9b9 · GitHub
[go: up one dir, main page]

Skip to content

Commit 6e0f9b9

Browse files
committed
stm32/boards/pllvalues.py: Support wider range of PLL values for F413.
Signed-off-by: Damien George <damien@micropython.org>
1 parent b74dc54 commit 6e0f9b9

File tree

1 file changed

+25
-13
lines changed

1 file changed

+25
-13
lines changed

ports/stm32/boards/pllvalues.py

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,26 @@ def __init__(
3131
range_vco_out=range(192, 432 + 1),
3232
)
3333

34-
mcu_h7 = MCU(
35-
range_sysclk=range(2, 400 + 1, 2), # above 400MHz currently unsupported
36-
range_m=range(1, 63 + 1),
37-
range_n=range(4, 512 + 1),
38-
range_p=range(2, 128 + 1, 2),
39-
range_q=range(1, 128 + 1),
40-
range_vco_in=range(1, 16 + 1),
41-
range_vco_out=range(150, 960 + 1), # 150-420=medium, 192-960=wide
42-
)
34+
mcu_table = {
35+
"stm32f413": MCU(
36+
range_sysclk=range(2, 100 + 1, 2),
37+
range_m=range(2, 63 + 1),
38+
range_n=range(50, 432 + 1),
39+
range_p=range(2, 8 + 1, 2),
40+
range_q=range(2, 15 + 1),
41+
range_vco_in=range(1, 2 + 1),
42+
range_vco_out=range(100, 432 + 1),
43+
),
44+
"stm32h7": MCU(
45+
range_sysclk=range(2, 400 + 1, 2), # above 400MHz currently unsupported
46+
range_m=range(1, 63 + 1),
47+
range_n=range(4, 512 + 1),
48+
range_p=range(2, 128 + 1, 2),
49+
range_q=range(1, 128 + 1),
50+
range_vco_in=range(1, 16 + 1),
51+
range_vco_out=range(150, 960 + 1), # 150-420=medium, 192-960=wide
52+
),
53+
}
4354

4455

4556
def close_int(x):
@@ -271,10 +282,11 @@ def main():
271282
hse = int(argv[0])
272283

273284
# Select MCU parameters
274-
if mcu_series.startswith("stm32h7"):
275-
mcu = mcu_h7
276-
else:
277-
mcu = mcu_default
285+
mcu = mcu_default
286+
for m in mcu_table:
287+
if mcu_series.startswith(m):
288+
mcu = mcu_table[m]
289+
break
278290

279291
# Relax constraint on PLLQ being 48MHz on MCUs which have separate PLLs for 48MHz
280292
relax_pll48 = mcu_series.startswith(("stm32f413", "stm32f7", "stm32h7"))

0 commit comments

Comments
 (0)
0