Skip to content

Commit e283b8c

Browse files
committed
fix(nucleo_G474RE): wrong SystemClock_Config configuration
Signed-off-by: Frederic Pillon <[email protected]>
1 parent ed8ba84 commit e283b8c

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

variants/STM32G4xx/G473R(B-C-E)T_G474R(B-C-E)T_G483RET_G484RET/variant_NUCLEO_G474RE.cpp

+10-10
Original file line numberDiff line numberDiff line change
@@ -106,22 +106,23 @@ WEAK void SystemClock_Config(void)
106106
{
107107
RCC_OscInitTypeDef RCC_OscInitStruct = {};
108108
RCC_ClkInitTypeDef RCC_ClkInitStruct = {};
109-
#ifdef USBCON
110109
RCC_PeriphCLKInitTypeDef PeriphClkInit = {};
111-
#endif
112110

113111
/* Configure the main internal regulator output voltage */
114112
HAL_PWREx_ControlVoltageScaling(PWR_REGULATOR_VOLTAGE_SCALE1_BOOST);
115113
/* Initializes the CPU, AHB and APB busses clocks */
116-
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI48 | RCC_OSCILLATORTYPE_HSE;
114+
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI | RCC_OSCILLATORTYPE_HSI48
115+
| RCC_OSCILLATORTYPE_HSE;
117116
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
117+
RCC_OscInitStruct.HSIState = RCC_HSI_ON;
118+
RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
118119
RCC_OscInitStruct.HSI48State = RCC_HSI48_ON;
119120
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
120121
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
121-
RCC_OscInitStruct.PLL.PLLM = RCC_PLLM_DIV2;
122-
RCC_OscInitStruct.PLL.PLLN = 28;
122+
RCC_OscInitStruct.PLL.PLLM = RCC_PLLM_DIV6;
123+
RCC_OscInitStruct.PLL.PLLN = 85;
123124
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
124-
RCC_OscInitStruct.PLL.PLLQ = RCC_PLLQ_DIV2;
125+
RCC_OscInitStruct.PLL.PLLQ = RCC_PLLQ_DIV6;
125126
RCC_OscInitStruct.PLL.PLLR = RCC_PLLR_DIV2;
126127
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) {
127128
Error_Handler();
@@ -134,18 +135,17 @@ WEAK void SystemClock_Config(void)
134135
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
135136
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
136137

137-
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_8) != HAL_OK) {
138+
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_4) != HAL_OK) {
138139
Error_Handler();
139140
}
140141

141-
#ifdef USBCON
142142
/* Initializes the peripherals clocks */
143-
PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USB;
143+
PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_LPUART1 | RCC_PERIPHCLK_USB;
144+
PeriphClkInit.Lpuart1ClockSelection = RCC_LPUART1CLKSOURCE_HSI;
144145
PeriphClkInit.UsbClockSelection = RCC_USBCLKSOURCE_HSI48;
145146
if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK) {
146147
Error_Handler();
147148
}
148-
#endif
149149
}
150150

151151
#ifdef __cplusplus

0 commit comments

Comments
 (0)