1 /** 2 ****************************************************************************** 3 * @file system_stm32l1xx.h 4 * @author MCD Application Team 5 * @brief CMSIS Cortex-M3 Device System Source File for STM32L1xx 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 stm32l1xx_system 41 * @{ 42 */ 43 44 /** 45 * @brief Define to prevent recursive inclusion 46 */ 47 #ifndef __SYSTEM_STM32L1XX_H 48 #define __SYSTEM_STM32L1XX_H 49 50 #ifdef __cplusplus 51 extern "C" { 52 #endif 53 54 /** @addtogroup STM32L1xx_System_Includes 55 * @{ 56 */ 57 58 /** 59 * @} 60 */ 61 62 63 /** @addtogroup STM32L1xx_System_Exported_types 64 * @{ 65 */ 66 /* This 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 */ 77 extern const uint8_t AHBPrescTable[16]; /*!< AHB prescalers table values */ 78 extern const uint8_t APBPrescTable[8]; /*!< APB prescalers table values */ 79 extern const uint8_t PLLMulTable[9]; /*!< PLL multipiers table values */ 80 81 /** 82 * @} 83 */ 84 85 /** @addtogroup STM32L1xx_System_Exported_Constants 86 * @{ 87 */ 88 89 /** 90 * @} 91 */ 92 93 /** @addtogroup STM32L1xx_System_Exported_Macros 94 * @{ 95 */ 96 97 /** 98 * @} 99 */ 100 101 /** @addtogroup STM32L1xx_System_Exported_Functions 102 * @{ 103 */ 104 105 extern void SystemInit(void); 106 extern void SystemCoreClockUpdate(void); 107 /** 108 * @} 109 */ 110 111 #ifdef __cplusplus 112 } 113 #endif 114 115 #endif /*__SYSTEM_STM32L1XX_H */ 116 117 /** 118 * @} 119 */ 120 121 /** 122 * @} 123 */ 124 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ 125