00001 /***************************************************************************/ 00033 #ifndef __SYSTEM_EFM32LG_H 00034 #define __SYSTEM_EFM32LG_H 00035 00036 #ifdef __cplusplus 00037 extern "C" { 00038 #endif 00039 00040 #include <stdint.h> 00041 00042 /******************************************************************************* 00043 ************************** GLOBAL VARIABLES ******************************* 00044 ******************************************************************************/ 00045 00046 extern uint32_t SystemCoreClock; 00048 /******************************************************************************* 00049 ***************************** PROTOTYPES ********************************** 00050 ******************************************************************************/ 00051 00052 /* Interrupt routines - prototypes */ 00053 #if defined(_EFM32_GIANT_FAMILY) 00054 void Reset_Handler(void); 00055 void NMI_Handler(void); 00056 void HardFault_Handler(void); 00057 void MemManage_Handler(void); 00058 void BusFault_Handler(void); 00059 void UsageFault_Handler(void); 00060 void SVC_Handler(void); 00061 void DebugMon_Handler(void); 00062 void PendSV_Handler(void); 00063 void SysTick_Handler(void); 00064 void DMA_IRQHandler(void); 00065 void GPIO_EVEN_IRQHandler(void); 00066 void TIMER0_IRQHandler(void); 00067 void USART0_RX_IRQHandler(void); 00068 void USART0_TX_IRQHandler(void); 00069 void USB_IRQHandler(void); 00070 void ACMP0_IRQHandler(void); 00071 void ADC0_IRQHandler(void); 00072 void DAC0_IRQHandler(void); 00073 void I2C0_IRQHandler(void); 00074 void I2C1_IRQHandler(void); 00075 void GPIO_ODD_IRQHandler(void); 00076 void TIMER1_IRQHandler(void); 00077 void TIMER2_IRQHandler(void); 00078 void TIMER3_IRQHandler(void); 00079 void USART1_RX_IRQHandler(void); 00080 void USART1_TX_IRQHandler(void); 00081 void LESENSE_IRQHandler(void); 00082 void USART2_RX_IRQHandler(void); 00083 void USART2_TX_IRQHandler(void); 00084 void UART0_RX_IRQHandler(void); 00085 void UART0_TX_IRQHandler(void); 00086 void UART1_RX_IRQHandler(void); 00087 void UART1_TX_IRQHandler(void); 00088 void LEUART0_IRQHandler(void); 00089 void LEUART1_IRQHandler(void); 00090 void LETIMER0_IRQHandler(void); 00091 void PCNT0_IRQHandler(void); 00092 void PCNT1_IRQHandler(void); 00093 void PCNT2_IRQHandler(void); 00094 void RTC_IRQHandler(void); 00095 void BURTC_IRQHandler(void); 00096 void CMU_IRQHandler(void); 00097 void VCMP_IRQHandler(void); 00098 void LCD_IRQHandler(void); 00099 void MSC_IRQHandler(void); 00100 void AES_IRQHandler(void); 00101 void EBI_IRQHandler(void); 00102 void EMU_IRQHandler(void); 00103 #endif 00104 00105 uint32_t SystemCoreClockGet(void); 00106 00107 /**************************************************************************/ 00121 static __INLINE void SystemCoreClockUpdate(void) 00122 { 00123 SystemCoreClockGet(); 00124 } 00125 00126 void SystemInit(void); 00127 uint32_t SystemHFClockGet(void); 00128 uint32_t SystemHFXOClockGet(void); 00129 void SystemHFXOClockSet(uint32_t freq); 00130 uint32_t SystemLFRCOClockGet(void); 00131 uint32_t SystemULFRCOClockGet(void); 00132 uint32_t SystemLFXOClockGet(void); 00133 void SystemLFXOClockSet(uint32_t freq); 00134 00135 #ifdef __cplusplus 00136 } 00137 #endif 00138 #endif /* __SYSTEM_EFM32LG_H */