ACMP - Analog Comparator

Description

Analog comparator (ACMP) Peripheral API.

The Analog Comparator is used to compare voltage of two analog inputs with a digital output indicating which input voltage is higher. Inputs can either be one of the selectable internal references or from external pins. Response time and current consumption can be configured by altering the current supply to the comparator.

ACMP is available down to EM3 and is able to wake up the system when input signals pass a certain threshold. Use ACMP_IntEnable() to enable an edge interrupt to use this functionality.

This example shows how to use the em_acmp.h API for comparing an input pin to an internal 2.5 V reference voltage.

/* Initialize with default settings. */
ACMP_Init(ACMP0, &init);
/* In this example we want to compare an analog input to the 2.5 V
* internal reference. The default settings resets the divider for
* acmpInputVREFDIV2V5, which we can use as a 2.5 V reference. */
/* Now we select the two inputs to compare. Here we compare the acmpInputPD2
* input to the internal 2.5V reference. When acmpInputPD2 is lower than
* 2.5 V then the ACMP output is 0 and when acmpInputPD2 is is higher than
* 2.5 V then the ACMP output is 1. */
/* Allocate CDEVEN0 to ACMP0 to be able to use the input. */
GPIO->CDBUSALLOC = GPIO_CDBUSALLOC_CDEVEN0_ACMP0;
/* To be able to probe the output we can send the ACMP output to a pin.
* The second argument to this function is the pin location which is
* device dependent. */
ACMP_GPIOSetup(ACMP0, gpioPortD, 1, true, false);
Note
ACMP can also be used to compare two separate input pins.

ACMP also contains specialized hardware for capacitive sensing. This module contains the ACMP_CapsenseInit() function to initialize ACMP for capacitive sensing and the ACMP_CapsenseChannelSet() function to select the current capsense channel.

For applications that require capacitive sensing it is recommended to use a library, such as cslib, which is provided by Silicon Labs.

Data Structures

struct  ACMP_CapsenseInit_TypeDef
 Capsense initialization structure.
 
struct  ACMP_Init_TypeDef
 ACMP initialization structure.
 

Functions

void ACMP_CapsenseInit (ACMP_TypeDef *acmp, const ACMP_CapsenseInit_TypeDef *init)
 Set up ACMP for use in capacitive sense applications.
 
void ACMP_CapsenseChannelSet (ACMP_TypeDef *acmp, ACMP_Channel_TypeDef channel)
 Set the ACMP channel used for capacitive sensing.
 
void ACMP_ChannelSet (ACMP_TypeDef *acmp, ACMP_Channel_TypeDef negSel, ACMP_Channel_TypeDef posSel)
 Set which channels should be used in ACMP comparisons.
 
void ACMP_Disable (ACMP_TypeDef *acmp)
 Disable ACMP.
 
void ACMP_Enable (ACMP_TypeDef *acmp)
 Enable ACMP.
 
void ACMP_GPIOSetup (ACMP_TypeDef *acmp, GPIO_Port_TypeDef port, unsigned int pin, bool enable, bool invert)
 Sets up GPIO output from the ACMP.
 
void ACMP_Init (ACMP_TypeDef *acmp, const ACMP_Init_TypeDef *init)
 Initialize ACMP.
 
void ACMP_Reset (ACMP_TypeDef *acmp)
 Reset ACMP to the same state that it was in after a hardware reset.
 
void ACMP_IntClear (ACMP_TypeDef *acmp, uint32_t flags)
 Clear one or more pending ACMP interrupts.
 
void ACMP_IntDisable (ACMP_TypeDef *acmp, uint32_t flags)
 Disable one or more ACMP interrupts.
 
void ACMP_IntEnable (ACMP_TypeDef *acmp, uint32_t flags)
 Enable one or more ACMP interrupts.
 
uint32_t ACMP_IntGet (ACMP_TypeDef *acmp)
 Get pending ACMP interrupt flags.
 
uint32_t ACMP_IntGetEnabled (ACMP_TypeDef *acmp)
 Get enabled and pending ACMP interrupt flags.
 
void ACMP_IntSet (ACMP_TypeDef *acmp, uint32_t flags)
 Set one or more pending ACMP interrupts from software.
 
ACMP_Channel_TypeDef ACMP_PortPinToInput (GPIO_Port_TypeDef port, uint8_t pin)
 Convert GPIO port/pin to ACMP input selection.
 

