2018-05-03 08:31 AM
Hi,
There is a bug when generating clock configuration with CubeMx on an STM32F413RHT.
The SystemClock_Config is missing a line before changing the PWR register (clock is not enable) :
void SystemClock_Config(void)
{ LL_FLASH_SetLatency(LL_FLASH_LATENCY_3); if(LL_FLASH_GetLatency() != LL_FLASH_LATENCY_3) { Error_Handler(); }// THIS LINE IS MISSING IN THE GENERATED CODE
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_PWR); LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1); LL_RCC_HSI_SetCalibTrimming(16); LL_RCC_HSI_Enable(); /* Wait till HSI is ready */ while(LL_RCC_HSI_IsReady() != 1) { } LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_HSI, LL_RCC_PLLM_DIV_16, 192, LL_RCC_PLLP_DIV_2); LL_RCC_PLL_Enable(); /* Wait till PLL is ready */ while(LL_RCC_PLL_IsReady() != 1) { } LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1); LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_2); LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1); LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL); /* Wait till System clock is ready */ while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL) { } LL_Init1msTick(96000000); LL_SYSTICK_SetClkSource(LL_SYSTICK_CLKSOURCE_HCLK); LL_SetSystemCoreClock(96000000); LL_RCC_ConfigMCO(LL_RCC_MCO1SOURCE_HSI, LL_RCC_MCO1_DIV_2); LL_RCC_ConfigMCO(LL_RCC_MCO2SOURCE_PLLCLK, LL_RCC_MCO2_DIV_1); LL_RCC_SetTIMPrescaler(LL_RCC_TIM_PRESCALER_TWICE); /* SysTick_IRQn interrupt configuration */ NVIC_SetPriority(SysTick_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0));}Versions:
CubeMx: 4.25.0
Firmware: STM32Cube FW_F4 V1.21.0
#lowlayer #cubemx-v4.25.0 #cube2018-05-07 12:51 AM
Hi
nicolas.bonnec
This issue has been fixed and will be ok for the next 4.0