on 2019-10-17 12:17 AM
There are two possible root causes, that can cause this issue. First one is more probable and is related to power supply misconfiguration. And second to configuration of boot process in option bytes.
HAL_PWREx_ConfigSupply(...);Most of the boards have the supply directly from SMPS (if available in MCU), which requires the above function to be called with PWR_DIRECT_SMPS_SUPPLY parameter. But STM32CubeMX generated projects might have PWR_LDO_SUPPLY option by default. Also the PWR_DIRECT_SMPS_SUPPLY option is available in version 5.4.0 and older.
Customer Note: 1) You can contact the author of this article by clicking on name provided as “Created By” info. 2) All other comments or feedback you can post by email to community@st.com 3) If you need specific (product) support please refer to our Support Center(https://www.st.com/content/st_com/en/support/support-home.html) where you can choose from a variety of online support options and select a service which fits your requirements best. |
@Adam BERLINGER Thanks a million, this made my day! I thought I bricked my board. In fact, I tried STLink Utility and I came across those different ports, but I was just afraid to give them another shot! This article saved me and my board is back to life again!
Hello @Adam BERLINGER
Thank you for your post. I want to run Nucleo-H745 board with maximum frequency which is 480 MHz. For this, it was required to change voltage scale to 0 and enable either PWER_LDO_Supply or PWR_EXTERNAL_SOURCE_SUPPLY. I tried with both the options to load the controller, but found error as target not responding.
Could you please suggest correct configuration so that I can operate the borad with 480 MHz for M7 and 240 MHz for M4.
Thanks in advance.
Nikhil
Hello @Nsg1987,
To use LDO on Nucleo-H745, you need to do HW modifications to the board and also add some additional VCAP capacitors. I think the user manual should provide more information on how to do this, but it might not be trivial task.
Best regards,
Adam
Hello @Adam BERLINGER
Thank you for your reply. I have gone through the manual and found the same.
/* Exported types ------------------------------------------------------------*/
/* Exported constants --------------------------------------------------------*/
/* Set this define to 1 to OverClocking the system clock to 480MHz*/
#define USE_VOS0_480MHZ_OVERCLOCK 0
/*
!!!Attention!!!
Over clocking the system clock to 480MHz is only available with LDO PWR configuration
by default The NUCLEO-H745ZI-Q board comes with DIRECT_SMPS configuration
in order Over clock the system clock to 480MHz to the nucleo board must modified
to change the PWR path to LDO instead of DIRECT_SMPS
to do so please change the following solder bridges :
- LDO config :
Mount : SB25, R33(0R), SB74
C58 & C54 = 2.2uF instead of 100nF
Removed : SB92, SB79, R35(0R), SB75, SB76
- Direct SMPS config (default config):
Mount : SB92, SB79, R35(0R), SB75, SB76
C58 & C54 = 100nF
Removed : SB25, R33(0R), SB74
Note that the Board HW configuration must match with the FW config
if not will face a deadlock (can't connect the board any more)
the FW PWR configuration correspond in the main.c to the following :
Function SystemClock_Config :
- case of LDO config : HAL_PWREx_ConfigSupply(PWR_LDO_SUPPLY);
- case of Direct SMPS config : HAL_PWREx_ConfigSupply(PWR_DIRECT_SMPS_SUPPLY);
Thanks
Nikhil