1818/* USER CODE END Header */
1919/* Includes ------------------------------------------------------------------*/
2020#include "main.h"
21- #include "string.h"
2221
2322/* Private includes ----------------------------------------------------------*/
2423/* USER CODE BEGIN Includes */
4241
4342/* Private variables ---------------------------------------------------------*/
4443
45- ETH_TxPacketConfig TxConfig ;
46- ETH_DMADescTypeDef DMARxDscrTab [ETH_RX_DESC_CNT ]; /* Ethernet Rx DMA Descriptors */
47- ETH_DMADescTypeDef DMATxDscrTab [ETH_TX_DESC_CNT ]; /* Ethernet Tx DMA Descriptors */
48-
49- ETH_HandleTypeDef heth ;
50-
51- UART_HandleTypeDef huart3 ;
52-
53- PCD_HandleTypeDef hpcd_USB_OTG_FS ;
54-
5544/* USER CODE BEGIN PV */
5645
5746/* USER CODE END PV */
5847
5948/* Private function prototypes -----------------------------------------------*/
6049void SystemClock_Config (void );
61- static void MX_GPIO_Init (void );
62- static void MX_ETH_Init (void );
63- static void MX_USART3_UART_Init (void );
64- static void MX_USB_OTG_FS_PCD_Init (void );
6550/* USER CODE BEGIN PFP */
6651
6752/* USER CODE END PFP */
@@ -98,10 +83,6 @@ int main(void)
9883 /* USER CODE END SysInit */
9984
10085 /* Initialize all configured peripherals */
101- MX_GPIO_Init ();
102- MX_ETH_Init ();
103- MX_USART3_UART_Init ();
104- MX_USB_OTG_FS_PCD_Init ();
10586 /* USER CODE BEGIN 2 */
10687
10788 /* USER CODE END 2 */
@@ -129,19 +110,15 @@ void SystemClock_Config(void)
129110 /** Configure the main internal regulator output voltage
130111 */
131112 __HAL_RCC_PWR_CLK_ENABLE ();
132- __HAL_PWR_VOLTAGESCALING_CONFIG (PWR_REGULATOR_VOLTAGE_SCALE1 );
113+ __HAL_PWR_VOLTAGESCALING_CONFIG (PWR_REGULATOR_VOLTAGE_SCALE3 );
133114
134115 /** Initializes the RCC Oscillators according to the specified parameters
135116 * in the RCC_OscInitTypeDef structure.
136117 */
137- RCC_OscInitStruct .OscillatorType = RCC_OSCILLATORTYPE_HSE ;
138- RCC_OscInitStruct .HSEState = RCC_HSE_BYPASS ;
139- RCC_OscInitStruct .PLL .PLLState = RCC_PLL_ON ;
140- RCC_OscInitStruct .PLL .PLLSource = RCC_PLLSOURCE_HSE ;
141- RCC_OscInitStruct .PLL .PLLM = 4 ;
142- RCC_OscInitStruct .PLL .PLLN = 168 ;
143- RCC_OscInitStruct .PLL .PLLP = RCC_PLLP_DIV2 ;
144- RCC_OscInitStruct .PLL .PLLQ = 7 ;
118+ RCC_OscInitStruct .OscillatorType = RCC_OSCILLATORTYPE_HSI ;
119+ RCC_OscInitStruct .HSIState = RCC_HSI_ON ;
120+ RCC_OscInitStruct .HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT ;
121+ RCC_OscInitStruct .PLL .PLLState = RCC_PLL_NONE ;
145122 if (HAL_RCC_OscConfig (& RCC_OscInitStruct ) != HAL_OK )
146123 {
147124 Error_Handler ();
@@ -151,187 +128,15 @@ void SystemClock_Config(void)
151128 */
152129 RCC_ClkInitStruct .ClockType = RCC_CLOCKTYPE_HCLK |RCC_CLOCKTYPE_SYSCLK
153130 |RCC_CLOCKTYPE_PCLK1 |RCC_CLOCKTYPE_PCLK2 ;
154- RCC_ClkInitStruct .SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK ;
131+ RCC_ClkInitStruct .SYSCLKSource = RCC_SYSCLKSOURCE_HSI ;
155132 RCC_ClkInitStruct .AHBCLKDivider = RCC_SYSCLK_DIV1 ;
156133 RCC_ClkInitStruct .APB1CLKDivider = RCC_HCLK_DIV4 ;
157134 RCC_ClkInitStruct .APB2CLKDivider = RCC_HCLK_DIV2 ;
158135
159- if (HAL_RCC_ClockConfig (& RCC_ClkInitStruct , FLASH_LATENCY_5 ) != HAL_OK )
160- {
161- Error_Handler ();
162- }
163- }
164-
165- /**
166- * @brief ETH Initialization Function
167- * @param None
168- * @retval None
169- */
170- static void MX_ETH_Init (void )
171- {
172-
173- /* USER CODE BEGIN ETH_Init 0 */
174-
175- /* USER CODE END ETH_Init 0 */
176-
177- static uint8_t MACAddr [6 ];
178-
179- /* USER CODE BEGIN ETH_Init 1 */
180-
181- /* USER CODE END ETH_Init 1 */
182- heth .Instance = ETH ;
183- MACAddr [0 ] = 0x00 ;
184- MACAddr [1 ] = 0x80 ;
185- MACAddr [2 ] = 0xE1 ;
186- MACAddr [3 ] = 0x00 ;
187- MACAddr [4 ] = 0x00 ;
188- MACAddr [5 ] = 0x00 ;
189- heth .Init .MACAddr = & MACAddr [0 ];
190- heth .Init .MediaInterface = HAL_ETH_RMII_MODE ;
191- heth .Init .TxDesc = DMATxDscrTab ;
192- heth .Init .RxDesc = DMARxDscrTab ;
193- heth .Init .RxBuffLen = 1524 ;
194-
195- /* USER CODE BEGIN MACADDRESS */
196-
197- /* USER CODE END MACADDRESS */
198-
199- if (HAL_ETH_Init (& heth ) != HAL_OK )
200- {
201- Error_Handler ();
202- }
203-
204- memset (& TxConfig , 0 , sizeof (ETH_TxPacketConfig ));
205- TxConfig .Attributes = ETH_TX_PACKETS_FEATURES_CSUM | ETH_TX_PACKETS_FEATURES_CRCPAD ;
206- TxConfig .ChecksumCtrl = ETH_CHECKSUM_IPHDR_PAYLOAD_INSERT_PHDR_CALC ;
207- TxConfig .CRCPadCtrl = ETH_CRC_PAD_INSERT ;
208- /* USER CODE BEGIN ETH_Init 2 */
209-
210- /* USER CODE END ETH_Init 2 */
211-
212- }
213-
214- /**
215- * @brief USART3 Initialization Function
216- * @param None
217- * @retval None
218- */
219- static void MX_USART3_UART_Init (void )
220- {
221-
222- /* USER CODE BEGIN USART3_Init 0 */
223-
224- /* USER CODE END USART3_Init 0 */
225-
226- /* USER CODE BEGIN USART3_Init 1 */
227-
228- /* USER CODE END USART3_Init 1 */
229- huart3 .Instance = USART3 ;
230- huart3 .Init .BaudRate = 115200 ;
231- huart3 .Init .WordLength = UART_WORDLENGTH_8B ;
232- huart3 .Init .StopBits = UART_STOPBITS_1 ;
233- huart3 .Init .Parity = UART_PARITY_NONE ;
234- huart3 .Init .Mode = UART_MODE_TX_RX ;
235- huart3 .Init .HwFlowCtl = UART_HWCONTROL_NONE ;
236- huart3 .Init .OverSampling = UART_OVERSAMPLING_16 ;
237- if (HAL_UART_Init (& huart3 ) != HAL_OK )
238- {
239- Error_Handler ();
240- }
241- /* USER CODE BEGIN USART3_Init 2 */
242-
243- /* USER CODE END USART3_Init 2 */
244-
245- }
246-
247- /**
248- * @brief USB_OTG_FS Initialization Function
249- * @param None
250- * @retval None
251- */
252- static void MX_USB_OTG_FS_PCD_Init (void )
253- {
254-
255- /* USER CODE BEGIN USB_OTG_FS_Init 0 */
256-
257- /* USER CODE END USB_OTG_FS_Init 0 */
258-
259- /* USER CODE BEGIN USB_OTG_FS_Init 1 */
260-
261- /* USER CODE END USB_OTG_FS_Init 1 */
262- hpcd_USB_OTG_FS .Instance = USB_OTG_FS ;
263- hpcd_USB_OTG_FS .Init .dev_endpoints = 4 ;
264- hpcd_USB_OTG_FS .Init .speed = PCD_SPEED_FULL ;
265- hpcd_USB_OTG_FS .Init .dma_enable = DISABLE ;
266- hpcd_USB_OTG_FS .Init .phy_itface = PCD_PHY_EMBEDDED ;
267- hpcd_USB_OTG_FS .Init .Sof_enable = ENABLE ;
268- hpcd_USB_OTG_FS .Init .low_power_enable = DISABLE ;
269- hpcd_USB_OTG_FS .Init .lpm_enable = DISABLE ;
270- hpcd_USB_OTG_FS .Init .vbus_sensing_enable = ENABLE ;
271- hpcd_USB_OTG_FS .Init .use_dedicated_ep1 = DISABLE ;
272- if (HAL_PCD_Init (& hpcd_USB_OTG_FS ) != HAL_OK )
136+ if (HAL_RCC_ClockConfig (& RCC_ClkInitStruct , FLASH_LATENCY_0 ) != HAL_OK )
273137 {
274138 Error_Handler ();
275139 }
276- /* USER CODE BEGIN USB_OTG_FS_Init 2 */
277-
278- /* USER CODE END USB_OTG_FS_Init 2 */
279-
280- }
281-
282- /**
283- * @brief GPIO Initialization Function
284- * @param None
285- * @retval None
286- */
287- static void MX_GPIO_Init (void )
288- {
289- GPIO_InitTypeDef GPIO_InitStruct = {0 };
290- /* USER CODE BEGIN MX_GPIO_Init_1 */
291- /* USER CODE END MX_GPIO_Init_1 */
292-
293- /* GPIO Ports Clock Enable */
294- __HAL_RCC_GPIOC_CLK_ENABLE ();
295- __HAL_RCC_GPIOH_CLK_ENABLE ();
296- __HAL_RCC_GPIOA_CLK_ENABLE ();
297- __HAL_RCC_GPIOB_CLK_ENABLE ();
298- __HAL_RCC_GPIOD_CLK_ENABLE ();
299- __HAL_RCC_GPIOG_CLK_ENABLE ();
300-
301- /*Configure GPIO pin Output Level */
302- HAL_GPIO_WritePin (GPIOB , LD1_Pin |LD3_Pin |LD2_Pin , GPIO_PIN_RESET );
303-
304- /*Configure GPIO pin Output Level */
305- HAL_GPIO_WritePin (USB_PowerSwitchOn_GPIO_Port , USB_PowerSwitchOn_Pin , GPIO_PIN_RESET );
306-
307- /*Configure GPIO pin : USER_Btn_Pin */
308- GPIO_InitStruct .Pin = USER_Btn_Pin ;
309- GPIO_InitStruct .Mode = GPIO_MODE_IT_RISING ;
310- GPIO_InitStruct .Pull = GPIO_NOPULL ;
311- HAL_GPIO_Init (USER_Btn_GPIO_Port , & GPIO_InitStruct );
312-
313- /*Configure GPIO pins : LD1_Pin LD3_Pin LD2_Pin */
314- GPIO_InitStruct .Pin = LD1_Pin |LD3_Pin |LD2_Pin ;
315- GPIO_InitStruct .Mode = GPIO_MODE_OUTPUT_PP ;
316- GPIO_InitStruct .Pull = GPIO_NOPULL ;
317- GPIO_InitStruct .Speed = GPIO_SPEED_FREQ_LOW ;
318- HAL_GPIO_Init (GPIOB , & GPIO_InitStruct );
319-
320- /*Configure GPIO pin : USB_PowerSwitchOn_Pin */
321- GPIO_InitStruct .Pin = USB_PowerSwitchOn_Pin ;
322- GPIO_InitStruct .Mode = GPIO_MODE_OUTPUT_PP ;
323- GPIO_InitStruct .Pull = GPIO_NOPULL ;
324- GPIO_InitStruct .Speed = GPIO_SPEED_FREQ_LOW ;
325- HAL_GPIO_Init (USB_PowerSwitchOn_GPIO_Port , & GPIO_InitStruct );
326-
327- /*Configure GPIO pin : USB_OverCurrent_Pin */
328- GPIO_InitStruct .Pin = USB_OverCurrent_Pin ;
329- GPIO_InitStruct .Mode = GPIO_MODE_INPUT ;
330- GPIO_InitStruct .Pull = GPIO_NOPULL ;
331- HAL_GPIO_Init (USB_OverCurrent_GPIO_Port , & GPIO_InitStruct );
332-
333- /* USER CODE BEGIN MX_GPIO_Init_2 */
334- /* USER CODE END MX_GPIO_Init_2 */
335140}
336141
337142/* USER CODE BEGIN 4 */
0 commit comments