embox
56 строк · 1.9 Кб
1/**
2* @file
3* @brief
4*
5* @author Anton Kozlov
6* @date 30.10.2014
7*/
8
9#include <bsp/stm32cube_hal.h>10
11/**
12* @brief System Clock Configuration
13* The system Clock is configured as follow :
14* System Clock source = PLL (HSE)
15* SYSCLK(Hz) = 24000000
16* HCLK(Hz) = 24000000
17* AHB Prescaler = 1
18* APB1 Prescaler = 1
19* APB2 Prescaler = 1
20* HSE Frequency(Hz) = 8000000
21* HSE PREDIV1 = 2
22* PLLMUL = 6
23* Flash Latency(WS) = 0
24* @param None
25* @retval None
26*/
27void SystemClock_Config(void) {28RCC_ClkInitTypeDef clkinitstruct = {0};29RCC_OscInitTypeDef oscinitstruct = {0};30
31/* Enable HSE Oscillator and activate PLL with HSE as source */32oscinitstruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;33oscinitstruct.HSEState = RCC_HSE_ON;34oscinitstruct.HSEPredivValue = RCC_HSE_PREDIV_DIV2;35oscinitstruct.PLL.PLLState = RCC_PLL_ON;36oscinitstruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;37oscinitstruct.PLL.PLLMUL = RCC_PLL_MUL6;38if (HAL_RCC_OscConfig(&oscinitstruct) != HAL_OK) {39/* Initialization Error */40while (1) {}41}42
43/* Select PLL as system clock source and configure the HCLK, PCLK1 and PCLK244clocks dividers */
45clkinitstruct.ClockType = (RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK46| RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2);47clkinitstruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;48clkinitstruct.AHBCLKDivider = RCC_SYSCLK_DIV1;49clkinitstruct.APB2CLKDivider = RCC_HCLK_DIV1;50clkinitstruct.APB1CLKDivider = RCC_HCLK_DIV1;51if (HAL_RCC_ClockConfig(&clkinitstruct, FLASH_LATENCY_0) != HAL_OK) {52/* Initialization Error */53while (1)54;55}56}
57