1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/efm32/doc.txt
2021-01-06 23:44:53 +01:00

131 lines
3.7 KiB
Plaintext

/**
* @defgroup cpu_efm32 Silicon Labs EFM32/EFR32/EZR32
* @ingroup cpu
* @brief Silicon Labs's EFM32/EFR32/EZR32 MCUs implementation
*
* This module contains all code and definitions for the Silicon Labs
* EFM32/EFR32/EZR32 MCUs. It uses the Gecko SDK (vendor library) for the
* peripheral drivers.
*
*
* Supported Peripherals
* =====================
*
* The following peripherals are supported (depends on microcontroller):
* - ADC
* - CPUID
* - DAC
* - Flash page
* - GPIO
* - HW RNG
* - I2C
* - Power Management
* - PWM
* - RTC
* - RTT
* - SPI
* - Timer
* - UART (including low-power)
*
*
* Clock Configuration
* ===================
*
* By default the microcontroller will run on the internal RC-oscillator. If
* an external crystal is available, you can configure it to use by setting
* `CLOCK_HF=cmuSelect_HFXO`. The same applies for `CLOCK_LFA`, `CLOCK_LFB` and
* `CLOCK_LFE` using `cmuSelect_LFXO`.
*
* If the internal RC-oscillator is not used, it will be disabled.
*
* Refer to the reference manual of the specific microcontroller for the
* specifics.
*
*
* EMU and CMU Configuration
* =========================
*
* The Energy Management Unit (EMU) and Clock Management Unit (CMU) are
* initialized using default values provided by the Gecko SDK. You can override
* any of the following defaults to use other values:
*
* - `CMU_HFXOINIT`
* - `CMU_LFXOINIT`
* - `EMU_DCDCINIT`
* - `EMU_EM23INIT`
* - `EMU_EM4INIT`
*
* Refer to the Gecko SDK for more information about these values.
*
*
* Low-power Configuration
* =======================
*
* The EFM32/EFR32/EZR32 MCUs have support for low-power peripherals. Support
* is enabled by default, but can be disabled if not used.
*
* - Setting `EFM32_LEUART_ENABLED=0` will disable support for the LEUART
* in the UART driver peripheral and save approximately 400 bytes.
*
* Refer to `cpu/efm32/efm32-features.mk` for more options.
*/
/**
* @defgroup cpu_efm32gg Silicon Labs EFM32GG family
* @ingroup cpu_efm32
* @brief Silicon Labs's EFM32GG MCUs family implementation
*/
/**
* @defgroup cpu_efm32hg Silicon Labs EFM32HG family
* @ingroup cpu_efm32
* @brief Silicon Labs's EFM32HG MCUs family implementation
*/
/**
* @defgroup cpu_efm32lg Silicon Labs EFM32LG family
* @ingroup cpu_efm32
* @brief Silicon Labs's EFM32LG MCUs family implementation
*/
/**
* @defgroup cpu_efm32pg1b Silicon Labs EFM32PG1B family
* @ingroup cpu_efm32
* @brief Silicon Labs's EFM32PG1B MCUs family implementation
*/
/**
* @defgroup cpu_efm32pg12b Silicon Labs EFM32PG12B family
* @ingroup cpu_efm32
* @brief Silicon Labs's EFM32PG12B MCUs family implementation
*/
/**
* @defgroup cpu_efm32zg Silicon Labs EFM32ZG family
* @ingroup cpu_efm32
* @brief Silicon Labs's EFM32ZG MCUs family implementation
*/
/**
* @defgroup cpu_efr32mg1b Silicon Labs EFR32MG1P family
* @ingroup cpu_efm32
* @brief Silicon Labs's EFR32MG1B MCUs family implementation
*/
/**
* @defgroup cpu_efr32mg1p Silicon Labs EFR32MG1P family
* @ingroup cpu_efm32
* @brief Silicon Labs's EFR32MG1P MCUs family implementation
*/
/**
* @defgroup cpu_efr32mg12p Silicon Labs EFR32MG12P family
* @ingroup cpu_efm32
* @brief Silicon Labs's EFR32MG12P MCUs family implementation
*/
/**
* @defgroup cpu_ezr32wg Silicon Labs EZR32WG family
* @ingroup cpu_efm32
* @brief Silicon Labs's EZR32WG MCUs family implementation
*/