cancel
Showing results for 
Search instead for 
Did you mean: 

code gets stuck on SystemClock_Config() or HAL_Delay() when using External clock

ChaitanyaParate
Associate II

When ever I configure HSE in my ioc file for my custom PCB my code stops at SystemClock_Config() or HAL_Delay().  

One time when I replaced 48Mhz crystal oscillator with 32 Mhz my LVCU code worked on HSE but it was considerably slow than HSI even on 170 Mhz.

When I created another project to test HSE the same problem continues i.e SystemClock_Config() and HAL_Delay() stopped .

 

Can some one tell what should be the ioc file setting for HSE so that SystemClock_Config() and HAL_Delay() works.  

(LVCU working,distance2 not working)

 

11 REPLIES 11
mƎALLEm
ST Employee

Hello,

1- I can't see any difference between both ioc files.

2-  I'm confused. You said you are using 48MHz and 32 MHz crystals but in the CubeMx configuration you set the crystal value to 16 MHz in both projects. Could you please check and confirm?

mALLEm_0-1744015990415.png

 

3-  Did you also verify if your crystal is compatible with your MCU? please refer to the AN2867 "Guidelines for oscillator design on STM8AF/AL/S and STM32 MCUs/MPUs"

 

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

1- Yes, I tried to replicate the correct ioc file.

2- sorry for the confusion , recently I also tried 16 Mhz crystal oscillator and the results were the same.

 

3- Yes I verified , the crystal is compatible. 

The issue still not clear,

1- I propose to share your schematics especially the HSE part.

2- Need to specify which function in SystemClock_Config() is failing, HAL_Delay() is just called in the Error_handler(). Try stepping your code to know when Error_handler() is called.

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

HAL_RCC_OscConfig(&RCC_OscInitStruct) !=HAL_OK

 

On this line Error_handler() is called.

Please attach the schematic in pdf format.

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

This is schematic pdf.

Hello,

This is not the schematic but the PCB layout:

mALLEm_0-1744113957350.png

A schematic looks like the following:

mALLEm_0-1744118251224.png

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

schematic is below PCB layout.

Sorry I didn't see it.

But the schematics has a very bad resolution. I can't even read the part numbers in the schematics.

Please attach a screenshot of your schematics with a good resolution.

Thanks

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.