EFR32 Mighty Gecko 12 Software Documentation  efr32mg12-doc-5.1.2
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.
 
 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.
 
 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.
 
 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.
 
 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.
 
 PRS
 Peripheral Reflex System (PRS) Peripheral API.
 
 RAMFUNC
 RAM code support.
 
 RMU
 Reset Management Unit (RMU) 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.