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
The RAIL library provides a generic interface for all Silicon Labs radio features. RAIL documentation is available from Simplicity Studio.

Modules

ACMP
Analog comparator (ACMP) Peripheral API.
ADC
Analog to Digital Converter (ADC) Peripheral API.
ASSERT
Error checking module.
BUS
BUS register and RAM bit/field read/write API.
CAN
Controller Area Network 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.
CRYOTIMER
Ultra Low Energy Timer/Counter (CRYOTIMER) Peripheral API.
CRYPTO
Cryptography accelerator peripheral API.
CSEN
Capacitive Sense (CSEN) Peripheral API.
DBG
Debug (DBG) Peripheral API.
EBI
EBI External Bus Interface (EBI) Peripheral API.
EMU
Energy Management Unit (EMU) Peripheral API.
GPCRC
General Purpose Cyclic Redundancy Check (GPCRC) 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.
LCD
Liquid Crystal Display (LCD) Peripheral API.
LDMA
Linked Direct Memory Access (LDMA) Peripheral API.
LESENSE
Low Energy Sensor (LESENSE) Peripheral API.
LETIMER
Low Energy Timer (LETIMER) Peripheral API.
LEUART
Low Energy Universal Asynchronous Receiver/Transmitter (LEUART) Peripheral API.
MPU
Memory Protection Unit (MPU) Peripheral API.
MSC
Memory System Controller API.
OPAMP
Operational Amplifier (OPAMP) peripheral API.
PCNT
Pulse Counter (PCNT) Peripheral API.
PDM
Pulse Density Modulation (PDM) peripheral API.
PRS
Peripheral Reflex System (PRS) Peripheral API.
QSPI
QSPI Octal-SPI Controller API.
RAMFUNC
RAM code support.
RMU
Reset Management Unit (RMU) Peripheral API.
RTC
Real Time Counter (RTC) Peripheral API.
RTCC
Real Time Counter (RTCC) Peripheral API.
SMU
Security Management Unit (SMU) Peripheral API.
SYSTEM
System API.
TIMER
Timer/Counter (TIMER) Peripheral API.
USART
Universal Synchronous/Asynchronous Receiver/Transmitter Peripheral API.
VDAC
Digital to Analog Voltage Converter (VDAC) 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.