Macros

#define PM5507_ACMP_CFG_BIAS_DEFAULT   0x00000004UL
 A default configuration for capacitive sense mode initialization.
 
#define PM5507_ACMP_CFG_RESETVALUE   0x00000004UL
 Analog comparator reset value.
 
#define ACMP_CAPSENSE_INIT_DEFAULT
 Capacitive sense mode configuration default values.
 
#define ACMP_INIT_DEFAULT
 Default configuration for ACMP regular initialization.
 

Enumerations

enum  ACMP_CapsenseResistor_TypeDef {
  acmpResistor0 = _ACMP_INPUTCTRL_CSRESSEL_RES0,
  acmpResistor1 = _ACMP_INPUTCTRL_CSRESSEL_RES1,
  acmpResistor2 = _ACMP_INPUTCTRL_CSRESSEL_RES2,
  acmpResistor3 = _ACMP_INPUTCTRL_CSRESSEL_RES3,
  acmpResistor4 = _ACMP_INPUTCTRL_CSRESSEL_RES4,
  acmpResistor5 = _ACMP_INPUTCTRL_CSRESSEL_RES5,
  acmpResistor6 = _ACMP_INPUTCTRL_CSRESSEL_RES6
}
 Resistor values used for the internal capacitive sense resistor.
 
enum  ACMP_HysteresisLevel_TypeDef {
  acmpHysteresisDisabled = _ACMP_CFG_HYST_DISABLED,
  acmpHysteresis10Sym = _ACMP_CFG_HYST_SYM10MV,
  acmpHysteresis20Sym = _ACMP_CFG_HYST_SYM20MV,
  acmpHysteresis30Sym = _ACMP_CFG_HYST_SYM30MV,
  acmpHysteresis10Pos = _ACMP_CFG_HYST_POS10MV,
  acmpHysteresis20Pos = _ACMP_CFG_HYST_POS20MV,
  acmpHysteresis30Pos = _ACMP_CFG_HYST_POS30MV,
  acmpHysteresis10Neg = _ACMP_CFG_HYST_NEG10MV,
  acmpHysteresis20Neg = _ACMP_CFG_HYST_NEG20MV,
  acmpHysteresis30Neg = _ACMP_CFG_HYST_NEG30MV
}
 Hysteresis level.
 
enum  ACMP_InputRange_TypeDef {
  acmpInputRangeFull = _ACMP_CFG_INPUTRANGE_FULL,
  acmpInputRangeReduced = _ACMP_CFG_INPUTRANGE_REDUCED
}
 Adjust ACMP performance for a given input voltage range.
 
enum  ACMP_Accuracy_TypeDef {
  acmpAccuracyLow = _ACMP_CFG_ACCURACY_LOW,
  acmpAccuracyHigh = _ACMP_CFG_ACCURACY_HIGH
}
 ACMP accuracy mode.
 
