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