EMLIB

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.

Note
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.


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

Modules

ACMP
Analog comparator (ACMP) Peripheral API.
ADC
Analog to Digital Converter (ADC) Peripheral API.
AES
Advanced Encryption Standard Accelerator (AES) Peripheral API.
ASSERT
Error checking module.
BUS
BUS register and RAM bit/field read/write API.
CHIP
Chip errata workarounds initialization API.
CMU
Clock management unit (CMU) Peripheral API.
COMMON
General purpose utilities and cross-compiler support.
CORE
Core interrupt handling API.
DMA
Direct Memory Access (DMA) Peripheral API.
EMU
Energy Management Unit (EMU) Peripheral API.
GPIO
General Purpose Input/Output (GPIO) API.
I2C
Inter-integrated Circuit (I2C) Peripheral API.
IDAC
Current Digital-to-Analog Converter (IDAC) Peripheral API.
INT
Safe nesting of interrupt disable/enable API.
LEUART
Low Energy Universal Asynchronous Receiver/Transmitter (LEUART) Peripheral API.
MSC
Memory System Controller API.
PCNT
Pulse Counter (PCNT) Peripheral API.
PRS
Peripheral Reflex System (PRS) Peripheral API.
RAMFUNC
RAM code support.
RMU
Reset Management Unit (RMU) Peripheral API.
RTC
Real Time Counter (RTC) Peripheral API.
SYSTEM
System API.
TIMER
Timer/Counter (TIMER) Peripheral API.
USART
Universal Synchronous/Asynchronous Receiver/Transmitter Peripheral API.
VCMP
Voltage Comparator (VCMP) Peripheral API.
VERSION
Version API.
WDOG
Watchdog (WDOG) Peripheral API.

Macros

#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.