my fork
Fork of mbed by
KL25Z/system_MKL25Z4.h@60:3d0ef94e36ec, 2013-02-19 (annotated)
- Committer:
- emilmont
- Date:
- Tue Feb 19 10:00:15 2013 +0000
- Revision:
- 60:3d0ef94e36ec
Add Freescale FRDM-KL25Z
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
emilmont | 60:3d0ef94e36ec | 1 | /* |
emilmont | 60:3d0ef94e36ec | 2 | ** ################################################################### |
emilmont | 60:3d0ef94e36ec | 3 | ** Processor: MKL25Z128VLK4 |
emilmont | 60:3d0ef94e36ec | 4 | ** Compilers: ARM Compiler |
emilmont | 60:3d0ef94e36ec | 5 | ** Freescale C/C++ for Embedded ARM |
emilmont | 60:3d0ef94e36ec | 6 | ** GNU C Compiler |
emilmont | 60:3d0ef94e36ec | 7 | ** IAR ANSI C/C++ Compiler for ARM |
emilmont | 60:3d0ef94e36ec | 8 | ** |
emilmont | 60:3d0ef94e36ec | 9 | ** Reference manual: KL25RM, Rev.1, Jun 2012 |
emilmont | 60:3d0ef94e36ec | 10 | ** Version: rev. 1.1, 2012-06-21 |
emilmont | 60:3d0ef94e36ec | 11 | ** |
emilmont | 60:3d0ef94e36ec | 12 | ** Abstract: |
emilmont | 60:3d0ef94e36ec | 13 | ** Provides a system configuration function and a global variable that |
emilmont | 60:3d0ef94e36ec | 14 | ** contains the system frequency. It configures the device and initializes |
emilmont | 60:3d0ef94e36ec | 15 | ** the oscillator (PLL) that is part of the microcontroller device. |
emilmont | 60:3d0ef94e36ec | 16 | ** |
emilmont | 60:3d0ef94e36ec | 17 | ** Copyright: 2012 Freescale Semiconductor, Inc. All Rights Reserved. |
emilmont | 60:3d0ef94e36ec | 18 | ** |
emilmont | 60:3d0ef94e36ec | 19 | ** http: www.freescale.com |
emilmont | 60:3d0ef94e36ec | 20 | ** mail: support@freescale.com |
emilmont | 60:3d0ef94e36ec | 21 | ** |
emilmont | 60:3d0ef94e36ec | 22 | ** Revisions: |
emilmont | 60:3d0ef94e36ec | 23 | ** - rev. 1.0 (2012-06-13) |
emilmont | 60:3d0ef94e36ec | 24 | ** Initial version. |
emilmont | 60:3d0ef94e36ec | 25 | ** - rev. 1.1 (2012-06-21) |
emilmont | 60:3d0ef94e36ec | 26 | ** Update according to reference manual rev. 1. |
emilmont | 60:3d0ef94e36ec | 27 | ** |
emilmont | 60:3d0ef94e36ec | 28 | ** ################################################################### |
emilmont | 60:3d0ef94e36ec | 29 | */ |
emilmont | 60:3d0ef94e36ec | 30 | |
emilmont | 60:3d0ef94e36ec | 31 | /** |
emilmont | 60:3d0ef94e36ec | 32 | * @file MKL25Z4 |
emilmont | 60:3d0ef94e36ec | 33 | * @version 1.1 |
emilmont | 60:3d0ef94e36ec | 34 | * @date 2012-06-21 |
emilmont | 60:3d0ef94e36ec | 35 | * @brief Device specific configuration file for MKL25Z4 (header file) |
emilmont | 60:3d0ef94e36ec | 36 | * |
emilmont | 60:3d0ef94e36ec | 37 | * Provides a system configuration function and a global variable that contains |
emilmont | 60:3d0ef94e36ec | 38 | * the system frequency. It configures the device and initializes the oscillator |
emilmont | 60:3d0ef94e36ec | 39 | * (PLL) that is part of the microcontroller device. |
emilmont | 60:3d0ef94e36ec | 40 | */ |
emilmont | 60:3d0ef94e36ec | 41 | |
emilmont | 60:3d0ef94e36ec | 42 | #ifndef SYSTEM_MKL25Z4_H_ |
emilmont | 60:3d0ef94e36ec | 43 | #define SYSTEM_MKL25Z4_H_ /**< Symbol preventing repeated inclusion */ |
emilmont | 60:3d0ef94e36ec | 44 | |
emilmont | 60:3d0ef94e36ec | 45 | #ifdef __cplusplus |
emilmont | 60:3d0ef94e36ec | 46 | extern "C" { |
emilmont | 60:3d0ef94e36ec | 47 | #endif |
emilmont | 60:3d0ef94e36ec | 48 | |
emilmont | 60:3d0ef94e36ec | 49 | #include <stdint.h> |
emilmont | 60:3d0ef94e36ec | 50 | |
emilmont | 60:3d0ef94e36ec | 51 | /** |
emilmont | 60:3d0ef94e36ec | 52 | * @brief System clock frequency (core clock) |
emilmont | 60:3d0ef94e36ec | 53 | * |
emilmont | 60:3d0ef94e36ec | 54 | * The system clock frequency supplied to the SysTick timer and the processor |
emilmont | 60:3d0ef94e36ec | 55 | * core clock. This variable can be used by the user application to setup the |
emilmont | 60:3d0ef94e36ec | 56 | * SysTick timer or configure other parameters. It may also be used by debugger to |
emilmont | 60:3d0ef94e36ec | 57 | * query the frequency of the debug timer or configure the trace clock speed |
emilmont | 60:3d0ef94e36ec | 58 | * SystemCoreClock is initialized with a correct predefined value. |
emilmont | 60:3d0ef94e36ec | 59 | */ |
emilmont | 60:3d0ef94e36ec | 60 | extern uint32_t SystemCoreClock; |
emilmont | 60:3d0ef94e36ec | 61 | |
emilmont | 60:3d0ef94e36ec | 62 | /** |
emilmont | 60:3d0ef94e36ec | 63 | * @brief Setup the microcontroller system. |
emilmont | 60:3d0ef94e36ec | 64 | * |
emilmont | 60:3d0ef94e36ec | 65 | * Typically this function configures the oscillator (PLL) that is part of the |
emilmont | 60:3d0ef94e36ec | 66 | * microcontroller device. For systems with variable clock speed it also updates |
emilmont | 60:3d0ef94e36ec | 67 | * the variable SystemCoreClock. SystemInit is called from startup_device file. |
emilmont | 60:3d0ef94e36ec | 68 | */ |
emilmont | 60:3d0ef94e36ec | 69 | void SystemInit (void); |
emilmont | 60:3d0ef94e36ec | 70 | |
emilmont | 60:3d0ef94e36ec | 71 | /** |
emilmont | 60:3d0ef94e36ec | 72 | * @brief Updates the SystemCoreClock variable. |
emilmont | 60:3d0ef94e36ec | 73 | * |
emilmont | 60:3d0ef94e36ec | 74 | * It must be called whenever the core clock is changed during program |
emilmont | 60:3d0ef94e36ec | 75 | * execution. SystemCoreClockUpdate() evaluates the clock register settings and calculates |
emilmont | 60:3d0ef94e36ec | 76 | * the current core clock. |
emilmont | 60:3d0ef94e36ec | 77 | */ |
emilmont | 60:3d0ef94e36ec | 78 | void SystemCoreClockUpdate (void); |
emilmont | 60:3d0ef94e36ec | 79 | |
emilmont | 60:3d0ef94e36ec | 80 | #ifdef __cplusplus |
emilmont | 60:3d0ef94e36ec | 81 | } |
emilmont | 60:3d0ef94e36ec | 82 | #endif |
emilmont | 60:3d0ef94e36ec | 83 | |
emilmont | 60:3d0ef94e36ec | 84 | #endif /* #if !defined(SYSTEM_MKL25Z4_H_) */ |