MINI58_BSP V3.01.005
The Board Support Package for Mini58 Series MCU
Macros | Functions
Collaboration diagram for ADC Exported Functions:

Macros

#define ADC_CONFIG_CH7(adc, u32Source)
 Configure the analog input source of channel 7. More...
 
#define ADC_GET_CONVERSION_DATA(adc, u32ChNum)
 Get the latest ADC conversion data. More...
 
#define ADC_GET_INT_FLAG(adc, u32Mask)
 Return the user-specified interrupt flags. More...
 
#define ADC_CLR_INT_FLAG(adc, u32Mask)
 This macro clear the selected interrupt status bits. More...
 
#define ADC_IS_BUSY(adc)
 Get the busy state of ADC. More...
 
#define ADC_IS_DATA_OVERRUN(adc, u32ChNum)
 Check if the ADC conversion data is over written or not. More...
 
#define ADC_IS_DATA_VALID(adc, u32ChNum)
 Check if the ADC conversion data is valid or not. More...
 
#define ADC_POWER_DOWN(adc)
 Power down ADC module. More...
 
#define ADC_POWER_ON(adc)
 Power on ADC module. More...
 
#define ADC_ENABLE_CMP0(adc, u32ChNum, u32Condition, u32Data, u32MatchCount)
 Configure the comparator 0 and enable it. More...
 
#define ADC_DISABLE_CMP0(adc)
 Disable comparator 0. More...
 
#define ADC_ENABLE_CMP1(adc, u32ChNum, u32Condition, u32Data, u32MatchCount)
 Configure the comparator 1 and enable it. More...
 
#define ADC_DISABLE_CMP1(adc)
 Disable comparator 1. More...
 
#define ADC_SET_INPUT_CHANNEL(adc, u32Mask)
 Set ADC input channel. Enabled channel will be converted while ADC starts. More...
 
#define ADC_START_CONV(adc)
 Start the A/D conversion. More...
 
#define ADC_STOP_CONV(adc)
 Stop the A/D conversion. More...
 

Functions

void ADC_Open (ADC_T *adc, uint32_t u32InputMode, uint32_t u32OpMode, uint32_t u32ChMask)
 This API configures ADC module to be ready for convert the input from selected channel. More...
 
void ADC_Close (ADC_T *adc)
 Disable ADC module. More...
 
void ADC_EnableHWTrigger (ADC_T *adc, uint32_t u32Source, uint32_t u32Param)
 Configure the hardware trigger condition and enable hardware trigger. More...
 
void ADC_DisableHWTrigger (ADC_T *adc)
 Disable hardware trigger ADC function. More...
 
void ADC_SetExtraSampleTime (ADC_T *adc, uint32_t u32ChNum, uint32_t u32SampleTime)
 Set ADC sample time for designated channel. More...
 
void ADC_EnableInt (ADC_T *adc, uint32_t u32Mask)
 Enable the interrupt(s) selected by u32Mask parameter. More...
 
void ADC_DisableInt (ADC_T *adc, uint32_t u32Mask)
 Disable the interrupt(s) selected by u32Mask parameter. More...
 
void ADC_SeqModeEnable (ADC_T *adc, uint32_t u32SeqTYPE, uint32_t u32ModeSel)
 ADC PWM Sequential Mode Control. More...
 
void ADC_SeqModeTriggerSrc (ADC_T *adc, uint32_t u32SeqModeTriSrc1, uint32_t u32SeqModeTriSrc2)
 ADC PWM Sequential Mode PWM Trigger Source and type. More...
 

Detailed Description

Macro Definition Documentation

◆ ADC_CLR_INT_FLAG

#define ADC_CLR_INT_FLAG (   adc,
  u32Mask 
)

This macro clear the selected interrupt status bits.

Parameters
[in]adcBase address of ADC module
[in]u32MaskThe combination of following interrupt status bits. Each bit corresponds to a interrupt status.
Returns
None

Definition at line 126 of file adc.h.

◆ ADC_CONFIG_CH7

#define ADC_CONFIG_CH7 (   adc,
  u32Source 
)

Configure the analog input source of channel 7.

Parameters
[in]adcBase address of ADC module
[in]u32SourceDecides the analog input source of channel 7, valid values are
Returns
None
Note
While using VBG as channel 7 source, ADC module clock must /b not exceed 300kHz

Definition at line 93 of file adc.h.

◆ ADC_DISABLE_CMP0

#define ADC_DISABLE_CMP0 (   adc)

Disable comparator 0.

Parameters
[in]adcBase address of ADC module

Definition at line 209 of file adc.h.

◆ ADC_DISABLE_CMP1

#define ADC_DISABLE_CMP1 (   adc)

Disable comparator 1.