enum  ACMP_Channel_TypeDef {
  acmpInputVSS = _ACMP_INPUTCTRL_POSSEL_VSS,
  acmpInputVREFDIVAVDD = _ACMP_INPUTCTRL_POSSEL_VREFDIVAVDD,
  acmpInputVREFDIVAVDDLP = _ACMP_INPUTCTRL_POSSEL_VREFDIVAVDDLP,
  acmpInputVREFDIV1V25 = _ACMP_INPUTCTRL_POSSEL_VREFDIV1V25,
  acmpInputVREFDIV1V25LP = _ACMP_INPUTCTRL_POSSEL_VREFDIV1V25LP,
  acmpInputVREFDIV2V5 = _ACMP_INPUTCTRL_POSSEL_VREFDIV2V5,
  acmpInputVREFDIV2V5LP = _ACMP_INPUTCTRL_POSSEL_VREFDIV2V5LP,
  acmpInputVSENSE01DIV4 = _ACMP_INPUTCTRL_POSSEL_VSENSE01DIV4,
  acmpInputVSENSE01DIV4LP = _ACMP_INPUTCTRL_POSSEL_VSENSE01DIV4LP,
  acmpInputVSENSE11DIV4 = _ACMP_INPUTCTRL_POSSEL_VSENSE11DIV4,
  acmpInputVSENSE11DIV4LP = _ACMP_INPUTCTRL_POSSEL_VSENSE11DIV4LP,
  acmpInputCAPSENSE = _ACMP_INPUTCTRL_NEGSEL_CAPSENSE,
  acmpInputPA0 = _ACMP_INPUTCTRL_POSSEL_PA0,
  acmpInputPA1 = _ACMP_INPUTCTRL_POSSEL_PA1,
  acmpInputPA2 = _ACMP_INPUTCTRL_POSSEL_PA2,
  acmpInputPA3 = _ACMP_INPUTCTRL_POSSEL_PA3,
  acmpInputPA4 = _ACMP_INPUTCTRL_POSSEL_PA4,
  acmpInputPA5 = _ACMP_INPUTCTRL_POSSEL_PA5,
  acmpInputPA6 = _ACMP_INPUTCTRL_POSSEL_PA6,
  acmpInputPA7 = _ACMP_INPUTCTRL_POSSEL_PA7,
  acmpInputPA8 = _ACMP_INPUTCTRL_POSSEL_PA8,
  acmpInputPA9 = _ACMP_INPUTCTRL_POSSEL_PA9,
  acmpInputPA10 = _ACMP_INPUTCTRL_POSSEL_PA10,
  acmpInputPA11 = _ACMP_INPUTCTRL_POSSEL_PA11,
  acmpInputPA12 = _ACMP_INPUTCTRL_POSSEL_PA12,
  acmpInputPA13 = _ACMP_INPUTCTRL_POSSEL_PA13,
  acmpInputPA14 = _ACMP_INPUTCTRL_POSSEL_PA14,
  acmpInputPA15 = _ACMP_INPUTCTRL_POSSEL_PA15,
  acmpInputPB0 = _ACMP_INPUTCTRL_POSSEL_PB0,
  acmpInputPB1 = _ACMP_INPUTCTRL_POSSEL_PB1,
  acmpInputPB2 = _ACMP_INPUTCTRL_POSSEL_PB2,
  acmpInputPB3 = _ACMP_INPUTCTRL_POSSEL_PB3,
  acmpInputPB4 = _ACMP_INPUTCTRL_POSSEL_PB4,
  acmpInputPB5 = _ACMP_INPUTCTRL_POSSEL_PB5,
  acmpInputPB6 = _ACMP_INPUTCTRL_POSSEL_PB6,
  acmpInputPB7 = _ACMP_INPUTCTRL_POSSEL_PB7,
  acmpInputPB8 = _ACMP_INPUTCTRL_POSSEL_PB8,
  acmpInputPB9 = _ACMP_INPUTCTRL_POSSEL_PB9,
  acmpInputPB10 = _ACMP_INPUTCTRL_POSSEL_PB10,
  acmpInputPB11 = _ACMP_INPUTCTRL_POSSEL_PB11,
  acmpInputPB12 = _ACMP_INPUTCTRL_POSSEL_PB12,
  acmpInputPB13 = _ACMP_INPUTCTRL_POSSEL_PB13,
  acmpInputPB14 = _ACMP_INPUTCTRL_POSSEL_PB14,
  acmpInputPB15 = _ACMP_INPUTCTRL_POSSEL_PB15,
  acmpInputPC0 = _ACMP_INPUTCTRL_POSSEL_PC0,
  acmpInputPC1 = _ACMP_INPUTCTRL_POSSEL_PC1,
  acmpInputPC2 = _ACMP_INPUTCTRL_POSSEL_PC2,
  acmpInputPC3 = _ACMP_INPUTCTRL_POSSEL_PC3,
  acmpInputPC4 = _ACMP_INPUTCTRL_POSSEL_PC4,
  acmpInputPC5 = _ACMP_INPUTCTRL_POSSEL_PC5,
  acmpInputPC6 = _ACMP_INPUTCTRL_POSSEL_PC6,
  acmpInputPC7 = _ACMP_INPUTCTRL_POSSEL_PC7,
  acmpInputPC8 = _ACMP_INPUTCTRL_POSSEL_PC8,
  acmpInputPC9 = _ACMP_INPUTCTRL_POSSEL_PC9,
  acmpInputPC10 = _ACMP_INPUTCTRL_POSSEL_PC10,
  acmpInputPC11 = _ACMP_INPUTCTRL_POSSEL_PC11,
  acmpInputPC12 = _ACMP_INPUTCTRL_POSSEL_PC12,
  acmpInputPC13 = _ACMP_INPUTCTRL_POSSEL_PC13,
  acmpInputPC14 = _ACMP_INPUTCTRL_POSSEL_PC14,
  acmpInputPC15 = _ACMP_INPUTCTRL_POSSEL_PC15,
  acmpInputPD0 = _ACMP_INPUTCTRL_POSSEL_PD0,
  acmpInputPD1 = _ACMP_INPUTCTRL_POSSEL_PD1,
  acmpInputPD2 = _ACMP_INPUTCTRL_POSSEL_PD2,
  acmpInputPD3 = _ACMP_INPUTCTRL_POSSEL_PD3,
  acmpInputPD4 = _ACMP_INPUTCTRL_POSSEL_PD4,
  acmpInputPD5 = _ACMP_INPUTCTRL_POSSEL_PD5,
  acmpInputPD6 = _ACMP_INPUTCTRL_POSSEL_PD6,
  acmpInputPD7 = _ACMP_INPUTCTRL_POSSEL_PD7,
  acmpInputPD8 = _ACMP_INPUTCTRL_POSSEL_PD8,
  acmpInputPD9 = _ACMP_INPUTCTRL_POSSEL_PD9,
  acmpInputPD10 = _ACMP_INPUTCTRL_POSSEL_PD10,
  acmpInputPD11 = _ACMP_INPUTCTRL_POSSEL_PD11,
  acmpInputPD12 = _ACMP_INPUTCTRL_POSSEL_PD12,
  acmpInputPD13 = _ACMP_INPUTCTRL_POSSEL_PD13,
  acmpInputPD14 = _ACMP_INPUTCTRL_POSSEL_PD14,
  acmpInputPD15 = _ACMP_INPUTCTRL_POSSEL_PD15
}
 ACMP Input Selection.
 

