EMDRV

Detailed Description

Gecko Platform driver library.

EMDRV is a set of function specific high performance drivers for EFM32, EZR32 and EFR32 on-chip peripherals. Drivers are typically DMA based and are using all available low-energy features. For most drivers, the API offers both synchronous and asynchronous functions. The APIs are fully reentrant and callback based.

Most drivers are compile-time configurable to allow the highest possible code size optimization for the application. Compile-time configuration is defined in *_config.h files. Templates for the configuration files can be found in emdrv\<driver>\config.

Note
EMDRV APIs use Ecode_t to return status.

With the exception of ezradiodrv, EMDRV does not implement RF support. Please refer to stack documentation for more information.

******* THE REST OF THE FILE IS DOCUMENTATION ONLY !************************

******** THE REST OF THE FILE IS DOCUMENTATION ONLY !***********************

Modules

DMADRV
DMADRV Direct Memory Access Driver.
EZRADIODRV
EZR32 EzRadio Peripheral Interface Driver.
GPIOINT
GPIOINT General Purpose Input/Output Interrupt dispatcher.
NVM
NVM Non-volatile Memory Wear-Leveling Driver.
NVM3
NVM3 Non-Volatile Memory Management driver.
RTCDRV
Real-time Clock Driver.
SLEEP
Sleep Management Driver.
SPIDRV
SPIDRV Serial Peripheral Interface Driver.
TEMPDRV
TEMPDRV Temperature Sensor Driver.
UARTDRV
UARTDRV Universal Asynchronous Receiver/Transmitter Driver.
USTIMER
USTIMER Microsecond Delay Timer Driver.

Macros

#define ECODE_EMDRV_BASE (0xF0000000U)
Base value for all EMDRV errorcodes.
#define ECODE_EMDRV_DMADRV_BASE ( ECODE_EMDRV_BASE | 0x00008000U)
Base value for DMADRV error codes.
#define ECODE_EMDRV_EZRADIODRV_BASE ( ECODE_EMDRV_BASE | 0x00009000U)
Base value for EZRADIODRV error codes.
#define ECODE_EMDRV_NVM3_BASE ( ECODE_EMDRV_BASE | 0x0000E000U)
Base value for NVM3 error codes.
#define ECODE_EMDRV_NVM_BASE ( ECODE_EMDRV_BASE | 0x00003000U)
Base value for NVM error codes.
#define ECODE_EMDRV_RTCDRV_BASE ( ECODE_EMDRV_BASE | 0x00001000U)
Base value for RTCDRV error codes.
#define ECODE_EMDRV_SPIDRV_BASE ( ECODE_EMDRV_BASE | 0x00002000U)
Base value for SPIDRV error codes.
#define ECODE_EMDRV_TEMPDRV_BASE ( ECODE_EMDRV_BASE | 0x0000D000U)
Base value for TEMPDRV error codes.
#define ECODE_EMDRV_UARTDRV_BASE ( ECODE_EMDRV_BASE | 0x00007000U)
Base value for UARTDRV error codes.
#define ECODE_EMDRV_USTIMER_BASE ( ECODE_EMDRV_BASE | 0x00004000U)
Base value for USTIMER error codes.
#define ECODE_OK (0U)
Generic success return value.

Typedefs

typedef uint32_t Ecode_t
Typedef for API function error code return values.

Typedef Documentation

typedef uint32_t Ecode_t

Typedef for API function error code return values.

Bit 24-31: Component, for example EMDRV
Bit 16-23: Module, for example UARTDRV or RTCDRV
Bit 0-15: Error code

Definition at line 55 of file ecode.h .