Parameters
[in]adcBase address of ADC module

Definition at line 241 of file adc.h.

◆ ADC_ENABLE_CMP0

#define ADC_ENABLE_CMP0 (   adc,
  u32ChNum,
  u32Condition,
  u32Data,
  u32MatchCount 
)

Configure the comparator 0 and enable it.

Parameters
[in]adcBase address of ADC module
[in]u32ChNumSpecifies the source channel, valid value are from 0 to 7
[in]u32ConditionSpecifies the compare condition
[in]u32DataSpecifies the compare value. Valid value are between 0 ~ 0x3FF
[in]u32MatchCountSpecifies the match count setting, valid values are between 1~16
Returns
None

For example, ADC_ENABLE_CMP0(ADC, 5, ADC_CMP_GREATER_OR_EQUAL_TO, 0x800, 10); Means ADC will assert comparator 0 flag if channel 5 conversion result is greater or equal to 0x800 for 10 times continuously.

Definition at line 193 of file adc.h.

◆ ADC_ENABLE_CMP1

#define ADC_ENABLE_CMP1 (   adc,
  u32ChNum,
  u32Condition,
  u32Data,
  u32MatchCount 
)

Configure the comparator 1 and enable it.

Parameters
[in]adcBase address of ADC module
[in]u32ChNumSpecifies the source channel, valid value are from 0 to 7
[in]u32ConditionSpecifies the compare condition
[in]u32DataSpecifies the compare value. Valid value are between 0 ~ 0x3FF
[in]u32MatchCountSpecifies the match count setting, valid values are between 1~16
Returns
None

For example, ADC_ENABLE_CMP1(ADC, 5, ADC_CMP1_GREATER_OR_EQUAL_TO, 0x800, 10); Means ADC will assert comparator 1 flag if channel 5 conversion result is greater or equal to 0x800 for 10 times continuously.

Definition at line 226 of file adc.h.

◆ ADC_GET_CONVERSION_DATA

#define ADC_GET_CONVERSION_DATA (   adc,
  u32ChNum 
)

Get the latest ADC conversion data.

Parameters
[in]adcBase address of ADC module
[in]u32ChNumCurrently not used
Returns
Latest ADC conversion data

Definition at line 102 of file adc.h.

◆ ADC_GET_INT_FLAG

#define ADC_GET_INT_FLAG (   adc,
  u32Mask 
)

Return the user-specified interrupt flags.

Parameters
[in]adcBase address of ADC module
[in]u32MaskThe combination of following interrupt status bits. Each bit corresponds to a interrupt status.
Returns
User specified interrupt flags

Definition at line 114 of file adc.h.

◆ ADC_IS_BUSY

#define ADC_IS_BUSY (   adc)

Get the busy state of ADC.

Parameters
[in]adcBase address of ADC module
Returns
busy state of ADC
Return values
0ADC is not busy
1ADC is busy

Definition at line 138 of file adc.h.

◆ ADC_IS_DATA_OVERRUN

#define ADC_IS_DATA_OVERRUN (   adc,
  u32ChNum 
)

Check if the ADC conversion data is over written or not.

Parameters
[in]adcBase address of ADC module
[in]u32ChNumCurrently not used
Returns
Over run state of ADC data
Return values
0ADC data is not overrun
1ADC data is overrun

Definition at line 149 of file adc.h.

◆ ADC_IS_DATA_VALID

#define ADC_IS_DATA_VALID (   adc,
  u32ChNum 
)

Check if the ADC conversion data is valid or not.

Parameters
[in]adcBase address of ADC module
[in]u32ChNumCurrently not used
Returns
Valid state of ADC data
Return values
0ADC data is not valid
1ADC data us valid

Definition at line 160 of file adc.h.

◆ ADC_POWER_DOWN

#define ADC_POWER_DOWN (   adc)

Power down ADC module.

Parameters
[in]adcBase address of ADC module
Returns
None

Definition at line 168 of file adc.h.

◆ ADC_POWER_ON

#define ADC_POWER_ON (   adc)

Power on ADC module.

Parameters
[in]adcBase address of ADC module
Returns
None

Definition at line 176 of file adc.h.

◆ ADC_SET_INPUT_CHANNEL

#define ADC_SET_INPUT_CHANNEL (   adc,
  u32Mask 
)

Set ADC input channel. Enabled channel will be converted while ADC starts.

Parameters
[in]adcBase address of ADC module
[in]u32MaskChannel enable bit. Each bit corresponds to a input channel. Bit 0 is channel 0, bit 1 is channel 1...
Returns
None
Note
Mini58 series MCU ADC can only convert 1 channel at a time. If more than 1 channels are enabled, only channel with smallest number will be convert.

Definition at line 252 of file adc.h.