Function Documentation

◆ ACMP_CapsenseInit()

void ACMP_CapsenseInit ( ACMP_TypeDef *  acmp,
const ACMP_CapsenseInit_TypeDef init 
)

Set up ACMP for use in capacitive sense applications.

This function sets up ACMP for use in capacitive sense applications. To use the capacitive sense functionality in the ACMP, use the PRS output of the ACMP module to count the number of oscillations in the capacitive sense circuit (possibly using a TIMER).

Note
A basic example of capacitive sensing can be found in the STK BSP (capsense demo).
A call to ACMP_CapsenseInit will enable and disable the ACMP peripheral, which can cause side effects if it was previously set up.
Parameters
[in]acmpA pointer to the ACMP peripheral register block.
[in]initA pointer to the initialization structure used to configure ACMP for capacitive sensing operation.

◆ ACMP_CapsenseChannelSet()

void ACMP_CapsenseChannelSet ( ACMP_TypeDef *  acmp,
ACMP_Channel_TypeDef  channel 
)

Set the ACMP channel used for capacitive sensing.

Note
A basic example of capacitive sensing can be found in the STK BSP (capsense demo).
Can only be called when the peripheral is enabled.
Parameters
[in]acmpA pointer to the ACMP peripheral register block.
[in]channelThe ACMP channel to use for capacitive sensing (Possel).

◆ ACMP_ChannelSet()

void ACMP_ChannelSet ( ACMP_TypeDef *  acmp,
ACMP_Channel_TypeDef  negSel,
ACMP_Channel_TypeDef  posSel 
)

Set which channels should be used in ACMP comparisons.

Note
Can only be called when the peripheral is enabled.
If GPIO is used for both posSel and negSel, they cannot both use even or odd pins.
Parameters
[in]acmpA pointer to the ACMP peripheral register block.
negSelA channel to use on the negative input to the ACMP.
posSelA channel to use on the positive input to the ACMP.

◆ ACMP_Disable()

void ACMP_Disable ( ACMP_TypeDef *  acmp)

Disable ACMP.

Parameters
[in]acmpA pointer to the ACMP peripheral register block.

◆ ACMP_Enable()

void ACMP_Enable ( ACMP_TypeDef *  acmp)

Enable ACMP.

Parameters
[in]acmpA pointer to the ACMP peripheral register block.

◆ ACMP_GPIOSetup()

void ACMP_GPIOSetup ( ACMP_TypeDef *  acmp,
GPIO_Port_TypeDef  port,
unsigned int  pin,
bool  enable,
bool  invert 
)

