EFM32 Gecko Software Documentation
efm32g-doc-4.2.1
|
CMSIS Cortex-M3 System Layer for EFM32G devices. More...
#include <stdint.h>
Go to the source code of this file.
Functions | |
void | Reset_Handler (void) |
void | NMI_Handler (void) |
void | HardFault_Handler (void) |
void | MemManage_Handler (void) |
void | BusFault_Handler (void) |
void | UsageFault_Handler (void) |
void | SVC_Handler (void) |
void | DebugMon_Handler (void) |
void | PendSV_Handler (void) |
void | SysTick_Handler (void) |
void | DMA_IRQHandler (void) |
Interrupt handler for DMA cycle completion handling. More... | |
void | GPIO_EVEN_IRQHandler (void) |
void | TIMER0_IRQHandler (void) |
TIMER0 interrupt handler. More... | |
void | USART0_RX_IRQHandler (void) |
void | USART0_TX_IRQHandler (void) |
void | ACMP0_IRQHandler (void) |
void | ADC0_IRQHandler (void) |
Interrupt handler is executed with frequency ~28Hz when panel is not pressed and with frequency ~140Hz when panel is pressed - this will give ~50 readings per second. | |
void | DAC0_IRQHandler (void) |
void | I2C0_IRQHandler (void) |
void | GPIO_ODD_IRQHandler (void) |
void | TIMER1_IRQHandler (void) |
void | TIMER2_IRQHandler (void) |
void | USART1_RX_IRQHandler (void) |
void | USART1_TX_IRQHandler (void) |
void | USART2_RX_IRQHandler (void) |
void | USART2_TX_IRQHandler (void) |
void | UART0_RX_IRQHandler (void) |
void | UART0_TX_IRQHandler (void) |
void | LEUART0_IRQHandler (void) |
void | LEUART1_IRQHandler (void) |
void | LETIMER0_IRQHandler (void) |
void | PCNT0_IRQHandler (void) |
void | PCNT1_IRQHandler (void) |
void | PCNT2_IRQHandler (void) |
void | RTC_IRQHandler (void) |
void | CMU_IRQHandler (void) |
void | VCMP_IRQHandler (void) |
void | LCD_IRQHandler (void) |
void | MSC_IRQHandler (void) |
void | AES_IRQHandler (void) |
uint32_t | SystemCoreClockGet (void) |
Get the current core clock frequency. More... | |
uint32_t | SystemMaxCoreClockGet (void) |
Get the maximum core clock frequency. More... | |
static __INLINE void | SystemCoreClockUpdate (void) |
Update CMSIS SystemCoreClock variable. More... | |
void | SystemInit (void) |
Initialize the system. More... | |
uint32_t | SystemHFClockGet (void) |
Get the current HFCLK frequency. More... | |
uint32_t | SystemHFXOClockGet (void) |
Get high frequency crystal oscillator clock frequency for target system. More... | |
void | SystemHFXOClockSet (uint32_t freq) |
Set high frequency crystal oscillator clock frequency for target system. More... | |
uint32_t | SystemLFRCOClockGet (void) |
Get low frequency RC oscillator clock frequency for target system. More... | |
uint32_t | SystemULFRCOClockGet (void) |
Get ultra low frequency RC oscillator clock frequency for target system. More... | |
uint32_t | SystemLFXOClockGet (void) |
Get low frequency crystal oscillator clock frequency for target system. More... | |
void | SystemLFXOClockSet (uint32_t freq) |
Set low frequency crystal oscillator clock frequency for target system. More... | |
Variables | |
uint32_t | SystemCoreClock |
System System Clock Frequency (Core Clock). More... | |
Copyright 2015 Silicon Laboratories, Inc. http://www.silabs.com
Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
DISCLAIMER OF WARRANTY/LIMITATION OF REMEDIES: Silicon Laboratories, Inc. has no obligation to support this Software. Silicon Laboratories, Inc. is providing the Software "AS IS", with no express or implied warranties of any kind, including, but not limited to, any implied warranties of merchantability or fitness for any particular purpose or warranties against infringement of any proprietary rights of a third party.
Silicon Laboratories, Inc. will not be liable for any consequential, incidental, or special damages, or any other relief, or for any claim by any third party, arising from your use of this Software.
Definition in file system_efm32g.h.
void TIMER0_IRQHandler | ( | void | ) |
When TIMER0 expires the number of pulses on TIMER1 is inserted into channelValues. If this values is bigger than what is recorded in channelMaxValues, channelMaxValues is updated. Finally, the next ACMP channel is selected.
Definition at line 92 of file capsense.c.
References channelMaxValues, channelValues, currentChannel, TIMER0, TIMER1, TIMER_CMD_STOP, and TIMER_IFC_OF.
uint32_t SystemCoreClockGet | ( | void | ) |
Calculate and get the current core clock frequency based on the current configuration. Assuming that the SystemCoreClock global variable is maintained, the core clock frequency is stored in that variable as well. This function will however calculate the core clock based on actual HW configuration. It will also update the SystemCoreClock global variable.
Definition at line 123 of file system_efm32g.c.
References _CMU_HFCORECLKDIV_HFCORECLKDIV_MASK, _CMU_HFCORECLKDIV_HFCORECLKDIV_SHIFT, CMU, SystemCoreClock, and SystemHFClockGet().
Referenced by CMU_ClockDivSet(), CMU_ClockFreqGet(), CMU_ClockSelectSet(), CMU_HFRCOBandSet(), MSC_Init(), SystemCoreClockUpdate(), SystemHFXOClockSet(), SystemLFXOClockSet(), TFT_AddressMappedInit(), and TFT_DirectInit().
uint32_t SystemMaxCoreClockGet | ( | void | ) |
Definition at line 148 of file system_efm32g.c.
|
static |
CMSIS defines a global variable SystemCoreClock that shall hold the core frequency in Hz. If the core frequency is dynamically changed, the variable must be kept updated in order to be CMSIS compliant.
Notice that if only changing core clock frequency through the EFM32 CMU API, this variable will be kept updated. This function is only provided for CMSIS compliance and if a user modifies the the core clock outside the CMU API.
Definition at line 112 of file system_efm32g.h.
References SystemCoreClockGet().
Referenced by CAPLESENSE_setupCMU(), EMU_EnterEM2(), and EMU_EnterEM3().
void SystemInit | ( | void | ) |
Do required generic HW system init.
Definition at line 306 of file system_efm32g.c.
uint32_t SystemHFClockGet | ( | void | ) |
Definition at line 165 of file system_efm32g.c.
References _CMU_HFRCOCTRL_BAND_MASK, CMU, CMU_HFRCOCTRL_BAND_11MHZ, CMU_HFRCOCTRL_BAND_14MHZ, CMU_HFRCOCTRL_BAND_1MHZ, CMU_HFRCOCTRL_BAND_21MHZ, CMU_HFRCOCTRL_BAND_28MHZ, CMU_HFRCOCTRL_BAND_7MHZ, CMU_STATUS_HFRCOSEL, CMU_STATUS_HFXOSEL, CMU_STATUS_LFRCOSEL, CMU_STATUS_LFXOSEL, EFM32_LFRCO_FREQ, and GetProdRev().
Referenced by CMU_ClockFreqGet(), and SystemCoreClockGet().
uint32_t SystemHFXOClockGet | ( | void | ) |
Definition at line 250 of file system_efm32g.c.
Referenced by CMU_ClockSelectSet().
void SystemHFXOClockSet | ( | uint32_t | freq | ) |
[in] | freq | HFXO frequency in Hz used for target. |
Definition at line 276 of file system_efm32g.c.
References CMU, CMU_STATUS_HFXOSEL, and SystemCoreClockGet().
uint32_t SystemLFRCOClockGet | ( | void | ) |
Definition at line 321 of file system_efm32g.c.
References EFM32_LFRCO_FREQ.
uint32_t SystemULFRCOClockGet | ( | void | ) |
Definition at line 340 of file system_efm32g.c.
uint32_t SystemLFXOClockGet | ( | void | ) |
Definition at line 357 of file system_efm32g.c.
void SystemLFXOClockSet | ( | uint32_t | freq | ) |
[in] | freq | LFXO frequency in Hz used for target. |
Definition at line 383 of file system_efm32g.c.
References CMU, CMU_STATUS_LFXOSEL, and SystemCoreClockGet().
uint32_t SystemCoreClock |
System Clock Frequency (Core Clock)
Required CMSIS global variable that must be kept up-to-date.
Definition at line 100 of file system_efm32g.c.
Referenced by SystemCoreClockGet().