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>&copy; 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