Sets up GPIO output from the ACMP.

Note
GPIO must be enabled in the CMU before this function call, i.e.
CMU_ClockEnable(cmuClock_GPIO, true); 
Parameters
[in]acmpPointer to the ACMP peripheral register block.
portThe GPIO port to use.
pinThe GPIO pin to use.
enableEnable or disable pin output.
invertInvert output.

◆ ACMP_Init()

void ACMP_Init ( ACMP_TypeDef *  acmp,
const ACMP_Init_TypeDef init 
)

Initialize ACMP.

Note
A call to ACMP_Init can cause side effects since it can enable/disable the peripheral.
Parameters
[in]acmpA pointer to the ACMP peripheral register block.
[in]initA pointer to the initialization structure used to configure ACMP.

◆ ACMP_Reset()

void ACMP_Reset ( ACMP_TypeDef *  acmp)

Reset ACMP to the same state that it was in after a hardware reset.

Note
The GPIO ACMP ROUTE register is NOT reset by this function to allow for centralized setup of this feature.
The peripheral may be enabled and disabled during reset.
Parameters
[in]acmpA pointer to the ACMP peripheral register block.

◆ ACMP_IntClear()

void ACMP_IntClear ( ACMP_TypeDef *  acmp,
uint32_t  flags 
)
inline

Clear one or more pending ACMP interrupts.

Parameters
[in]acmpA pointer to the ACMP peripheral register block.
[in]flagsPending ACMP interrupt source to clear. Use a bitwise logic OR combination of valid interrupt flags for the ACMP module. The flags can be, for instance, ACMP_IFC_EDGE or ACMP_IFC_WARMUP.

◆ ACMP_IntDisable()

void ACMP_IntDisable ( ACMP_TypeDef *  acmp,
uint32_t  flags 
)
inline

Disable one or more ACMP interrupts.

Parameters
[in]acmpA pointer to the ACMP peripheral register block.
[in]flagsACMP interrupt sources to disable. Use a bitwise logic OR combination of valid interrupt flags for the ACMP module. The flags can be, for instance, ACMP_IEN_EDGE or ACMP_IEN_WARMUP.

◆ ACMP_IntEnable()

void ACMP_IntEnable ( ACMP_TypeDef *  acmp,
uint32_t  flags 
)
inline

Enable one or more ACMP interrupts.

Note
Depending on the use, a pending interrupt may already be set prior to enabling the interrupt. Consider using ACMP_IntClear() prior to enabling if a pending interrupt should be ignored.
Parameters
[in]acmpA pointer to the ACMP peripheral register block.
[in]flagsACMP interrupt sources to enable. Use a bitwise logic OR combination of valid interrupt flags for the ACMP module. The flags can be, for instance, ACMP_IEN_EDGE or ACMP_IEN_WARMUP.

◆ ACMP_IntGet()

uint32_t ACMP_IntGet ( ACMP_TypeDef *  acmp)
inline

Get pending ACMP interrupt flags.

Note
This function does not clear event bits.
Parameters
[in]acmpA pointer to the ACMP peripheral register block.
Returns
Pending ACMP interrupt sources. A bitwise logic OR combination of valid interrupt flags for the ACMP module. The pending interrupt sources can be, for instance, ACMP_IF_EDGE or ACMP_IF_WARMUP.

◆ ACMP_IntGetEnabled()

uint32_t ACMP_IntGetEnabled ( ACMP_TypeDef *  acmp)
inline

Get enabled and pending ACMP interrupt flags.

Useful for handling more interrupt sources in the same interrupt handler.

Parameters
[in]acmpA pointer to the ACMP peripheral register block.
Note
This function does not clear interrupt flags.
Returns
Pending and enabled ACMP interrupt sources. The return value is the bitwise AND combination of
  • the OR combination of enabled interrupt sources in ACMPx_IEN_nnn register (ACMPx_IEN_nnn) and
  • the OR combination of valid interrupt flags of the ACMP module (ACMPx_IF_nnn).

◆ ACMP_IntSet()

void ACMP_IntSet ( ACMP_TypeDef *  acmp,
uint32_t  flags 
)
inline

Set one or more pending ACMP interrupts from software.

