|
15 | 15 |
|
16 | 16 | // Digital PinName array
|
17 | 17 | const PinName digitalPin[] = {
|
18 |
| - PA_0, // 0 - A0/D0 |
19 |
| - PA_1, // 1 - A1/D1 |
20 |
| - PA_2, // 2 - A2/D2 |
21 |
| - PA_3, // 3 - A3/D3 |
22 |
| - PB_1, // 4 - A4/D4 |
| 18 | + PA_0, // 0 - D0/A0 |
| 19 | + PA_1, // 1 - D1/A1 |
| 20 | + PA_2, // 2 - D2/A2 |
| 21 | + PA_3, // 3 - D3/A3 |
| 22 | + PB_1, // 4 - D4/A4 |
23 | 23 | PB_8, // 5 - D5
|
24 | 24 | PB_9, // 6 - D6
|
25 | 25 | PA_4, // 7 - BAT_VOLTAGE
|
@@ -114,43 +114,54 @@ WEAK void SystemClock_Config(void)
|
114 | 114 | if (HAL_PWREx_ControlVoltageScaling(PWR_REGULATOR_VOLTAGE_SCALE1) != HAL_OK) {
|
115 | 115 | Error_Handler();
|
116 | 116 | }
|
| 117 | + |
117 | 118 | /** Configure LSE Drive Capability
|
118 | 119 | */
|
119 | 120 | HAL_PWR_EnableBkUpAccess();
|
120 | 121 | __HAL_RCC_LSEDRIVE_CONFIG(RCC_LSEDRIVE_LOW);
|
| 122 | + |
121 | 123 | /** Initializes the RCC Oscillators according to the specified parameters
|
122 | 124 | * in the RCC_OscInitTypeDef structure.
|
123 | 125 | */
|
124 |
| - RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_LSE | RCC_OSCILLATORTYPE_MSI; |
| 126 | + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_LSE |
| 127 | + | RCC_OSCILLATORTYPE_MSI |
| 128 | + | RCC_OSCILLATORTYPE_HSI; |
125 | 129 | RCC_OscInitStruct.LSEState = RCC_LSE_ON;
|
126 | 130 | RCC_OscInitStruct.MSIState = RCC_MSI_ON;
|
127 | 131 | RCC_OscInitStruct.MSICalibrationValue = RCC_MSICALIBRATION_DEFAULT;
|
128 | 132 | RCC_OscInitStruct.MSIClockRange = RCC_MSIRANGE_11;
|
| 133 | + RCC_OscInitStruct.HSIState = RCC_HSI_ON; |
| 134 | + RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; |
129 | 135 | RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE;
|
130 | 136 | if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) {
|
131 | 137 | Error_Handler();
|
132 | 138 | }
|
| 139 | + |
133 | 140 | /** Initializes the CPU, AHB and APB buses clocks
|
134 | 141 | */
|
135 | 142 | RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK
|
136 | 143 | | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2;
|
137 |
| - RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; |
| 144 | +// RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; |
| 145 | + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_MSI; |
138 | 146 | RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
|
139 | 147 | RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
|
140 | 148 | RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
|
141 |
| - |
142 | 149 | if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) {
|
143 | 150 | Error_Handler();
|
144 | 151 | }
|
| 152 | + |
| 153 | + /** Initializes the Peripheral clocks |
| 154 | + */ |
145 | 155 | PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USB | RCC_PERIPHCLK_SDMMC1
|
146 |
| - | RCC_PERIPHCLK_ADC | RCC_PERIPHCLK_OSPI; |
| 156 | + | RCC_PERIPHCLK_ADC /* | RCC_PERIPHCLK_OSPI */; |
147 | 157 | PeriphClkInit.AdcClockSelection = RCC_ADCCLKSOURCE_SYSCLK;
|
148 |
| - PeriphClkInit.OspiClockSelection = RCC_OSPICLKSOURCE_SYSCLK; |
| 158 | +// PeriphClkInit.OspiClockSelection = RCC_OSPICLKSOURCE_SYSCLK; |
149 | 159 | PeriphClkInit.UsbClockSelection = RCC_USBCLKSOURCE_MSI;
|
150 | 160 | PeriphClkInit.Sdmmc1ClockSelection = RCC_SDMMC1CLKSOURCE_MSI;
|
151 | 161 | if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK) {
|
152 | 162 | Error_Handler();
|
153 | 163 | }
|
| 164 | + |
154 | 165 | /** Enable MSI Auto calibration
|
155 | 166 | */
|
156 | 167 | HAL_RCCEx_EnableMSIPLLMode();
|
|
0 commit comments