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)

 

5 REPLIES 5
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.