Parameters
[in]acmpA pointer to the ACMP peripheral register block.
[in]flagsACMP interrupt sources to set as pending. Use a bitwise logic OR combination of valid interrupt flags for the ACMP module. The flags can be, for instance, ACMP_IFS_EDGE or ACMP_IFS_WARMUP.

◆ ACMP_PortPinToInput()

ACMP_Channel_TypeDef ACMP_PortPinToInput ( GPIO_Port_TypeDef  port,
uint8_t  pin 
)
inline

Convert GPIO port/pin to ACMP input selection.

Parameters
[in]portGPIO port
[in]pinGPIO pin
Returns
ACMP input selection

Macro Definition Documentation

◆ PM5507_ACMP_CFG_BIAS_DEFAULT

#define PM5507_ACMP_CFG_BIAS_DEFAULT   0x00000004UL

A default configuration for capacitive sense mode initialization.

Analog comparator CFG with initial bias value

◆ PM5507_ACMP_CFG_RESETVALUE

#define PM5507_ACMP_CFG_RESETVALUE   0x00000004UL

Analog comparator reset value.

◆ ACMP_CAPSENSE_INIT_DEFAULT

#define ACMP_CAPSENSE_INIT_DEFAULT
Value:
{ \
PM5507_ACMP_CFG_BIAS_DEFAULT, /* Using biasProg default value. */ \
acmpHysteresisDisabled, /* Disable hysteresis. */ \
acmpResistor5, /* Use internal resistor value 5. */ \
0x3F, /* Set VREFDIV to maximum to disable divide. */ \
true /* Enable after init. */ \
}

Capacitive sense mode configuration default values.

◆ ACMP_INIT_DEFAULT

#define ACMP_INIT_DEFAULT
Value:
{ \
PM5507_ACMP_CFG_BIAS_DEFAULT, /* Using biasProg default value. */ \
acmpInputRangeFull, /* Input range from 0 to Vdd. */ \
acmpAccuracyLow, /* Low accuracy, less current usage. */ \
acmpHysteresisDisabled, /* Disable hysteresis. */ \
false, /* Output 0 when ACMP is inactive. */ \
0x3F, /* Set VREFDIV to maximum to disable divide. */ \
true /* Enable after init. */ \
}

Default configuration for ACMP regular initialization.

Enumeration Type Documentation

◆ ACMP_CapsenseResistor_TypeDef

Resistor values used for the internal capacitive sense resistor.

See data sheet for your device for details on each resistor value.

Enumerator
acmpResistor0 

Resistor value 0.

acmpResistor1 

Resistor value 1.

acmpResistor2 

Resistor value 2.

acmpResistor3 

Resistor value 3.

acmpResistor4 

Resistor value 4.

acmpResistor5 

Resistor value 5.

acmpResistor6 

Resistor value 6.

◆ ACMP_HysteresisLevel_TypeDef

Hysteresis level.

See data sheet for your device for details on each level.

Enumerator
acmpHysteresisDisabled 

Mode DISABLED for ACMP_CFG.

acmpHysteresis10Sym 

Mode HYST10SYM for ACMP_CFG.

acmpHysteresis20Sym 

Mode HYST20SYM for ACMP_CFG.

acmpHysteresis30Sym 

Mode HYST30SYM for ACMP_CFG.

acmpHysteresis10Pos 

Mode HYST10POS for ACMP_CFG.

acmpHysteresis20Pos 

Mode HYST20POS for ACMP_CFG.

acmpHysteresis30Pos 

Mode HYST30POS for ACMP_CFG.

acmpHysteresis10Neg 

Mode HYST10NEG for ACMP_CFG.

acmpHysteresis20Neg 

Mode HYST20NEG for ACMP_CFG.

acmpHysteresis30Neg 

Mode HYST30NEG for ACMP_CFG.

◆ ACMP_InputRange_TypeDef

Adjust ACMP performance for a given input voltage range.

Enumerator
acmpInputRangeFull 

Input can be from 0 to VDD.

acmpInputRangeReduced 

Input can be from 0 to VDD-0.7 V.

◆ ACMP_Accuracy_TypeDef

ACMP accuracy mode.

Enumerator
acmpAccuracyLow 

Low-accuracy mode which consumes less current.

acmpAccuracyHigh 

High-accuracy mode which consumes more current.

◆ ACMP_Channel_TypeDef

ACMP Input Selection.

Enumerator
acmpInputVSS 

