Skip to main content
Visitor II
November 2, 2024
Solved

STM32H755 Supply connection

  • November 2, 2024
  • 2 replies
  • 4549 views

Hello,

I'm working on project with STM32H755ZIT6. Currently I use Nucleo Board, but I designed prototype board, but the board don't work. I supose that problem is caused by wrong connection for supply.

I use +3.3V from DC/DC connerter for suplly. Can someone help to find out where could be the problem?

Thank you all in advance for any tips.

    This topic has been closed for replies.
    Best answer by mƎALLEm

    Because from the beginning you configured the MCU with the wrong power config.

    You need to recover your board from that situation and set the correct power supply SMPS or LDO. Read this article:

    https://community.st.com/t5/stm32-mcus/how-can-i-recover-my-stm32h7-board-after-facing-a-power/ta-p/49579

    For the schematics, I invite you again to look at the schematics of NUCLEO-H753ZI for LDO: https://www.st.com/resource/en/schematic_pack/mb1364-h753zi-c01_schematic.pdf

    and NUCLEO-H753ZI for SMPS: https://www.st.com/resource/en/schematic_pack/mb1363-h755ziq-d01_schematic.pdf

    PS: you don't need to set VOS level in two steps.  Keep VOS0:

    	__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE0);
    	
    	while(!__HAL_PWR_GET_FLAG(PWR_FLAG_VOSRDY)) {}

    And remove the settings of VOS1.

    2 replies

    Technical Moderator
    November 2, 2024

    Hello,

    Need to check first your power supply config in the application versus what do you have on the HW.

    koyocikAuthor
    Visitor II
    November 2, 2024

    Hello,

     

    Please check below:

    void SystemClock_Config (void)
    {
     RCC_OscInitTypeDef RCC_OscInitStruct = {0};
     RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
    
     /** Supply configuration update enable
     */
     HAL_PWREx_ConfigSupply(PWR_DIRECT_SMPS_SUPPLY);
     /** Configure the main internal regulator output voltage
     */
     __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE0);
    
     while(!__HAL_PWR_GET_FLAG(PWR_FLAG_VOSRDY)) {}
     /* Initializes the RCC Oscillators according to the specified parameters
     * in the RCC_OscInitTypeDef structure. */
    
     /* Configure LSE Drive Capability */
     HAL_PWR_EnableBkUpAccess();
     __HAL_RCC_LSEDRIVE_CONFIG(RCC_LSEDRIVE_LOW);
    
     /** Initializes the RCC Oscillators according to the specified parameters
     * in the RCC_OscInitTypeDef structure.
     */
     RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE|RCC_OSCILLATORTYPE_LSE;
     RCC_OscInitStruct.HSEState = RCC_HSE_ON;
     RCC_OscInitStruct.LSEState = RCC_LSE_ON;
     RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
     RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
     RCC_OscInitStruct.PLL.PLLM = 5;
     RCC_OscInitStruct.PLL.PLLN = 192;
     RCC_OscInitStruct.PLL.PLLP = 2;
     RCC_OscInitStruct.PLL.PLLQ = 2;
     RCC_OscInitStruct.PLL.PLLR = 2;
     RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_2;
     RCC_OscInitStruct.PLL.PLLVCOSEL = RCC_PLL1VCOWIDE;
     RCC_OscInitStruct.PLL.PLLFRACN = 0;
     if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
     {
     Error_Handler();
     }
    
     /** Initializes the CPU, AHB and APB buses clocks
     */
     RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
     |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2
     |RCC_CLOCKTYPE_D3PCLK1|RCC_CLOCKTYPE_D1PCLK1;
     RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
     RCC_ClkInitStruct.SYSCLKDivider = RCC_SYSCLK_DIV1;
     RCC_ClkInitStruct.AHBCLKDivider = RCC_HCLK_DIV2;
     RCC_ClkInitStruct.APB3CLKDivider = RCC_APB3_DIV2;
     RCC_ClkInitStruct.APB1CLKDivider = RCC_APB1_DIV2;
     RCC_ClkInitStruct.APB2CLKDivider = RCC_APB2_DIV2;
     RCC_ClkInitStruct.APB4CLKDivider = RCC_APB4_DIV2;
    
     if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_4) != HAL_OK)
     {
     Error_Handler();
     }
    }

     

    Technical Moderator
    November 2, 2024

    From your side please review your schematics and check if there is somethong wrong with SMPS HW by comparing it to NUCLEO-H755ZI schematics: https://www.st.com/resource/en/schematic_pack/mb1363-h755ziq-d01_schematic.pdf

    And according to your code you are setting the SMPS and this configuration you cannot exceed 400MHz at VOS1.

    From the datasheet:

    SofLit_0-1730551843862.png

     

     

     

     

    Graduate II
    November 2, 2024

    For internal SMPS, the capacitors on VCAP should be pair of 100nF not 2u2F ?