2023-07-06 10:12 PM
Hello,
I want to use Nucleo-H745ZIQ board with operating clock at 480 MHz for M7 and 240 MHz for M4. Below is the clock configuration.
Under RCC, options are either PWR_LDO or PWR_EXTERNAL_SOURCE_SUPPLY selection enabled. Voltage scale as Power Regulator Voltage Scale 0.
Jumper settings on board is as follows.
External supply given is +9 V to VIN.
While loading the code in the controller, I received error as No STM32 target found.
I reset the core with STM32Cube Programmer, and found board working again.
But as soon as I repeat the above procedure to load the code with maximum clock selection, I got the same error.
Then I cut down the operating speed to 75 MHz for M7 and 60 MHz for M4 and selected Internal power supply and programmed again. Found working okay.
Can anyone let me know what wrong is going while I am trying to load the board with M7-480 MHz and M4-240 MHz?
Is there any wrong selection of parameters or something else.
Regards,
Nikhil
Solved! Go to Solution.
2023-07-07 03:43 AM
The clock configuration is as follows
void SystemClock_Config(void)
{
RCC_OscInitTypeDef RCC_OscInitStruct = {0};
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
/** Supply configuration update enable
*/
HAL_PWREx_ConfigSupply(PWR_EXTERNAL_SOURCE_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.
*/
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_BYPASS;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLM = 1;
RCC_OscInitStruct.PLL.PLLN = 120;
RCC_OscInitStruct.PLL.PLLP = 2;
RCC_OscInitStruct.PLL.PLLQ = 2;
RCC_OscInitStruct.PLL.PLLR = 2;
RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_3;
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();
}
}
2023-07-09 11:24 PM
@Sara BEN HADJ YAHYA I gone through your post for How to unbrick an STM32H7 after setting the wrong power mode How to unbrick an STM32H7 after setting the wrong ... - STMicroelectronics Community.
I recovered my STM32H745ZIQ nucleo board with the same procedure mentioned in your post.
Could you please let me know the procedure to operate Nucleo-H745 wtih maximum frequency i.e. 480 MHz for M7. You can check my query above in this same thread.
Thanks
Nikhil
2023-07-10 01:45 AM
Solution:
connected external 9V to VIN pin of the board.
Thank you all for your support.