@@ -112,19 +112,24 @@ WEAK void SystemClock_Config(void)
112
112
/* * Initializes the RCC Oscillators according to the specified parameters
113
113
* in the RCC_OscInitTypeDef structure.
114
114
*/
115
- RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_LSI | RCC_OSCILLATORTYPE_HSE ;
116
- RCC_OscInitStruct.HSEState = RCC_HSE_ON;
115
+ RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI | RCC_OSCILLATORTYPE_LSI
116
+ | RCC_OSCILLATORTYPE_CSI;
117
+ RCC_OscInitStruct.HSIState = RCC_HSI_ON;
118
+ RCC_OscInitStruct.HSIDiv = RCC_HSI_DIV2;
119
+ RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
117
120
RCC_OscInitStruct.LSIState = RCC_LSI_ON;
121
+ RCC_OscInitStruct.CSIState = RCC_CSI_ON;
122
+ RCC_OscInitStruct.CSICalibrationValue = RCC_CSICALIBRATION_DEFAULT;
118
123
RCC_OscInitStruct.PLL .PLLState = RCC_PLL_ON;
119
- RCC_OscInitStruct.PLL .PLLSource = RCC_PLL1_SOURCE_HSE ;
124
+ RCC_OscInitStruct.PLL .PLLSource = RCC_PLL1_SOURCE_CSI ;
120
125
RCC_OscInitStruct.PLL .PLLM = 1 ;
121
- RCC_OscInitStruct.PLL .PLLN = 62 ;
126
+ RCC_OscInitStruct.PLL .PLLN = 125 ;
122
127
RCC_OscInitStruct.PLL .PLLP = 2 ;
123
- RCC_OscInitStruct.PLL .PLLQ = 2 ;
128
+ RCC_OscInitStruct.PLL .PLLQ = 10 ;
124
129
RCC_OscInitStruct.PLL .PLLR = 2 ;
125
- RCC_OscInitStruct.PLL .PLLRGE = RCC_PLL1_VCIRANGE_3 ;
130
+ RCC_OscInitStruct.PLL .PLLRGE = RCC_PLL1_VCIRANGE_2 ;
126
131
RCC_OscInitStruct.PLL .PLLVCOSEL = RCC_PLL1_VCORANGE_WIDE;
127
- RCC_OscInitStruct.PLL .PLLFRACN = 4096 ;
132
+ RCC_OscInitStruct.PLL .PLLFRACN = 0 ;
128
133
if (HAL_RCC_OscConfig (&RCC_OscInitStruct) != HAL_OK) {
129
134
Error_Handler ();
130
135
}
@@ -150,25 +155,26 @@ WEAK void SystemClock_Config(void)
150
155
/* * Initializes the peripherals clock
151
156
*/
152
157
PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_SDMMC1 | RCC_PERIPHCLK_ADCDAC
153
- | RCC_PERIPHCLK_LPUART1 | RCC_PERIPHCLK_USB;
154
- PeriphClkInitStruct.PLL2 .PLL2Source = RCC_PLL2_SOURCE_HSE;
158
+ | RCC_PERIPHCLK_LPUART1 | RCC_PERIPHCLK_USB
159
+ | RCC_PERIPHCLK_SDMMC1;
160
+ PeriphClkInitStruct.PLL2 .PLL2Source = RCC_PLL2_SOURCE_CSI;
155
161
PeriphClkInitStruct.PLL2 .PLL2M = 1 ;
156
- PeriphClkInitStruct.PLL2 .PLL2N = 32 ;
162
+ PeriphClkInitStruct.PLL2 .PLL2N = 48 ;
157
163
PeriphClkInitStruct.PLL2 .PLL2P = 2 ;
158
- PeriphClkInitStruct.PLL2 .PLL2Q = 8 ;
164
+ PeriphClkInitStruct.PLL2 .PLL2Q = 1 ;
159
165
PeriphClkInitStruct.PLL2 .PLL2R = 4 ;
160
166
PeriphClkInitStruct.PLL2 .PLL2RGE = RCC_PLL2_VCIRANGE_2;
161
167
PeriphClkInitStruct.PLL2 .PLL2VCOSEL = RCC_PLL2_VCORANGE_WIDE;
162
- PeriphClkInitStruct.PLL2 .PLL2FRACN = 0 ;
163
- PeriphClkInitStruct.PLL2 .PLL2ClockOut = RCC_PLL2_DIVQ | RCC_PLL2_DIVR;
164
- PeriphClkInitStruct.Lpuart1ClockSelection = RCC_LPUART1CLKSOURCE_PLL2Q ;
168
+ PeriphClkInitStruct.PLL2 .PLL2FRACN = 0.0 ;
169
+ PeriphClkInitStruct.PLL2 .PLL2ClockOut = RCC_PLL2_DIVR;
170
+ PeriphClkInitStruct.Lpuart1ClockSelection = RCC_LPUART1CLKSOURCE_HSI ;
165
171
PeriphClkInitStruct.Sdmmc1ClockSelection = RCC_SDMMC1CLKSOURCE_PLL2R;
166
- PeriphClkInitStruct.AdcDacClockSelection = RCC_ADCDACCLKSOURCE_PLL2R ;
167
- PeriphClkInitStruct.PLL3 .PLL3Source = RCC_PLL3_SOURCE_HSE ;
172
+ PeriphClkInitStruct.AdcDacClockSelection = RCC_ADCDACCLKSOURCE_HSI ;
173
+ PeriphClkInitStruct.PLL3 .PLL3Source = RCC_PLL3_SOURCE_CSI ;
168
174
PeriphClkInitStruct.PLL3 .PLL3M = 1 ;
169
175
PeriphClkInitStruct.PLL3 .PLL3N = 48 ;
170
176
PeriphClkInitStruct.PLL3 .PLL3P = 2 ;
171
- PeriphClkInitStruct.PLL3 .PLL3Q = 8 ;
177
+ PeriphClkInitStruct.PLL3 .PLL3Q = 4 ;
172
178
PeriphClkInitStruct.PLL3 .PLL3R = 2 ;
173
179
PeriphClkInitStruct.PLL3 .PLL3RGE = RCC_PLL3_VCIRANGE_0;
174
180
PeriphClkInitStruct.PLL3 .PLL3VCOSEL = RCC_PLL3_VCORANGE_MEDIUM;
0 commit comments