1 /** 2 ****************************************************************************** 3 * @file system_stm32f4xx.h 4 * @author MCD Application Team 5 * @brief CMSIS Cortex-M4 Device System Source File for STM32F4xx devices. 6 ****************************************************************************** 7 * @attention 8 * 9 * Copyright (c) 2017 STMicroelectronics. 10 * All rights reserved. 11 * 12 * This software is licensed under terms that can be found in the LICENSE file 13 * in the root directory of this software component. 14 * If no LICENSE file comes with this software, it is provided AS-IS. 15 * 16 ****************************************************************************** 17 */ 18 19 /** @addtogroup CMSIS 20 * @{ 21 */ 22 23 /** @addtogroup stm32f4xx_system 24 * @{ 25 */ 26 27 /** 28 * @brief Define to prevent recursive inclusion 29 */ 30 #ifndef __SYSTEM_STM32F4XX_H 31 #define __SYSTEM_STM32F4XX_H 32 33 #ifdef __cplusplus 34 extern "C" { 35 #endif 36 37 /** @addtogroup STM32F4xx_System_Includes 38 * @{ 39 */ 40 41 /** 42 * @} 43 */ 44 45 46 /** @addtogroup STM32F4xx_System_Exported_types 47 * @{ 48 */ 49 /* This variable is updated in three ways: 50 1) by calling CMSIS function SystemCoreClockUpdate() 51 2) by calling HAL API function HAL_RCC_GetSysClockFreq() 52 3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency 53 Note: If you use this function to configure the system clock; then there 54 is no need to call the 2 first functions listed above, since SystemCoreClock 55 variable is updated automatically. 56 */ 57 extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */ 58 59 extern const uint8_t AHBPrescTable[16]; /*!< AHB prescalers table values */ 60 extern const uint8_t APBPrescTable[8]; /*!< APB prescalers table values */ 61 62 /** 63 * @} 64 */ 65 66 /** @addtogroup STM32F4xx_System_Exported_Constants 67 * @{ 68 */ 69 70 /** 71 * @} 72 */ 73 74 /** @addtogroup STM32F4xx_System_Exported_Macros 75 * @{ 76 */ 77 78 /** 79 * @} 80 */ 81 82 /** @addtogroup STM32F4xx_System_Exported_Functions 83 * @{ 84 */ 85 86 extern void SystemInit(void); 87 extern void SystemCoreClockUpdate(void); 88 /** 89 * @} 90 */ 91 92 #ifdef __cplusplus 93 } 94 #endif 95 96 #endif /*__SYSTEM_STM32F4XX_H */ 97 98 /** 99 * @} 100 */ 101 102 /** 103 * @} 104 */ 105