VCMP - Voltage Comparator

Description

Supply Voltage Comparator (VCMP) Peripheral API.

This module contains functions to control the VCMP peripheral of Silicon Labs 32-bit MCUs and SoCs. The VCMP monitors the input voltage supply and generates interrupts on events using as little as 100 nA.

Data Structures

struct VCMP_Init_TypeDef
VCMP Initialization structure.

Functions

void VCMP_Init (const VCMP_Init_TypeDef *vcmpInit)
Configure and enable Voltage Comparator.
void VCMP_LowPowerRefSet (bool enable)
Enable or disable Low Power Reference setting.
void VCMP_TriggerSet (int level)
Configure the trigger level of the voltage comparator.
void VCMP_Enable (void)
Enable Voltage Comparator.
void VCMP_Disable (void)
Disable Voltage Comparator.
uint32_t VCMP_VoltageToLevel (float v)
Calculate voltage to trigger level.
bool VCMP_VDDLower (void)
Check if VDD is lower than trigger level.
bool VCMP_VDDHigher (void)
Check if VDD is higher than trigger level.
bool VCMP_Ready (void)
Check if VCMP output is ready.
void VCMP_IntClear (uint32_t flags)
Clear one or more pending VCMP interrupts.
void VCMP_IntSet (uint32_t flags)
Set one or more pending VCMP interrupts from SW.
void VCMP_IntDisable (uint32_t flags)
Disable one or more VCMP interrupts.
void VCMP_IntEnable (uint32_t flags)
Enable one or more VCMP interrupts.
uint32_t VCMP_IntGet (void)
Get pending VCMP interrupt flags.
uint32_t VCMP_IntGetEnabled (void)
Get enabled and pending VCMP interrupt flags.

Macros

#define VCMP_INIT_DEFAULT
Default VCMP initialization structure.

Enumerations

enum VCMP_WarmTime_TypeDef {
vcmpWarmTime4Cycles = _VCMP_CTRL_WARMTIME_4CYCLES,
vcmpWarmTime8Cycles = _VCMP_CTRL_WARMTIME_8CYCLES,
vcmpWarmTime16Cycles = _VCMP_CTRL_WARMTIME_16CYCLES,
vcmpWarmTime32Cycles = _VCMP_CTRL_WARMTIME_32CYCLES,
vcmpWarmTime64Cycles = _VCMP_CTRL_WARMTIME_64CYCLES,
vcmpWarmTime128Cycles = _VCMP_CTRL_WARMTIME_128CYCLES,
vcmpWarmTime256Cycles = _VCMP_CTRL_WARMTIME_256CYCLES,
vcmpWarmTime512Cycles = _VCMP_CTRL_WARMTIME_512CYCLES
}
Warm-up Time in High Frequency Peripheral Clock cycles.
enum VCMP_Hysteresis_TypeDef {
vcmpHystNone ,
vcmpHyst20mV
}
Hysteresis configuration.

Function Documentation

VCMP_Init()

void VCMP_Init