cancel
Showing results for 
Search instead for 
Did you mean: 

READ_BIT(RCC->CR, RCC_CR_HSERDY) fails with a HAL_TIMEOUT when running blinky in debug.

lwatcdr
Associate II

While in debug I get and error in this line of code. I do not get an error when running code not in debug.

/* Wait till HSE is ready */
while (READ_BIT(RCC->CR, RCC_CR_HSERDY) == 0U)
{
if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE)
{
return HAL_TIMEOUT;
}
}

SBC NUCLEO-U5A5ZJ-Q

CUBEMX IDE

14 REPLIES 14

So why does it fail only in debug but when I run not in debug.

I don't know. The important thing is to get the code correct. You should verify on your board this is actually the case.

Where do I set the HSE to 16Mhz.

In the clock configuration tab:

TDK_1-1727129356337.png

 

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

Hello @lwatcdr 

This post has been escalated to the ST Online Support Team for additional assistance.  We'll contact you directly.

 

Regards,

Roger

ST Support

I am encountering the same mentioned problem. Could you please share the solution or any guidance on how to resolve it?

Hneel
Associate II

Facing the same problem here. 

I've tried setting the input frequency to 16 as suggested, but that didn't help.

Any other solutions?

 

PS: I've downloaded and installed the latest versions of STM32CubeIDE and STM32CubeMX today.

Here are some detail pictures of my board. I think these are the correct default settings. (I got the board from a customer. I don't think they changed anything to the jumpers.)

2025-01-08 10.52.47.jpg2025-01-08 10.52.19.jpg

Hneel
Associate II

Never mind. Found the fix. 

The setting for HSE must be set to 'Crystel/Ceramic Resonator', just like with the LSE. 

Now I can debug my project.

 

Hneel_0-1736338196707.png