]> git.gir.st - tmk_keyboard.git/blob - tmk_core/tool/mbed/mbed-sdk/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_KLXX/TARGET_KL05Z/system_MKL05Z4.h
Merge commit '1fe4406f374291ab2e86e95a97341fd9c475fcb8'
[tmk_keyboard.git] / tmk_core / tool / mbed / mbed-sdk / libraries / mbed / targets / cmsis / TARGET_Freescale / TARGET_KLXX / TARGET_KL05Z / system_MKL05Z4.h
1 /*
2 ** ###################################################################
3 ** Processors: MKL05Z32FK4
4 ** MKL05Z32LC4
5 ** MKL05Z32VLF4
6 **
7 ** Compilers: ARM Compiler
8 ** Freescale C/C++ for Embedded ARM
9 ** GNU C Compiler
10 ** IAR ANSI C/C++ Compiler for ARM
11 **
12 ** Reference manual: KL05P48M48SF1RM, Rev.3, Sep 2012
13 ** Version: rev. 1.6, 2013-04-11
14 **
15 ** Abstract:
16 ** Provides a system configuration function and a global variable that
17 ** contains the system frequency. It configures the device and initializes
18 ** the oscillator (PLL) that is part of the microcontroller device.
19 **
20 ** Copyright: 2013 Freescale, Inc. All Rights Reserved.
21 **
22 ** http: www.freescale.com
23 ** mail: support@freescale.com
24 **
25 ** Revisions:
26 ** - rev. 1.0 (2012-06-08)
27 ** Initial version.
28 ** - rev. 1.1 (2012-06-21)
29 ** Update according to reference manual rev. 1.
30 ** - rev. 1.2 (2012-08-01)
31 ** Device type UARTLP changed to UART0.
32 ** Missing PORTB_IRQn interrupt number definition added.
33 ** - rev. 1.3 (2012-10-04)
34 ** Update according to reference manual rev. 3.
35 ** - rev. 1.4 (2012-11-22)
36 ** MCG module - bit LOLS in MCG_S register renamed to LOLS0.
37 ** NV registers - bit EZPORT_DIS in NV_FOPT register removed.
38 ** - rev. 1.5 (2013-04-05)
39 ** Changed start of doxygen comment.
40 ** - rev. 1.6 (2013-04-11)
41 ** SystemInit methods updated with predefined initialization sequence.
42 **
43 ** ###################################################################
44 */
45
46 /*!
47 * @file MKL05Z4
48 * @version 1.6
49 * @date 2013-04-11
50 * @brief Device specific configuration file for MKL05Z4 (header file)
51 *
52 * Provides a system configuration function and a global variable that contains
53 * the system frequency. It configures the device and initializes the oscillator
54 * (PLL) that is part of the microcontroller device.
55 */
56
57 #ifndef SYSTEM_MKL05Z4_H_
58 #define SYSTEM_MKL05Z4_H_ /**< Symbol preventing repeated inclusion */
59
60 #ifdef __cplusplus
61 extern "C" {
62 #endif
63
64 #include <stdint.h>
65
66 /**
67 * @brief System clock frequency (core clock)
68 *
69 * The system clock frequency supplied to the SysTick timer and the processor
70 * core clock. This variable can be used by the user application to setup the
71 * SysTick timer or configure other parameters. It may also be used by debugger to
72 * query the frequency of the debug timer or configure the trace clock speed
73 * SystemCoreClock is initialized with a correct predefined value.
74 */
75 extern uint32_t SystemCoreClock;
76
77 /**
78 * @brief Setup the microcontroller system.
79 *
80 * Typically this function configures the oscillator (PLL) that is part of the
81 * microcontroller device. For systems with variable clock speed it also updates
82 * the variable SystemCoreClock. SystemInit is called from startup_device file.
83 */
84 void SystemInit (void);
85
86 /**
87 * @brief Updates the SystemCoreClock variable.
88 *
89 * It must be called whenever the core clock is changed during program
90 * execution. SystemCoreClockUpdate() evaluates the clock register settings and calculates
91 * the current core clock.
92 */
93 void SystemCoreClockUpdate (void);
94
95 #ifdef __cplusplus
96 }
97 #endif
98
99 #endif /* #if !defined(SYSTEM_MKL05Z4_H_) */
Imprint / Impressum