1 /** 2 ****************************************************************************** 3 * @file system_stm32l4xx.h 4 * @author MCD Application Team 5 * @brief CMSIS Cortex-M4 Device System Source File for STM32L4xx devices. 6 ****************************************************************************** 7 * @attention 8 * 9 * <h2><center>© COPYRIGHT(c) 2017 STMicroelectronics</center></h2> 10 * 11 * Redistribution and use in source and binary forms, with or without modification, 12 * are permitted provided that the following conditions are met: 13 * 1. Redistributions of source code must retain the above copyright notice, 14 * this list of conditions and the following disclaimer. 15 * 2. Redistributions in binary form must reproduce the above copyright notice, 16 * this list of conditions and the following disclaimer in the documentation 17 * and/or other materials provided with the distribution. 18 * 3. Neither the name of STMicroelectronics nor the names of its contributors 19 * may be used to endorse or promote products derived from this software 20 * without specific prior written permission. 21 * 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 25 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 28 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 30 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 * 33 ****************************************************************************** 34 */ 35 36 /** @addtogroup CMSIS 37 * @{ 38 */ 39 40 /** @addtogroup stm32l4xx_system 41 * @{ 42 */ 43 44 /** 45 * @brief Define to prevent recursive inclusion 46 */ 47 #ifndef __SYSTEM_STM32L4XX_H 48 #define __SYSTEM_STM32L4XX_H 49 50 #ifdef __cplusplus 51 extern "C" { 52 #endif 53 54 /** @addtogroup STM32L4xx_System_Includes 55 * @{ 56 */ 57 58 /** 59 * @} 60 */ 61 62 63 /** @addtogroup STM32L4xx_System_Exported_Variables 64 * @{ 65 */ 66 /* The SystemCoreClock variable is updated in three ways: 67 1) by calling CMSIS function SystemCoreClockUpdate() 68 2) by calling HAL API function HAL_RCC_GetSysClockFreq() 69 3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency 70 Note: If you use this function to configure the system clock; then there 71 is no need to call the 2 first functions listed above, since SystemCoreClock 72 variable is updated automatically. 73 */ 74 extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */ 75 76 extern const uint8_t AHBPrescTable[16]; /*!< AHB prescalers table values */ 77 extern const uint8_t APBPrescTable[8]; /*!< APB prescalers table values */ 78 extern const uint32_t MSIRangeTable[12]; /*!< MSI ranges table values */ 79 80 /** 81 * @} 82 */ 83 84 /** @addtogroup STM32L4xx_System_Exported_Constants 85 * @{ 86 */ 87 88 /** 89 * @} 90 */ 91 92 /** @addtogroup STM32L4xx_System_Exported_Macros 93 * @{ 94 */ 95 96 /** 97 * @} 98 */ 99 100 /** @addtogroup STM32L4xx_System_Exported_Functions 101 * @{ 102 */ 103 104 extern void SystemInit(void); 105 extern void SystemCoreClockUpdate(void); 106 /** 107 * @} 108 */ 109 110 #ifdef __cplusplus 111 } 112 #endif 113 114 #endif /*__SYSTEM_STM32L4XX_H */ 115 116 /** 117 * @} 118 */ 119 120 /** 121 * @} 122 */ 123 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ 124