93 lines
2.7 KiB
C
93 lines
2.7 KiB
C
/**************************************************************************//**
|
||
* @file system_XMC4800.h
|
||
* @brief Header file for the XMC4800-Series systeminit
|
||
*
|
||
* @version V1.0
|
||
* @date 22. May 2015
|
||
*
|
||
* @note
|
||
* Copyright (C) 2015 Infineon Technologies AG. All rights reserved.
|
||
|
||
*
|
||
* @par
|
||
* Infineon Technologies AG (Infineon) is supplying this software for use with Infineon<6F>s microcontrollers.
|
||
* This file can be freely distributed within development tools that are supporting such microcontrollers.
|
||
|
||
*
|
||
* @par
|
||
* THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
|
||
* OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
|
||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
|
||
* INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
|
||
* CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
|
||
*
|
||
*
|
||
******************************************************************************/
|
||
|
||
#ifndef SYSTEM_XMC4800_H
|
||
#define SYSTEM_XMC4800_H
|
||
|
||
/*******************************************************************************
|
||
* HEADER FILES
|
||
*******************************************************************************/
|
||
|
||
#include <stdint.h>
|
||
|
||
/*******************************************************************************
|
||
* MACROS
|
||
*******************************************************************************/
|
||
|
||
#define OFI_FREQUENCY (24000000UL) /**< 24MHz Backup Clock (fOFI) frequency. */
|
||
#define OSI_FREQUENCY (32768UL) /**< 32KHz Internal Slow Clock source (fOSI) frequency. */
|
||
|
||
/*******************************************************************************
|
||
* GLOBAL VARIABLES
|
||
*******************************************************************************/
|
||
|
||
extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */
|
||
extern uint8_t g_chipid[16];
|
||
|
||
/*******************************************************************************
|
||
* API PROTOTYPES
|
||
*******************************************************************************/
|
||
|
||
#ifdef __cplusplus
|
||
extern "C" {
|
||
#endif
|
||
|
||
/**
|
||
* @brief Initialize the system
|
||
*
|
||
*/
|
||
void SystemInit(void);
|
||
|
||
/**
|
||
* @brief Initialize CPU settings
|
||
*
|
||
*/
|
||
void SystemCoreSetup(void);
|
||
|
||
/**
|
||
* @brief Initialize clock
|
||
*
|
||
*/
|
||
void SystemCoreClockSetup(void);
|
||
|
||
/**
|
||
* @brief Update SystemCoreClock variable
|
||
*
|
||
*/
|
||
void SystemCoreClockUpdate(void);
|
||
|
||
/**
|
||
* @brief Returns frequency of the high performace oscillator
|
||
* User needs to overload this function to return the correct oscillator frequency
|
||
*/
|
||
uint32_t OSCHP_GetFrequency(void);
|
||
|
||
#ifdef __cplusplus
|
||
}
|
||
#endif
|
||
|
||
#endif
|