Arrow / Mbed OS DAPLink Reset
Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers system_MK20D5.h Source File

system_MK20D5.h

00001 /*
00002 ** ###################################################################
00003 **     Compilers:           ARM Compiler
00004 **                          Freescale C/C++ for Embedded ARM
00005 **                          GNU C Compiler
00006 **                          IAR ANSI C/C++ Compiler for ARM
00007 **
00008 **     Reference manuals:   K20P64M50SF0RM Rev. 1, Oct 2011
00009 **                          K20P32M50SF0RM Rev. 1, Oct 2011
00010 **                          K20P48M50SF0RM Rev. 1, Oct 2011
00011 **
00012 **     Version:             rev. 2.0, 2012-03-19
00013 **
00014 **     Abstract:
00015 **         Provides a system configuration function and a global variable that
00016 **         contains the system frequency. It configures the device and initializes
00017 **         the oscillator (PLL) that is part of the microcontroller device.
00018 **
00019 **     Copyright: 2012 Freescale Semiconductor, Inc. All Rights Reserved.
00020 **
00021 **     http:                 www.freescale.com
00022 **     mail:                 support@freescale.com
00023 **
00024 **     Revisions:
00025 **     - rev. 1.0 (2011-12-15)
00026 **         Initial version
00027 **     - rev. 2.0 (2012-03-19)
00028 **         PDB Peripheral register structure updated.
00029 **         DMA Registers and bits for unsupported DMA channels removed.
00030 **
00031 ** ###################################################################
00032 */
00033 
00034 /**
00035  * @file MK20D5
00036  * @version 2.0
00037  * @date 2012-03-19
00038  * @brief Device specific configuration file for MK20D5 (header file)
00039  *
00040  * Provides a system configuration function and a global variable that contains
00041  * the system frequency. It configures the device and initializes the oscillator
00042  * (PLL) that is part of the microcontroller device.
00043  */
00044 
00045 #ifndef SYSTEM_MK20D5_H_
00046 #define SYSTEM_MK20D5_H_                         /**< Symbol preventing repeated inclusion */
00047 
00048 #ifdef __cplusplus
00049 extern "C" {
00050 #endif
00051 
00052 #include "stdint.h"
00053 
00054 /**
00055  * @brief System clock frequency (core clock)
00056  *
00057  * The system clock frequency supplied to the SysTick timer and the processor
00058  * core clock. This variable can be used by the user application to setup the
00059  * SysTick timer or configure other parameters. It may also be used by debugger to
00060  * query the frequency of the debug timer or configure the trace clock speed
00061  * SystemCoreClock is initialized with a correct predefined value.
00062  */
00063 extern uint32_t SystemCoreClock;
00064 
00065 /**
00066  * @brief Setup the microcontroller system.
00067  *
00068  * Typically this function configures the oscillator (PLL) that is part of the
00069  * microcontroller device. For systems with variable clock speed it also updates
00070  * the variable SystemCoreClock. SystemInit is called from startup_device file.
00071  */
00072 void SystemInit (void);
00073 
00074 /**
00075  * @brief Updates the SystemCoreClock variable.
00076  *
00077  * It must be called whenever the core clock is changed during program
00078  * execution. SystemCoreClockUpdate() evaluates the clock register settings and calculates
00079  * the current core clock.
00080  */
00081 void SystemCoreClockUpdate (void);
00082 
00083 #ifdef __cplusplus
00084 }
00085 #endif
00086 
00087 #endif  /* #if !defined(SYSTEM_MK20D5_H_) */