1
1
/*
2
2
*******************************************************************************
3
- * Copyright (c) 2020-2021 , STMicroelectronics
3
+ * Copyright (c) 2020-2022 , STMicroelectronics
4
4
* All rights reserved.
5
5
*
6
6
* This software component is licensed by ST under BSD 3-Clause license,
@@ -30,13 +30,15 @@ WEAK void SystemClock_Config(void)
30
30
*/
31
31
__HAL_RCC_PWR_CLK_ENABLE ();
32
32
__HAL_PWR_VOLTAGESCALING_CONFIG (PWR_REGULATOR_VOLTAGE_SCALE1 );
33
+
33
34
/** Initializes the RCC Oscillators according to the specified parameters
34
35
* in the RCC_OscInitTypeDef structure.
35
36
*/
36
- RCC_OscInitStruct .OscillatorType = RCC_OSCILLATORTYPE_HSE ;
37
- RCC_OscInitStruct .HSEState = RCC_HSE_OFF ;
37
+ RCC_OscInitStruct .OscillatorType = RCC_OSCILLATORTYPE_HSI ;
38
+ RCC_OscInitStruct .HSIState = RCC_HSI_ON ;
39
+ RCC_OscInitStruct .HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT ;
38
40
RCC_OscInitStruct .PLL .PLLState = RCC_PLL_ON ;
39
- RCC_OscInitStruct .PLL .PLLSource = RCC_PLLSOURCE_HSE ;
41
+ RCC_OscInitStruct .PLL .PLLSource = RCC_PLLSOURCE_HSI ;
40
42
RCC_OscInitStruct .PLL .PLLM = 8 ;
41
43
RCC_OscInitStruct .PLL .PLLN = 100 ;
42
44
RCC_OscInitStruct .PLL .PLLP = RCC_PLLP_DIV2 ;
@@ -45,6 +47,7 @@ WEAK void SystemClock_Config(void)
45
47
if (HAL_RCC_OscConfig (& RCC_OscInitStruct ) != HAL_OK ) {
46
48
Error_Handler ();
47
49
}
50
+
48
51
/** Initializes the CPU, AHB and APB buses clocks
49
52
*/
50
53
RCC_ClkInitStruct .ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK
@@ -57,13 +60,18 @@ WEAK void SystemClock_Config(void)
57
60
if (HAL_RCC_ClockConfig (& RCC_ClkInitStruct , FLASH_LATENCY_3 ) != HAL_OK ) {
58
61
Error_Handler ();
59
62
}
60
- PeriphClkInitStruct .PeriphClockSelection = RCC_PERIPHCLK_SDIO | RCC_PERIPHCLK_CLK48 ;
61
- PeriphClkInitStruct .PLLI2S .PLLI2SN = 192 ;
62
- PeriphClkInitStruct .PLLI2S .PLLI2SM = 16 ;
63
+
64
+ /** Initializes the peripherals clock
65
+ */
66
+ PeriphClkInitStruct .PeriphClockSelection = RCC_PERIPHCLK_PLLI2S | RCC_PERIPHCLK_CLK48
67
+ | RCC_PERIPHCLK_SDIO | RCC_PERIPHCLK_I2S_APB2 ;
68
+ PeriphClkInitStruct .PLLI2S .PLLI2SN = 72 ;
69
+ PeriphClkInitStruct .PLLI2S .PLLI2SM = 8 ;
63
70
PeriphClkInitStruct .PLLI2S .PLLI2SR = 2 ;
64
- PeriphClkInitStruct .PLLI2S .PLLI2SQ = 4 ;
71
+ PeriphClkInitStruct .PLLI2S .PLLI2SQ = 3 ;
65
72
PeriphClkInitStruct .Clk48ClockSelection = RCC_CLK48CLKSOURCE_PLLI2SQ ;
66
73
PeriphClkInitStruct .SdioClockSelection = RCC_SDIOCLKSOURCE_CLK48 ;
74
+ PeriphClkInitStruct .I2sApb2ClockSelection = RCC_I2SAPB2CLKSOURCE_PLLI2S ;
67
75
PeriphClkInitStruct .PLLI2SSelection = RCC_PLLI2SCLKSOURCE_PLLSRC ;
68
76
if (HAL_RCCEx_PeriphCLKConfig (& PeriphClkInitStruct ) != HAL_OK ) {
69
77
Error_Handler ();
0 commit comments