cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F446VET7, SystemClock_Config(); FAULT

testbenchmark
Associate III

I used STM32F446VET7 on the board I PCB printed. When I use HSI, I can debug without any problem, but when I want to use HSE, SystemClock_Config(); function enters ErrorHandler().

Can you help me?

1 ACCEPTED SOLUTION

Accepted Solutions
TDK
Guru

Can you show the HSE portion of your schematic?

In particular, the load caps on the crystal oscillator must be chosen correctly.

cd00221665-oscillator-design-guide-for-stm8af-al-s-stm32-mcus-and-mpus-stmicroelectronics.pdf

 

Roughly speaking, load caps should be around

CL1 = CL2 = 2 * (CL - 5 pF)

where CL is the load capacitance of the crystal.

If you feel a post has answered your question, please click "Accept as Solution".

View solution in original post

5 REPLIES 5
Andrew Neil
Evangelist III

So step through the code in SystemClock_Config(), and see where the error happens.

Did you set up your clocks using CubeMX (standalone or within CubeIDE)? If not, try that ...

 

EDIT:

Have you tried your code on a known-good board; eg,

https://www.st.com/en/evaluation-tools/nucleo-f446re.html

TDK
Guru

Can you show the HSE portion of your schematic?

In particular, the load caps on the crystal oscillator must be chosen correctly.

cd00221665-oscillator-design-guide-for-stm8af-al-s-stm32-mcus-and-mpus-stmicroelectronics.pdf

 

Roughly speaking, load caps should be around

CL1 = CL2 = 2 * (CL - 5 pF)

where CL is the load capacitance of the crystal.

If you feel a post has answered your question, please click "Accept as Solution".

I use 16 MHz ECS-160-12-33-AGN-TR with 2x12pF cap.

 

testbenchmark_0-1722026716115.png

 

Debug the code, see where and why it's entering ErrorHandler.

HSE design seems fine.

If you feel a post has answered your question, please click "Accept as Solution".

The error was in hardware. I resolder components and its work just fine.

 

Thank you guys!