stm32l475/Core/Src/main.c
/**
  * @brief System Clock Configuration
  * @retval None
  */
@brief System Clock Configuration
@retval None
@brief System Clock Configuration @retval None
void SystemClock_Config(void)
{
  RCC_OscInitTypeDef RCC_OscInitStruct = {0};
  RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
  RCC_PeriphCLKInitTypeDef PeriphClkInit = {0};
  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_MSI;
  RCC_OscInitStruct.MSIState = RCC_MSI_ON;
  RCC_OscInitStruct.MSICalibrationValue = 0;
  RCC_OscInitStruct.MSIClockRange = RCC_MSIRANGE_6;
  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
  RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_MSI;
  RCC_OscInitStruct.PLL.PLLM = 1;
  RCC_OscInitStruct.PLL.PLLN = 40;
  RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV7;
  RCC_OscInitStruct.PLL.PLLQ = RCC_PLLQ_DIV2;
  RCC_OscInitStruct.PLL.PLLR = RCC_PLLR_DIV2;
  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
  {
    Error_Handler();
  }
  RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
                              |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
  RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
  RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
  RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_4) != HAL_OK)
  {
    Error_Handler();
  }
  PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USART1;
  PeriphClkInit.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2;
  if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)
  {
    Error_Handler();
  }
  if (HAL_PWREx_ControlVoltageScaling(PWR_REGULATOR_VOLTAGE_SCALE1) != HAL_OK)
  {
    Error_Handler();
  }
}
void SystemClock_Config ( void ) { RCC_OscInitTypeDef RCC_OscInitStruct = { 0 } ; RCC_ClkInitTypeDef RCC_ClkInitStruct = { 0 } ; RCC_PeriphCLKInitTypeDef PeriphClkInit = { 0 } ; RCC_OscInitStruct . OscillatorType = RCC_OSCILLATORTYPE_MSI ; RCC_OscInitStruct . MSIState = RCC_MSI_ON ; RCC_OscInitStruct . MSICalibrationValue = 0 ; RCC_OscInitStruct . MSIClockRange = RCC_MSIRANGE_6 ; RCC_OscInitStruct . PLL . PLLState = RCC_PLL_ON ; RCC_OscInitStruct . PLL . PLLSource = RCC_PLLSOURCE_MSI ; RCC_OscInitStruct . PLL . PLLM = 1 ; RCC_OscInitStruct . PLL . PLLN = 40 ; RCC_OscInitStruct . PLL . PLLP = RCC_PLLP_DIV7 ; RCC_OscInitStruct . PLL . PLLQ = RCC_PLLQ_DIV2 ; RCC_OscInitStruct . PLL . PLLR = RCC_PLLR_DIV2 ; if ( HAL_RCC_OscConfig ( & RCC_OscInitStruct ) != HAL_OK ) { Error_Handler ( ) ; } RCC_ClkInitStruct . ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2 ; RCC_ClkInitStruct . SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK ; RCC_ClkInitStruct . AHBCLKDivider = RCC_SYSCLK_DIV1 ; RCC_ClkInitStruct . APB1CLKDivider = RCC_HCLK_DIV1 ; RCC_ClkInitStruct . APB2CLKDivider = RCC_HCLK_DIV1 ; if ( HAL_RCC_ClockConfig ( & RCC_ClkInitStruct , FLASH_LATENCY_4 ) != HAL_OK ) { Error_Handler ( ) ; } PeriphClkInit . PeriphClockSelection = RCC_PERIPHCLK_USART1 ; PeriphClkInit . Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2 ; if ( HAL_RCCEx_PeriphCLKConfig ( & PeriphClkInit ) != HAL_OK ) { Error_Handler ( ) ; } if ( HAL_PWREx_ControlVoltageScaling ( PWR_REGULATOR_VOLTAGE_SCALE1 ) != HAL_OK ) { Error_Handler ( ) ; } }
@brief System Clock Configuration
 @retval None
@brief System Clock Configuration @retval None
/** Initializes the CPU, AHB and APB busses clocks 
  */ /** Initializes the CPU, AHB and APB busses clocks 
  */ /** Configure the main internal regulator output voltage 
  */