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