SYSTEM
[EM_Library]

System Peripheral API. More...

Collaboration diagram for SYSTEM:

Data Structures

struct  SYSTEM_ChipRevision_TypeDef

Enumerations

enum  SYSTEM_PartFamily_TypeDef { systemPartFamilyUnknown = 0xFF }

Functions

void SYSTEM_ChipRevisionGet (SYSTEM_ChipRevision_TypeDef *rev)
 Get chip major/minor revision.
uint32_t SYSTEM_GetCalibrationValue (volatile uint32_t *regAddress)
 Get factory calibration value for a given peripheral register.
__STATIC_INLINE uint64_t SYSTEM_GetUnique (void)
 Get the unique number for this part.
__STATIC_INLINE uint8_t SYSTEM_GetProdRev (void)
 Get the production revision for this part.
__STATIC_INLINE uint16_t SYSTEM_GetSRAMSize (void)
 Get the SRAM size (in KB).
__STATIC_INLINE uint16_t SYSTEM_GetFlashSize (void)
 Get the flash size (in KB).
__STATIC_INLINE uint32_t SYSTEM_GetFlashPageSize (void)
 Get the flash page size in bytes.
__STATIC_INLINE uint16_t SYSTEM_GetPartNumber (void)
 Get part number of the MCU.
__STATIC_INLINE
SYSTEM_PartFamily_TypeDef 
SYSTEM_GetFamily (void)
 Get family identifier of the MCU.
__STATIC_INLINE uint8_t SYSTEM_GetCalibrationTemperature (void)
 Get the calibration temperature (in degrees Celsius).

Detailed Description

System Peripheral API.


Enumeration Type Documentation

EFM32 part family identifiers.

Enumerator:
systemPartFamilyUnknown 

Unknown Device Family. The family id is missing on unprogrammed parts.

Definition at line 59 of file em_system.h.


Function Documentation

void SYSTEM_ChipRevisionGet ( SYSTEM_ChipRevision_TypeDef rev  ) 

Get chip major/minor revision.

Parameters:
[out] rev Location to place chip revision info.

Definition at line 59 of file em_system.c.

References SYSTEM_ChipRevision_TypeDef::family, SYSTEM_ChipRevision_TypeDef::major, and SYSTEM_ChipRevision_TypeDef::minor.

Referenced by CHIP_Init().

Here is the caller graph for this function:

__STATIC_INLINE uint8_t SYSTEM_GetCalibrationTemperature ( void   ) 

Get the calibration temperature (in degrees Celsius).

Returns:
The calibration temperature in Celsius.

Definition at line 323 of file em_system.h.

uint32_t SYSTEM_GetCalibrationValue ( volatile uint32_t *  regAddress  ) 

Get factory calibration value for a given peripheral register.

Parameters:
[in] regAddress Address of register to get a calibration value for.
Returns:
Calibration value for the requested register.

Definition at line 91 of file em_system.c.

Referenced by OPAMP_Enable().

Here is the caller graph for this function:

__STATIC_INLINE SYSTEM_PartFamily_TypeDef SYSTEM_GetFamily ( void   ) 

Get family identifier of the MCU.

Note:
This function retrievs the family id by reading the chip's device info structure in flash memory. The user can retrieve the family id directly by reading the DEVINFO->PART item and decode with the mask and shift #defines defined in <part_family>_devinfo.h (please refer to code below for details).
Returns:
The family identifier of the MCU.

Definition at line 308 of file em_system.h.

__STATIC_INLINE uint32_t SYSTEM_GetFlashPageSize ( void   ) 

Get the flash page size in bytes.

Note:
This function retrievs the correct value by reading the chip device info structure. If your binary is made for one specific device only, the #define FLASH_PAGE_SIZE can be used instead.
Returns:
The page size of the internal flash in bytes.

Definition at line 255 of file em_system.h.

References SYSTEM_GetProdRev().

Here is the call graph for this function:

__STATIC_INLINE uint16_t SYSTEM_GetFlashSize ( void   ) 

Get the flash size (in KB).

Note:
This function retrievs the correct value by reading the chip device info structure. If your binary is made for one specific device only, the #define FLASH_SIZE can be used instead.
Returns:
The size of the internal flash (in KB).

Definition at line 228 of file em_system.h.

References SYSTEM_GetProdRev().

Here is the call graph for this function:

__STATIC_INLINE uint16_t SYSTEM_GetPartNumber ( void   ) 

Get part number of the MCU.

Returns:
The part number of the MCU.

Definition at line 288 of file em_system.h.

__STATIC_INLINE uint8_t SYSTEM_GetProdRev ( void   ) 

Get the production revision for this part.

Returns:
Production revision for this part.

Definition at line 184 of file em_system.h.

Referenced by SYSTEM_GetFlashPageSize(), SYSTEM_GetFlashSize(), and SYSTEM_GetSRAMSize().

Here is the caller graph for this function:

__STATIC_INLINE uint16_t SYSTEM_GetSRAMSize ( void   ) 

Get the SRAM size (in KB).

Note:
This function retrievs the correct value by reading the chip device info structure. If your binary is made for one specific device only, the #define SRAM_SIZE can be used instead.
Returns:
The size of the internal SRAM (in KB).

Definition at line 202 of file em_system.h.

References SYSTEM_GetProdRev().

Here is the call graph for this function:

__STATIC_INLINE uint64_t SYSTEM_GetUnique ( void   ) 

Get the unique number for this part.

Returns:
Unique number for this part.

Definition at line 172 of file em_system.h.