EFR32 Blue Gecko 1 Software Documentation  efr32bg1-doc-5.1.2

Detailed Description

Low-level peripheral library.

EMLIB is a low-level peripheral support library that provides a unified API for all EFM32, EZR32 and EFR32 MCUs and SoCs from Silicon Laboratories.

EMLIB modules are provided for all peripherals and core features. The library implements no interrupt handlers. Static data, critical sections and module interdependencies are kept at a minimum.

EMLIB functions assert on error if DEBUG_EFM is defined. See ASSERT for more information on error handling and default assertion and how to implement a custom handler.

EMLIB does not implement support for radio features. Please refer to stack documentation for more information on RF support.


 Analog comparator (ACMP) Peripheral API.
 Analog to Digital Converter (ADC) Peripheral API.
 Error checking module.
 BUS register and RAM bit/field read/write API.
 Chip errata workarounds initialization API.
 Clock management unit (CMU) Peripheral API.
 General purpose utilities and cross-compiler support.
 Core interrupt handling API.
 Ultra Low Energy Timer/Counter (CRYOTIMER) Peripheral API.
 Cryptography accelerator peripheral API.
 Debug (DBG) Peripheral API.
 Energy Management Unit (EMU) Peripheral API.
 General Purpose Cyclic Redundancy Check (GPCRC) API.
 General Purpose Input/Output (GPIO) API.
 Inter-integrated Circuit (I2C) Peripheral API.
 Current Digital-to-Analog Converter (IDAC) Peripheral API.
 Safe nesting of interrupt disable/enable API.
 Linked Direct Memory Access (LDMA) Peripheral API.
 Low Energy Timer (LETIMER) Peripheral API.
 Low Energy Universal Asynchronous Receiver/Transmitter (LEUART) Peripheral API.
 Memory Protection Unit (MPU) Peripheral API.
 Memory System Controller API.
 Pulse Counter (PCNT) Peripheral API.
 Peripheral Reflex System (PRS) Peripheral API.
 RAM code support.
 Reset Management Unit (RMU) Peripheral API.
 Real Time Counter (RTCC) Peripheral API.
 System API.
 Timer/Counter (TIMER) Peripheral API.
 Universal Synchronous/Asynchronous Receiver/Transmitter Peripheral API.
 Version API.
 Watchdog (WDOG) Peripheral API.


#define DEBUG_EFM
 Included for documentation purposes only. This define is not present by default. DEBUG_EFM should be defined from the compiler to enable the default internal assert handler.