embox

Форк
0
57 строк · 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
  */
27
void SystemClock_Config(void) {
28
	RCC_ClkInitTypeDef clkinitstruct = {0};
29
	RCC_OscInitTypeDef oscinitstruct = {0};
30

31
	/* Enable HSE Oscillator and activate PLL with HSE as source */
32
	oscinitstruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
33
	oscinitstruct.HSEState = RCC_HSE_ON;
34
	oscinitstruct.HSEPredivValue = RCC_HSE_PREDIV_DIV2;
35
	oscinitstruct.PLL.PLLState = RCC_PLL_ON;
36
	oscinitstruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
37
	oscinitstruct.PLL.PLLMUL = RCC_PLL_MUL6;
38
	if (HAL_RCC_OscConfig(&oscinitstruct) != HAL_OK) {
39
		/* Initialization Error */
40
		while (1)
41
			;
42
	}
43

44
	/* Select PLL as system clock source and configure the HCLK, PCLK1 and PCLK2
45
     clocks dividers */
46
	clkinitstruct.ClockType = (RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK
47
	                           | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2);
48
	clkinitstruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
49
	clkinitstruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
50
	clkinitstruct.APB2CLKDivider = RCC_HCLK_DIV1;
51
	clkinitstruct.APB1CLKDivider = RCC_HCLK_DIV1;
52
	if (HAL_RCC_ClockConfig(&clkinitstruct, FLASH_LATENCY_0) != HAL_OK) {
53
		/* Initialization Error */
54
		while (1)
55
			;
56
	}
57
}
58

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.