Select VSS.

acmpInputVREFDIVAVDD 

Select Divided AVDD.

acmpInputVREFDIVAVDDLP 

Select Low-Power Divided AVDD.

acmpInputVREFDIV1V25 

Select Divided 1V25 reference.

acmpInputVREFDIV1V25LP 

Select Low-power Divided 1V25 reference.

acmpInputVREFDIV2V5 

Select Divided 2V5 reference.

acmpInputVREFDIV2V5LP 

Select Low-power Divided 2V5 reference.

acmpInputVSENSE01DIV4 

Select VSENSE0 divided by 4.

acmpInputVSENSE01DIV4LP 

Select Low-power VSENSE0 divided by 4.

acmpInputVSENSE11DIV4 

VSENSE1 divided by 4.

acmpInputVSENSE11DIV4LP 

Low-power VSENSE1 divided by 4.

acmpInputCAPSENSE 

Select Low-Power Divided AVDD.

acmpInputPA0 

Select Port A Pin0.

acmpInputPA1 

Select Port A Pin1.

acmpInputPA2 

Select Port A Pin2.

acmpInputPA3 

Select Port A Pin3.

acmpInputPA4 

Select Port A Pin4.

acmpInputPA5 

Select Port A Pin5.

acmpInputPA6 

Select Port A Pin6.

acmpInputPA7 

Select Port A Pin7.

acmpInputPA8 

Select Port A Pin8.

acmpInputPA9 

Select Port A Pin9.

acmpInputPA10 

Select Port A Pin10.

acmpInputPA11 

Select Port A Pin11.

acmpInputPA12 

Select Port A Pin12.

acmpInputPA13 

Select Port A Pin13.

acmpInputPA14 

Select Port A Pin14.

acmpInputPA15 

Select Port A Pin15.

acmpInputPB0 

Select Port B Pin0.

acmpInputPB1 

Select Port B Pin1.

acmpInputPB2 

Select Port B Pin2.

acmpInputPB3 

Select Port B Pin3.

acmpInputPB4 

Select Port B Pin4.

acmpInputPB5 

Select Port B Pin5.

acmpInputPB6 

Select Port B Pin6.

acmpInputPB7 

Select Port B Pin7.

acmpInputPB8 

Select Port B Pin8.

acmpInputPB9 

Select Port B Pin9.

acmpInputPB10 

Select Port B Pin10.

acmpInputPB11 

Select Port B Pin11.

acmpInputPB12 

Select Port B Pin12.

acmpInputPB13 

Select Port B Pin13.

acmpInputPB14 

Select Port B Pin14.

acmpInputPB15 

Select Port B Pin15.

acmpInputPC0 

Select Port C Pin0.

acmpInputPC1 

Select Port C Pin1.

acmpInputPC2 

Select Port C Pin2.

acmpInputPC3 

Select Port C Pin3.

acmpInputPC4 

Select Port C Pin4.

acmpInputPC5 

Select Port C Pin5.

acmpInputPC6 

Select Port C Pin6.

acmpInputPC7 

Select Port C Pin7.

acmpInputPC8 

Select Port C Pin8.

acmpInputPC9 

Select Port C Pin9.

acmpInputPC10 

Select Port C Pin10.

acmpInputPC11 

Select Port C Pin11.

acmpInputPC12 

Select Port C Pin12.

acmpInputPC13 

Select Port C Pin13.

acmpInputPC14 

Select Port C Pin14.

acmpInputPC15 

Select Port C Pin15.

acmpInputPD0 

Select Port D Pin0.

acmpInputPD1 

Select Port D Pin1.

acmpInputPD2 

Select Port D Pin2.

acmpInputPD3 

Select Port D Pin3.

acmpInputPD4 

Select Port D Pin4.

acmpInputPD5 

Select Port D Pin5.

acmpInputPD6 

Select Port D Pin6.

acmpInputPD7 

Select Port D Pin7.

acmpInputPD8 

Select Port D Pin8.

acmpInputPD9 

Select Port D Pin9.

acmpInputPD10 

Select Port D Pin10.

acmpInputPD11 

Select Port D Pin11.

acmpInputPD12 

Select Port D Pin12.

acmpInputPD13 

Select Port D Pin13.

acmpInputPD14 

Select Port D Pin14.

acmpInputPD15 

Select Port D Pin15.