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