]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_MPU_M33F_NXP_LPC55S69_MCUXpresso/NXP_Code/device/system_LPC55S69_cm33_core0.h
commit 9f316c246baafa15c542a5aea81a94f26e3d6507
[freertos] / FreeRTOS / Demo / CORTEX_MPU_M33F_NXP_LPC55S69_MCUXpresso / NXP_Code / device / system_LPC55S69_cm33_core0.h
1 /*\r
2 ** ###################################################################\r
3 **     Processors:          LPC55S69JBD100_cm33_core0\r
4 **                          LPC55S69JBD64_cm33_core0\r
5 **                          LPC55S69JEV98_cm33_core0\r
6 **\r
7 **     Compilers:           GNU C Compiler\r
8 **                          IAR ANSI C/C++ Compiler for ARM\r
9 **                          Keil ARM C/C++ Compiler\r
10 **                          MCUXpresso Compiler\r
11 **\r
12 **     Reference manual:    LPC55S6x/LPC55S2x/LPC552x User manual(UM11126) Rev.1.3  16 May 2019\r
13 **     Version:             rev. 1.1, 2019-05-16\r
14 **     Build:               b190830\r
15 **\r
16 **     Abstract:\r
17 **         Provides a system configuration function and a global variable that\r
18 **         contains the system frequency. It configures the device and initializes\r
19 **         the oscillator (PLL) that is part of the microcontroller device.\r
20 **\r
21 **     Copyright 2016 Freescale Semiconductor, Inc.\r
22 **     Copyright 2016-2019 NXP\r
23 **     All rights reserved.\r
24 **\r
25 **     SPDX-License-Identifier: BSD-3-Clause\r
26 **\r
27 **     http:                 www.nxp.com\r
28 **     mail:                 support@nxp.com\r
29 **\r
30 **     Revisions:\r
31 **     - rev. 1.0 (2018-08-22)\r
32 **         Initial version based on v0.2UM\r
33 **     - rev. 1.1 (2019-05-16)\r
34 **         Initial A1 version based on v1.3UM\r
35 **\r
36 ** ###################################################################\r
37 */\r
38 \r
39 /*!\r
40  * @file LPC55S69_cm33_core0\r
41  * @version 1.1\r
42  * @date 2019-05-16\r
43  * @brief Device specific configuration file for LPC55S69_cm33_core0 (header\r
44  *        file)\r
45  *\r
46  * Provides a system configuration function and a global variable that contains\r
47  * the system frequency. It configures the device and initializes the oscillator\r
48  * (PLL) that is part of the microcontroller device.\r
49  */\r
50 \r
51 #ifndef _SYSTEM_LPC55S69_cm33_core0_H_\r
52 #define _SYSTEM_LPC55S69_cm33_core0_H_ /**< Symbol preventing repeated inclusion */\r
53 \r
54 #ifdef __cplusplus\r
55 extern "C" {\r
56 #endif\r
57 \r
58 #include <stdint.h>\r
59 \r
60 #define DEFAULT_SYSTEM_CLOCK 12000000u /* Default System clock value */\r
61 #define CLK_RTC_32K_CLK 32768u         /* RTC oscillator 32 kHz output (32k_clk */\r
62 #define CLK_FRO_12MHZ 12000000u        /* FRO 12 MHz (fro_12m) */\r
63 #define CLK_FRO_48MHZ 48000000u        /* FRO 48 MHz (fro_48m) */\r
64 #define CLK_FRO_96MHZ 96000000u        /* FRO 96 MHz (fro_96m) */\r
65 #define CLK_CLK_IN 16000000u           /* Default CLK_IN pin clock */\r
66 \r
67 /**\r
68  * @brief System clock frequency (core clock)\r
69  *\r
70  * The system clock frequency supplied to the SysTick timer and the processor\r
71  * core clock. This variable can be used by the user application to setup the\r
72  * SysTick timer or configure other parameters. It may also be used by debugger to\r
73  * query the frequency of the debug timer or configure the trace clock speed\r
74  * SystemCoreClock is initialized with a correct predefined value.\r
75  */\r
76 extern uint32_t SystemCoreClock;\r
77 \r
78 /**\r
79  * @brief Setup the microcontroller system.\r
80  *\r
81  * Typically this function configures the oscillator (PLL) that is part of the\r
82  * microcontroller device. For systems with variable clock speed it also updates\r
83  * the variable SystemCoreClock. SystemInit is called from startup_device file.\r
84  */\r
85 void SystemInit(void);\r
86 \r
87 /**\r
88  * @brief Updates the SystemCoreClock variable.\r
89  *\r
90  * It must be called whenever the core clock is changed during program\r
91  * execution. SystemCoreClockUpdate() evaluates the clock register settings and calculates\r
92  * the current core clock.\r
93  */\r
94 void SystemCoreClockUpdate(void);\r
95 \r
96 /**\r
97  * @brief SystemInit function hook.\r
98  *\r
99  * This weak function allows to call specific initialization code during the\r
100  * SystemInit() execution.This can be used when an application specific code needs\r
101  * to be called as close to the reset entry as possible (for example the Multicore\r
102  * Manager MCMGR_EarlyInit() function call).\r
103  * NOTE: No global r/w variables can be used in this hook function because the\r
104  * initialization of these variables happens after this function.\r
105  */\r
106 void SystemInitHook(void);\r
107 \r
108 #ifdef __cplusplus\r
109 }\r
110 #endif\r
111 \r
112 #endif /* _SYSTEM_LPC55S69_cm33_core0_H_ */\r