◆ ADC_START_CONV

#define ADC_START_CONV (   adc)

Start the A/D conversion.

Parameters
[in]adcBase address of ADC module
Returns
None

Definition at line 260 of file adc.h.

◆ ADC_STOP_CONV

#define ADC_STOP_CONV (   adc)

Stop the A/D conversion.

Parameters
[in]adcBase address of ADC module
Returns
None

Definition at line 268 of file adc.h.

Function Documentation

◆ ADC_Close()

void ADC_Close ( ADC_T adc)

Disable ADC module.

Parameters
[in]adcBase address of ADC module
Returns
None

Definition at line 59 of file adc.c.

◆ ADC_DisableHWTrigger()

void ADC_DisableHWTrigger ( ADC_T adc)

Disable hardware trigger ADC function.

Parameters
[in]adcBase address of ADC module
Returns
None

Definition at line 103 of file adc.c.

◆ ADC_DisableInt()

void ADC_DisableInt ( ADC_T adc,
uint32_t  u32Mask 
)

Disable the interrupt(s) selected by u32Mask parameter.

Parameters
[in]adcBase address of ADC module
[in]u32MaskThe combination of interrupt status bits listed below. Each bit corresponds to a interrupt status. This parameter decides which interrupts will be disabled.
Returns
None

Definition at line 169 of file adc.c.

◆ ADC_EnableHWTrigger()

void ADC_EnableHWTrigger ( ADC_T adc,
uint32_t  u32Source,
uint32_t  u32Param 
)

Configure the hardware trigger condition and enable hardware trigger.

Parameters
[in]adcBase address of ADC module
[in]u32SourceDecides the hardware trigger source. Valid values are:
[in]u32ParamWhile ADC trigger by PWM, this parameter is used to set the delay between PWM trigger and ADC conversion. Valid values are from 0 ~ 0xFF, and actual delay time is (4 * u32Param * HCLK). While ADC trigger by external pin, this parameter is used to set trigger condition. Valid values are:
Returns
None

Definition at line 81 of file adc.c.

◆ ADC_EnableInt()

void ADC_EnableInt ( ADC_T adc,
uint32_t  u32Mask 
)

Enable the interrupt(s) selected by u32Mask parameter.

Parameters
[in]adcBase address of ADC module
[in]u32MaskThe combination of interrupt status bits listed below. Each bit corresponds to a interrupt status. This parameter decides which interrupts will be enabled.
Returns
None

Definition at line 146 of file adc.c.

◆ ADC_Open()

void ADC_Open ( ADC_T adc,
uint32_t  u32InputMode,
uint32_t  u32OpMode,
uint32_t  u32ChMask 
)

This API configures ADC module to be ready for convert the input from selected channel.

Parameters
[in]adcBase address of ADC module
[in]u32InputModeThis parameter is unused
[in]u32OpModeThis parameter is unused
[in]u32ChMaskChannel enable bit. Each bit corresponds to a input channel. Bit 0 is channel 0, bit 1 is channel 1...
Returns
None
Note
Mini58 series MCU ADC can only convert 1 channel at a time. If more than 1 channels are enabled, only channel with smallest number will be convert.
This API does not turn on ADC power nor does trigger ADC conversion

Definition at line 38 of file adc.c.

◆ ADC_SeqModeEnable()

void ADC_SeqModeEnable ( ADC_T adc,
uint32_t  u32SeqTYPE,
uint32_t  u32ModeSel 
)

ADC PWM Sequential Mode Control.

Parameters
[in]adcBase address of ADC module
[in]u32SeqTYPEThis parameter decides which type will be selected.
[in]u32ModeSelThis parameter decides which mode will be selected.
Returns
None

Definition at line 193 of file adc.c.

◆ ADC_SeqModeTriggerSrc()

void ADC_SeqModeTriggerSrc ( ADC_T adc,
uint32_t  u32SeqModeTriSrc1,
uint32_t  u32SeqModeTriSrc2 
)

ADC PWM Sequential Mode PWM Trigger Source and type.

Parameters
[in]adcBase address of ADC module
[in]u32SeqModeTriSrc1This parameter decides first PWM trigger source and type.
[in]u32SeqModeTriSrc2This parameter decides second PWM trigger source and type.
Returns
None

Definition at line 216 of file adc.c.

◆ ADC_SetExtraSampleTime()

void ADC_SetExtraSampleTime ( ADC_T adc,
uint32_t  u32ChNum,
uint32_t  u32SampleTime 
)

Set ADC sample time for designated channel.

Parameters
[in]adcBase address of ADC module
[in]u32ChNumThis parameter is not used
[in]u32SampleTimeADC sample ADC time, valid values are
Returns
None

Definition at line 128 of file adc.c.