1 /**
2   ******************************************************************************
3   * @file    system_stm32g4xx.h
4   * @author  MCD Application Team
5   * @brief   CMSIS Cortex-M4 Device System Source File for STM32G4xx devices.
6   ******************************************************************************
7   * @attention
8   *
9   * <h2><center>&copy; Copyright (c) 2019 STMicroelectronics.
10   * All rights reserved.</center></h2>
11   *
12   * This software component is licensed by ST under BSD 3-Clause license,
13   * the "License"; You may not use this file except in compliance with the
14   * License. You may obtain a copy of the License at:
15   *                        opensource.org/licenses/BSD-3-Clause
16   *
17   ******************************************************************************
18   */
19 
20 /** @addtogroup CMSIS
21   * @{
22   */
23 
24 /** @addtogroup stm32g4xx_system
25   * @{
26   */
27 
28 /**
29   * @brief Define to prevent recursive inclusion
30   */
31 #ifndef __SYSTEM_STM32G4XX_H
32 #define __SYSTEM_STM32G4XX_H
33 
34 #ifdef __cplusplus
35  extern "C" {
36 #endif
37 
38 /** @addtogroup STM32G4xx_System_Includes
39   * @{
40   */
41 
42 /**
43   * @}
44   */
45 
46 
47 /** @addtogroup STM32G4xx_System_Exported_Variables
48   * @{
49   */
50   /* The SystemCoreClock variable is updated in three ways:
51       1) by calling CMSIS function SystemCoreClockUpdate()
52       2) by calling HAL API function HAL_RCC_GetSysClockFreq()
53       3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency
54          Note: If you use this function to configure the system clock; then there
55                is no need to call the 2 first functions listed above, since SystemCoreClock
56                variable is updated automatically.
57   */
58 extern uint32_t SystemCoreClock;            /*!< System Clock Frequency (Core Clock) */
59 
60 extern const uint8_t  AHBPrescTable[16];    /*!< AHB prescalers table values */
61 extern const uint8_t  APBPrescTable[8];     /*!< APB prescalers table values */
62 
63 /**
64   * @}
65   */
66 
67 /** @addtogroup STM32G4xx_System_Exported_Constants
68   * @{
69   */
70 
71 /**
72   * @}
73   */
74 
75 /** @addtogroup STM32G4xx_System_Exported_Macros
76   * @{
77   */
78 
79 /**
80   * @}
81   */
82 
83 /** @addtogroup STM32G4xx_System_Exported_Functions
84   * @{
85   */
86 
87 extern void SystemInit(void);
88 extern void SystemCoreClockUpdate(void);
89 /**
90   * @}
91   */
92 
93 #ifdef __cplusplus
94 }
95 #endif
96 
97 #endif /*__SYSTEM_STM32G4XX_H */
98 
99 /**
100   * @}
101   */
102 
103 /**
104   * @}
105   */
106 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
107