ADC Module

The analog to digital converter (ADC) API provides a set of functions for programming the digital circuits of the converter, referred to as the ADC wrapper. Functions are provided to configure the conversions, read the data conversion result registers, configure the post-processing blocks (PPB), and set up and handle interrupts and events.

group adc_api

Defines

ADC_NUM_INTERRUPTS 4U
ADC_SOCxCTL_OFFSET_BASE ADC_O_SOC0CTL
ADC_RESULTx_OFFSET_BASE ADC_O_RESULT0
ADC_INTSELxNy_OFFSET_BASE ADC_O_INTSEL1N2
ADC_PPBxRESULT_OFFSET_BASE ADC_O_PPB1RESULT
REPCTL_MASK (ADC_REP1CTL_MODE

|\

ADC_REP1CTL_TRIGGER_M

|\

ADC_REP1CTL_SYNCINSEL_M)
ADC_PPBxPSUM_OFFSET_BASE ADC_O_PPB1PSUM
ADC_PPBxPCOUNT_OFFSET_BASE ADC_O_PPBP1PCOUNT
ADC_PPBxPMAX_OFFSET_BASE ADC_O_PPB1PMAX
ADC_PPBxPMIN_OFFSET_BASE ADC_O_PPB1PMIN
ADC_PPBxPMAXI_OFFSET_BASE ADC_O_PPB1PMAXI
ADC_PPBxPMINI_OFFSET_BASE ADC_O_PPB1PMINI
ADC_PPBxLIMIT_OFFSET_BASE ADC_O_PPB1LIMIT
ADC_PPBxMAX_OFFSET_BASE ADC_O_PPB1MAX
ADC_PPBxMIN_OFFSET_BASE ADC_O_PPB1MIN
ADC_PPBxMAXI_OFFSET_BASE ADC_O_PPB1MAXI
ADC_PPBxMINI_OFFSET_BASE ADC_O_PPB1MINI
ADC_PPBxLIMIT_STEP (ADC_O_PPB2LIMIT - ADC_O_PPB1LIMIT)
ADC_PPBxCONFIG2_STEP (ADC_O_PPB2CONFIG2 - ADC_O_PPB1CONFIG2)
ADC_REPxCTL_STEP (ADC_O_REP2CTL - ADC_O_REP1CTL)
ADC_REPxN_STEP (ADC_O_REP2N - ADC_O_REP1N)
ADC_REPxPHASE_STEP (ADC_O_REP2PHASE - ADC_O_REP1PHASE)
ADC_REPxSPREAD_STEP (ADC_O_REP2SPREAD - ADC_O_REP1SPREAD)
ADC_PPBxTRIPLO2_STEP (ADC_O_PPB2TRIPLO2 - ADC_O_PPB1TRIPLO2)
ADC_PPBxSUM_OFFSET_BASE ADC_O_PPB1SUM
ADC_PPBxCOUNT_OFFSET_BASE ADC_O_PPB1COUNT
ADC_PPBTRIP_MASK (uint32_t)ADC_PPB1TRIPHI_LIMITHI_M
ADC_PPBxCONFIG_STEP (ADC_O_PPB2CONFIG - ADC_O_PPB1CONFIG)
ADC_PPBxTRIPHI_STEP (ADC_O_PPB2TRIPHI - ADC_O_PPB1TRIPHI)
ADC_PPBxTRIPLO_STEP (ADC_O_PPB2TRIPLO - ADC_O_PPB1TRIPLO)
ADC_PPBxOFFCAL_STEP (ADC_O_PPB2OFFCAL - ADC_O_PPB1OFFCAL)
ADC_PPBxOFFREF_STEP (ADC_O_PPB2OFFREF - ADC_O_PPB1OFFREF)
ADC_PPBxSTAMP_STEP (ADC_O_PPB2STAMP - ADC_O_PPB1STAMP)
ADC_INT_REF_TSSLOPE (*(int16_t *)((uintptr_t)0x720C0))
ADC_INT_REF_TSOFFSET (*(int16_t *)((uintptr_t)0x720C1))
ADC_EXT_REF_TSSLOPE (*(int16_t *)((uintptr_t)0x720BE))
ADC_EXT_REF_TSOFFSET (*(int16_t *)((uintptr_t)0x720BF))
ADC_EVT_TRIPHI 0x0001U

Trip High Event.

ADC_EVT_TRIPLO 0x0002U

Trip Low Event.

ADC_EVT_ZERO 0x0004U

Zero Crossing Event.

ADC_FORCE_SOC0 0x0001U

SW trigger ADC SOC 0.

ADC_FORCE_SOC1 0x0002U

SW trigger ADC SOC 1.

ADC_FORCE_SOC2 0x0004U

SW trigger ADC SOC 2.

ADC_FORCE_SOC3 0x0008U

SW trigger ADC SOC 3.

ADC_FORCE_SOC4 0x0010U

SW trigger ADC SOC 4.

ADC_FORCE_SOC5 0x0020U

SW trigger ADC SOC 5.

ADC_FORCE_SOC6 0x0040U

SW trigger ADC SOC 6.

ADC_FORCE_SOC7 0x0080U

SW trigger ADC SOC 7.

ADC_FORCE_SOC8 0x0100U

SW trigger ADC SOC 8.

ADC_FORCE_SOC9 0x0200U

SW trigger ADC SOC 9.

ADC_FORCE_SOC10 0x0400U

SW trigger ADC SOC 10.

ADC_FORCE_SOC11 0x0800U

SW trigger ADC SOC 11.

ADC_FORCE_SOC12 0x1000U

SW trigger ADC SOC 12.

ADC_FORCE_SOC13 0x2000U

SW trigger ADC SOC 13.

ADC_FORCE_SOC14 0x4000U

SW trigger ADC SOC 14.

ADC_FORCE_SOC15 0x8000U

SW trigger ADC SOC 15.

ADC_REPEATER_MODULE_BUSY ADC_REP1CTL_MODULEBUSY
ADC_REPEATER_PHASE_OVERFLOW ADC_REP1CTL_PHASEOVF
ADC_REPEATER_TRIGGER_OVERFLOW ADC_REP1CTL_TRIGGEROVF
ADC_REP1CTL_ACTIVEMODE_S 1U
ADC_REP1CTL_MODULEBUSY_S 3U
ADC_REPSTATUS_MASK (ADC_REP1CTL_MODULEBUSY

|\

ADC_REP1CTL_PHASEOVF

|\

ADC_REP1CTL_TRIGGEROVF)
ADC_SAFECHECK_RESULT1_READY ADC_CHECKSTATUS_RES1READY
ADC_SAFECHECK_RESULT2_READY ADC_CHECKSTATUS_RES2READY
ADC_SAFECHECK_RESULT_OOT ADC_CHECKSTATUS_OOT
ADC_SAFECHECK_STATUS_MASK (ADC_SAFECHECK_RESULT1_READY

|\

ADC_SAFECHECK_RESULT2_READY

|\

ADC_SAFECHECK_RESULT_OOT)

Enums

enum ADC_ClkPrescale

Values that can be passed to ADC_setPrescaler() as the clkPrescale parameter.

Values:

enumerator ADC_CLK_DIV_1_0 = 0U

ADCCLK = (input clock) / 1.0.

enumerator ADC_CLK_DIV_2_0 = 2U

ADCCLK = (input clock) / 2.0.

enumerator ADC_CLK_DIV_2_5 = 3U

ADCCLK = (input clock) / 2.5.

enumerator ADC_CLK_DIV_3_0 = 4U

ADCCLK = (input clock) / 3.0.

enumerator ADC_CLK_DIV_3_5 = 5U

ADCCLK = (input clock) / 3.5.

enumerator ADC_CLK_DIV_4_0 = 6U

ADCCLK = (input clock) / 4.0.

enumerator ADC_CLK_DIV_4_5 = 7U

ADCCLK = (input clock) / 4.5.

enumerator ADC_CLK_DIV_5_0 = 8U

ADCCLK = (input clock) / 5.0.

enumerator ADC_CLK_DIV_5_5 = 9U

ADCCLK = (input clock) / 5.5.

enumerator ADC_CLK_DIV_6_0 = 10U

ADCCLK = (input clock) / 6.0.

enumerator ADC_CLK_DIV_6_5 = 11U

ADCCLK = (input clock) / 6.5.

enumerator ADC_CLK_DIV_7_0 = 12U

ADCCLK = (input clock) / 7.0.

enumerator ADC_CLK_DIV_7_5 = 13U

ADCCLK = (input clock) / 7.5.

enumerator ADC_CLK_DIV_8_0 = 14U

ADCCLK = (input clock) / 8.0.

enumerator ADC_CLK_DIV_8_5 = 15U

ADCCLK = (input clock) / 8.5.

enum ADC_Resolution

Values that can be passed to ADC_setMode() as the resolution parameter.

Values:

enumerator ADC_RESOLUTION_12BIT = 0x00U

12-bit conversion resolution

enumerator ADC_RESOLUTION_16BIT = 0x40U

16-bit conversion resolution

enum ADC_SignalMode

Values that can be passed to ADC_setMode() as the signalMode parameter.

Values:

enumerator ADC_MODE_SINGLE_ENDED = 0x00U

Sample on single pin with VREFLO.

enumerator ADC_MODE_DIFFERENTIAL = 0x80U

Sample on pair of pins.

enum ADC_Trigger

Values that can be passed to ADC_setupSOC() as the trigger parameter to specify the event that will trigger a conversion to start. It is also used with ADC_setBurstModeConfig() and ADC_triggerRepeaterSelect().

Values:

enumerator ADC_TRIGGER_SW_ONLY = 0U

Software only.

enumerator ADC_TRIGGER_CPU1_TINT0 = 1U

CPU1 Timer 0, TINT0.

enumerator ADC_TRIGGER_CPU1_TINT1 = 2U

CPU1 Timer 1, TINT1.

enumerator ADC_TRIGGER_CPU1_TINT2 = 3U

CPU1 Timer 2, TINT2.

enumerator ADC_TRIGGER_GPIO = 4U

GPIO, ADCEXTSOC.

enumerator ADC_TRIGGER_EPWM1_SOCA = 5U

ePWM1, ADCSOCA

enumerator ADC_TRIGGER_EPWM1_SOCB = 6U

ePWM1, ADCSOCB

enumerator ADC_TRIGGER_EPWM2_SOCA = 7U

ePWM2, ADCSOCA

enumerator ADC_TRIGGER_EPWM2_SOCB = 8U

ePWM2, ADCSOCB

enumerator ADC_TRIGGER_EPWM3_SOCA = 9U

ePWM3, ADCSOCA

enumerator ADC_TRIGGER_EPWM3_SOCB = 10U

ePWM3, ADCSOCB

enumerator ADC_TRIGGER_EPWM4_SOCA = 11U

ePWM4, ADCSOCA

enumerator ADC_TRIGGER_EPWM4_SOCB = 12U

ePWM4, ADCSOCB

enumerator ADC_TRIGGER_EPWM5_SOCA = 13U

ePWM5, ADCSOCA

enumerator ADC_TRIGGER_EPWM5_SOCB = 14U

ePWM5, ADCSOCB

enumerator ADC_TRIGGER_EPWM6_SOCA = 15U

ePWM6, ADCSOCA

enumerator ADC_TRIGGER_EPWM6_SOCB = 16U

ePWM6, ADCSOCB

enumerator ADC_TRIGGER_EPWM7_SOCA = 17U

ePWM7, ADCSOCA

enumerator ADC_TRIGGER_EPWM7_SOCB = 18U

ePWM7, ADCSOCB

enumerator ADC_TRIGGER_EPWM8_SOCA = 19U

ePWM8, ADCSOCA

enumerator ADC_TRIGGER_EPWM8_SOCB = 20U

ePWM8, ADCSOCB

enumerator ADC_TRIGGER_EPWM9_SOCA = 21U

ePWM9, ADCSOCA

enumerator ADC_TRIGGER_EPWM9_SOCB = 22U

ePWM9, ADCSOCB

enumerator ADC_TRIGGER_EPWM10_SOCA = 23U

ePWM10, ADCSOCA

enumerator ADC_TRIGGER_EPWM10_SOCB = 24U

ePWM10, ADCSOCB

enumerator ADC_TRIGGER_EPWM11_SOCA = 25U

ePWM11, ADCSOCA

enumerator ADC_TRIGGER_EPWM11_SOCB = 26U

ePWM11, ADCSOCB

enumerator ADC_TRIGGER_EPWM12_SOCA = 27U

ePWM12, ADCSOCA

enumerator ADC_TRIGGER_EPWM12_SOCB = 28U

ePWM12, ADCSOCB

enumerator ADC_TRIGGER_CPU2_TINT0 = 29U

CPU2 Timer 0, TINT0.

enumerator ADC_TRIGGER_CPU2_TINT1 = 30U

CPU2 Timer 1, TINT1.

enumerator ADC_TRIGGER_CPU2_TINT2 = 31U

CPU2 Timer 2, TINT2.

enumerator ADC_TRIGGER_REPEATER1 = 40U

Repeater 1.

enumerator ADC_TRIGGER_REPEATER2 = 41U

Repeater 2.

enumerator ADC_TRIGGER_ECAP1 = 80U

eCAP1

enumerator ADC_TRIGGER_ECAP2 = 81U

eCAP2

enumerator ADC_TRIGGER_ECAP3 = 82U

eCAP3

enumerator ADC_TRIGGER_ECAP4 = 83U

eCAP4

enumerator ADC_TRIGGER_ECAP5 = 84U

eCAP5

enumerator ADC_TRIGGER_ECAP6 = 85U

eCAP6

enumerator ADC_TRIGGER_ECAP7 = 86U

eCAP7

enumerator ADC_TRIGGER_EPWM13_SOCA = 88U

ePWM13, ADCSOCA

enumerator ADC_TRIGGER_EPWM13_SOCB = 89U

ePWM13, ADCSOCB

enumerator ADC_TRIGGER_EPWM14_SOCA = 90U

ePWM14, ADCSOCA

enumerator ADC_TRIGGER_EPWM14_SOCB = 91U

ePWM14, ADCSOCB

enumerator ADC_TRIGGER_EPWM15_SOCA = 92U

ePWM15, ADCSOCA

enumerator ADC_TRIGGER_EPWM15_SOCB = 93U

ePWM15, ADCSOCB

enumerator ADC_TRIGGER_EPWM16_SOCA = 94U

ePWM16, ADCSOCA

enumerator ADC_TRIGGER_EPWM16_SOCB = 95U

ePWM16, ADCSOCB

enumerator ADC_TRIGGER_EPWM17_SOCA = 96U

ePWM17, ADCSOCA

enumerator ADC_TRIGGER_EPWM17_SOCB = 97U

ePWM17, ADCSOCB

enumerator ADC_TRIGGER_EPWM18_SOCA = 98U

ePWM18, ADCSOCA

enumerator ADC_TRIGGER_EPWM18_SOCB = 99U

ePWM18, ADCSOCB

enum ADC_Channel

Values that can be passed to ADC_setupSOC() as the channel parameter. This is the input pin on which the signal to be converted is located.

Values:

enumerator ADC_CH_ADCIN0 = 0U

single-ended, ADCIN0

enumerator ADC_CH_ADCIN1 = 1U

single-ended, ADCIN1

enumerator ADC_CH_ADCIN2 = 2U

single-ended, ADCIN2

enumerator ADC_CH_ADCIN3 = 3U

single-ended, ADCIN3

enumerator ADC_CH_ADCIN4 = 4U

single-ended, ADCIN4

enumerator ADC_CH_ADCIN5 = 5U

single-ended, ADCIN5

enumerator ADC_CH_ADCIN6 = 6U

single-ended, ADCIN6

enumerator ADC_CH_ADCIN7 = 7U

single-ended, ADCIN7

enumerator ADC_CH_ADCIN8 = 8U

single-ended, ADCIN8

enumerator ADC_CH_ADCIN9 = 9U

single-ended, ADCIN9

enumerator ADC_CH_ADCIN10 = 10U

single-ended, ADCIN10

enumerator ADC_CH_ADCIN11 = 11U

single-ended, ADCIN11

enumerator ADC_CH_ADCIN12 = 12U

single-ended, ADCIN12

enumerator ADC_CH_ADCIN13 = 13U

single-ended, ADCIN13

enumerator ADC_CH_ADCIN14 = 14U

single-ended, ADCIN14

enumerator ADC_CH_ADCIN15 = 15U

single-ended, ADCIN15

enumerator ADC_CH_ADCIN16 = 16U

single-ended, ADCIN16

enumerator ADC_CH_ADCIN17 = 17U

single-ended, ADCIN17

enumerator ADC_CH_ADCIN18 = 18U

single-ended, ADCIN18

enumerator ADC_CH_ADCIN19 = 19U

single-ended, ADCIN19

enumerator ADC_CH_ADCIN20 = 20U

single-ended, ADCIN20

enumerator ADC_CH_ADCIN21 = 21U

single-ended, ADCIN21

enumerator ADC_CH_ADCIN22 = 22U

single-ended, ADCIN22

enumerator ADC_CH_ADCIN23 = 23U

single-ended, ADCIN23

enumerator ADC_CH_ADCIN24 = 24U

single-ended, ADCIN24

enumerator ADC_CH_ADCIN25 = 25U

single-ended, ADCIN25

enumerator ADC_CH_ADCIN26 = 26U

single-ended, ADCIN26

enumerator ADC_CH_ADCIN27 = 27U

single-ended, ADCIN27

enumerator ADC_CH_ADCIN28 = 28U

single-ended, ADCIN28

enumerator ADC_CH_ADCIN29 = 29U

single-ended, ADCIN29

enumerator ADC_CH_ADCIN30 = 30U

single-ended, ADCIN30

enumerator ADC_CH_ADCIN31 = 31U

single-ended, ADCIN31

enumerator ADC_CH_ADCIN0_ADCIN1 = 0U

differential, ADCIN0 and ADCIN1

enumerator ADC_CH_ADCIN2_ADCIN3 = 2U

differential, ADCIN2 and ADCIN3

enumerator ADC_CH_ADCIN4_ADCIN5 = 4U

differential, ADCIN4 and ADCIN5

enumerator ADC_CH_ADCIN6_ADCIN7 = 6U

differential, ADCIN6 and ADCIN7

enumerator ADC_CH_ADCIN8_ADCIN9 = 8U

differential, ADCIN8 and ADCIN9

enumerator ADC_CH_ADCIN10_ADCIN11 = 10U

differential, ADCIN10 and ADCIN11

enumerator ADC_CH_ADCIN12_ADCIN13 = 12U

differential, ADCIN12 and ADCIN13

enumerator ADC_CH_ADCIN14_ADCIN15 = 14U

differential, ADCIN14 and ADCIN15

enumerator ADC_CH_ADCIN16_ADCIN17 = 16U

differential, ADCIN16 and ADCIN17

enumerator ADC_CH_ADCIN18_ADCIN19 = 18U

differential, ADCIN18 and ADCIN19

enumerator ADC_CH_ADCIN20_ADCIN21 = 20U

differential, ADCIN20 and ADCIN21

enumerator ADC_CH_ADCIN22_ADCIN23 = 22U

differential, ADCIN22 and ADCIN23

enumerator ADC_CH_ADCIN24_ADCIN25 = 24U

differential, ADCIN24 and ADCIN25

enumerator ADC_CH_ADCIN26_ADCIN27 = 26U

differential, ADCIN26 and ADCIN27

enumerator ADC_CH_ADCIN28_ADCIN29 = 28U

differential, ADCIN28 and ADCIN29

enumerator ADC_CH_ADCIN30_ADCIN31 = 30U

differential, ADCIN30 and ADCIN31

enum ADC_PulseMode

Values that can be passed to ADC_setInterruptPulseMode() as the pulseMode parameter.

Values:

enumerator ADC_PULSE_END_OF_ACQ_WIN = 0x00U

Occurs at the end of the acquisition window.

enumerator ADC_PULSE_END_OF_CONV = 0x04U

Occurs at the end of the conversion.

enum ADC_IntNumber

Values that can be passed to ADC_enableInterrupt(), ADC_disableInterrupt(), and ADC_getInterruptStatus() as the adcIntNum parameter.

Values:

enumerator ADC_INT_NUMBER1 = 0U

ADCINT1 Interrupt.

enumerator ADC_INT_NUMBER2 = 1U

ADCINT2 Interrupt.

enumerator ADC_INT_NUMBER3 = 2U

ADCINT3 Interrupt.

enumerator ADC_INT_NUMBER4 = 3U

ADCINT4 Interrupt.

enum ADC_PPBNumber

Values that can be passed in as the ppbNumber parameter for several functions.

Values:

enumerator ADC_PPB_NUMBER1 = 0U

Post-processing block 1.

enumerator ADC_PPB_NUMBER2 = 1U

Post-processing block 2.

enumerator ADC_PPB_NUMBER3 = 2U

Post-processing block 3.

enumerator ADC_PPB_NUMBER4 = 3U

Post-processing block 4.

enum ADC_SOCNumber

Values that can be passed in as the socNumber parameter for several functions. This value identifies the start-of-conversion (SOC) that a function is configuring or accessing. Note that in some cases (for example, ADC_setInterruptSource()) socNumber is used to refer to the corresponding end-of-conversion (EOC).

Values:

enumerator ADC_SOC_NUMBER0 = 0U

SOC/EOC number 0.

enumerator ADC_SOC_NUMBER1 = 1U

SOC/EOC number 1.

enumerator ADC_SOC_NUMBER2 = 2U

SOC/EOC number 2.

enumerator ADC_SOC_NUMBER3 = 3U

SOC/EOC number 3.

enumerator ADC_SOC_NUMBER4 = 4U

SOC/EOC number 4.

enumerator ADC_SOC_NUMBER5 = 5U

SOC/EOC number 5.

enumerator ADC_SOC_NUMBER6 = 6U

SOC/EOC number 6.

enumerator ADC_SOC_NUMBER7 = 7U

SOC/EOC number 7.

enumerator ADC_SOC_NUMBER8 = 8U

SOC/EOC number 8.

enumerator ADC_SOC_NUMBER9 = 9U

SOC/EOC number 9.

enumerator ADC_SOC_NUMBER10 = 10U

SOC/EOC number 10.

enumerator ADC_SOC_NUMBER11 = 11U

SOC/EOC number 11.

enumerator ADC_SOC_NUMBER12 = 12U

SOC/EOC number 12.

enumerator ADC_SOC_NUMBER13 = 13U

SOC/EOC number 13.

enumerator ADC_SOC_NUMBER14 = 14U

SOC/EOC number 14.

enumerator ADC_SOC_NUMBER15 = 15U

SOC/EOC number 15.

enum ADC_IntSOCTrigger

Values that can be passed in as the trigger parameter for the ADC_setInterruptSOCTrigger() function.

Values:

enumerator ADC_INT_SOC_TRIGGER_NONE = 0U

No ADCINT will trigger the SOC.

enumerator ADC_INT_SOC_TRIGGER_ADCINT1 = 1U

ADCINT1 will trigger the SOC.

enumerator ADC_INT_SOC_TRIGGER_ADCINT2 = 2U

ADCINT2 will trigger the SOC.

enum ADC_PriorityMode

Values that can be passed to ADC_setSOCPriority() as the priMode parameter.

Values:

enumerator ADC_PRI_ALL_ROUND_ROBIN = 0U

Round robin mode is used for all.

enumerator ADC_PRI_SOC0_HIPRI = 1U

SOC 0 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC1_HIPRI = 2U

SOC 0-1 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC2_HIPRI = 3U

SOC 0-2 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC3_HIPRI = 4U

SOC 0-3 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC4_HIPRI = 5U

SOC 0-4 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC5_HIPRI = 6U

SOC 0-5 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC6_HIPRI = 7U

SOC 0-6 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC7_HIPRI = 8U

SOC 0-7 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC8_HIPRI = 9U

SOC 0-8 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC9_HIPRI = 10U

SOC 0-9 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC10_HIPRI = 11U

SOC 0-10 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC11_HIPRI = 12U

SOC 0-11 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC12_HIPRI = 13U

SOC 0-12 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC13_HIPRI = 14U

SOC 0-13 hi pri, others in round robin.

enumerator ADC_PRI_THRU_SOC14_HIPRI = 15U

SOC 0-14 hi pri, SOC15 in round robin.

enumerator ADC_PRI_ALL_HIPRI = 16U

All priorities based on SOC number.

enum ADC_ReferenceMode

Values that can be passed to ADC_getTemperatureC(), ADC_getTemperatureK(), ADC_setVREF() and ADC_setOffsetTrimAll() as the refMode parameter.

Values:

enumerator ADC_REFERENCE_INTERNAL = 0U
enumerator ADC_REFERENCE_EXTERNAL = 1U
enum ADC_ReferenceVoltage

Values that can be passed to ADC_setVREF() and ADC_setOffsetTrimAll() as the refVoltage parameter.

Values:

enumerator ADC_REFERENCE_3_3V = 0U
enumerator ADC_REFERENCE_2_5V = 1U
enumerator ADC_REFERENCE_VREFHI = 0U

This value is valid when ADC reference mode is external

enum ADC_OSDetectMode

Values that can be passed to ADC_configOSDetectMode() as the modeVal parameter.

Values:

enumerator ADC_OSDETECT_MODE_DISABLED = 0x0U

Open/Shorts detection cir- cuit(O/S DC) is disabled

enumerator ADC_OSDETECT_MODE_VSSA = 0x1U

O/S DC is enabled at zero scale

enumerator ADC_OSDETECT_MODE_VDDA = 0x2U

O/S DC is enabled at full scale

enumerator ADC_OSDETECT_MODE_5BY12_VDDA = 0x3U

O/S DC is enabled at 5/12 scale

enumerator ADC_OSDETECT_MODE_7BY12_VDDA = 0x4U

O/S DC is enabled at 7/12 scale

enumerator ADC_OSDETECT_MODE_5K_PULLDOWN_TO_VSSA = 0x5U

O/S DC is enabled at 5K pulldown to VSSA

enumerator ADC_OSDETECT_MODE_5K_PULLUP_TO_VDDA = 0x6U

O/S DC is enabled at 5K pullup to VDDA

enumerator ADC_OSDETECT_MODE_7K_PULLDOWN_TO_VSSA = 0x7U

O/S DC is enabled at 7K pulldown to VSSA

enum ADC_OffsetTrim

Values that can be passed to ADC_selectOffsetTrimMode() as the mode parameter.

Values:

enumerator ADC_OFFSET_TRIM_COMMON = 0x0000U

Common Trim register for all ADC modes

enumerator ADC_OFFSET_TRIM_INDIVIDUAL = 0x0100U

Individual Trim registers for different ADC modes

enum ADC_ChannelType

Values that can be passed to ADC_setupSOCRefloChannel() as the channelType parameter.

Values:

enumerator ADC_CHANNEL_ODD = 0U

ADC Odd Channel.

enumerator ADC_CHANNEL_EVEN = 1U

ADC Even Channel.

enum ADC_SyncInput

Values that can be passed to ADC_selectPPBSyncInput() and ADC_triggerRepeaterSyncIn() as the syncInput parameter.

Values:

enumerator ADC_SYNCIN_DISABLE = 0x00U

ADC Syncin is disabled.

enumerator ADC_SYNCIN_EPWM1SYNCOUT = 0x01U

ADC Syncin is EPWM1SYNCOUT.

enumerator ADC_SYNCIN_EPWM2SYNCOUT = 0x02U

ADC Syncin is EPWM2SYNCOUT.

enumerator ADC_SYNCIN_EPWM3SYNCOUT = 0x03U

ADC Syncin is EPWM3SYNCOUT.

enumerator ADC_SYNCIN_EPWM4SYNCOUT = 0x04U

ADC Syncin is EPWM4SYNCOUT.

enumerator ADC_SYNCIN_EPWM5SYNCOUT = 0x05U

ADC Syncin is EPWM5SYNCOUT.

enumerator ADC_SYNCIN_EPWM6SYNCOUT = 0x06U

ADC Syncin is EPWM6SYNCOUT.

enumerator ADC_SYNCIN_EPWM7SYNCOUT = 0x07U

ADC Syncin is EPWM7SYNCOUT.

enumerator ADC_SYNCIN_EPWM8SYNCOUT = 0x08U

ADC Syncin is EPWM8SYNCOUT.

enumerator ADC_SYNCIN_EPWM9SYNCOUT = 0x09U

ADC Syncin is EPWM9SYNCOUT.

enumerator ADC_SYNCIN_EPWM10SYNCOUT = 0x0AU

ADC Syncin is EPWM10SYNCOUT.

enumerator ADC_SYNCIN_EPWM11SYNCOUT = 0x0BU

ADC Syncin is EPWM11SYNCOUT.

enumerator ADC_SYNCIN_EPWM12SYNCOUT = 0x0CU

ADC Syncin is EPWM12SYNCOUT.

enumerator ADC_SYNCIN_EPWM13SYNCOUT = 0x0DU

ADC Syncin is EPWM13SYNCOUT.

enumerator ADC_SYNCIN_EPWM14SYNCOUT = 0x0EU

ADC Syncin is EPWM14SYNCOUT.

enumerator ADC_SYNCIN_EPWM15SYNCOUT = 0x0FU

ADC Syncin is EPWM15SYNCOUT.

enumerator ADC_SYNCIN_EPWM16SYNCOUT = 0x10U

ADC Syncin is EPWM16SYNCOUT.

enumerator ADC_SYNCIN_EPWM17SYNCOUT = 0x11U

ADC Syncin is EPWM17SYNCOUT.

enumerator ADC_SYNCIN_EPWM18SYNCOUT = 0x12U

ADC Syncin is EPWM18SYNCOUT.

enumerator ADC_SYNCIN_ECAP1YNCOUT = 0x13U

ADC Syncin is ECAP1YNCOUT.

enumerator ADC_SYNCIN_ECAP2SYNCOUT = 0x14U

ADC Syncin is ECAP2SYNCOUT.

enumerator ADC_SYNCIN_ECAP3SYNCOUT = 0x15U

ADC Syncin is ECAP3SYNCOUT.

enumerator ADC_SYNCIN_ECAP4SYNCOUT = 0x16U

ADC Syncin is ECAP4SYNCOUT.

enumerator ADC_SYNCIN_ECAP5SYNCOUT = 0x17U

ADC Syncin is ECAP5SYNCOUT.

enumerator ADC_SYNCIN_ECAP6SYNCOUT = 0x18U

ADC Syncin is ECAP6SYNCOUT.

enumerator ADC_SYNCIN_ECAP7SYNCOUT = 0x19U

ADC Syncin is ECAP7SYNCOUT.

enumerator ADC_SYNCIN_INPUTXBAROUTPUT5 = 0x1AU

ADC Syncin is INPUTXBAROUTPUT5.

enumerator ADC_SYNCIN_INPUTXBAROUTPUT6 = 0x1BU

ADC Syncin is INPUTXBAROUTPUT6.

enumerator ADC_SYNCIN_EtherCATSYNC0 = 0x1CU

ADC Syncin is EtherCATSYNC0.

enumerator ADC_SYNCIN_EtherCATSYNC1 = 0x1DU

ADC Syncin is EtherCATSYNC1.

enum ADC_PPBIntSrcSelect

Values that can be passed to ADC_selectPPBOSINTSource() as the osIntSrc parameter.

Values:

enumerator ADC_PPB_OS_INT_1 = 0x0U

PCount generates PPB interrupt.

enumerator ADC_PPB_OS_INT_2 = 0x1U

PCount/Sync generates PPB interrupt.

enum ADC_ExtChannel

Values that can be passed to ADC_selectSOCExtChannel() as the extChannel parameter.

Values:

enumerator ADC_CH_ADCINX_0 = 0x0U

ADCINX.0 is converted.

enumerator ADC_CH_ADCINX_1 = 0x1U

ADCINX.1 is converted.

enumerator ADC_CH_ADCINX_2 = 0x2U

ADCINX.2 is converted.

enumerator ADC_CH_ADCINX_3 = 0x3U

ADCINX.3 is converted.

enumerator ADC_CH_ADCINX_4 = 0x4U

ADCINX.4 is converted.

enumerator ADC_CH_ADCINX_5 = 0x5U

ADCINX.5 is converted.

enumerator ADC_CH_ADCINX_6 = 0x6U

ADCINX.6 is converted.

enumerator ADC_CH_ADCINX_7 = 0x7U

ADCINX.7 is converted.

enumerator ADC_CH_ADCINX_8 = 0x8U

ADCINX.8 is converted.

enumerator ADC_CH_ADCINX_9 = 0x9U

ADCINX.9 is converted.

enumerator ADC_CH_ADCINX_10 = 0xAU

ADCINX.10 is converted.

enumerator ADC_CH_ADCINX_11 = 0xBU

ADCINX.11 is converted.

enumerator ADC_CH_ADCINX_12 = 0xCU

ADCINX.12 is converted.

enumerator ADC_CH_ADCINX_13 = 0xDU

ADCINX.13 is converted.

enumerator ADC_CH_ADCINX_14 = 0xEU

ADCINX.14 is converted.

enumerator ADC_CH_ADCINX_15 = 0xFU

ADCINX.15 is converted.

enum ADC_IntTrigger

Values that can be passed to ADC_setInterruptSource() as the intTrigger parameter.

Values:

enumerator ADC_INT_TRIGGER_EOC0 = 0U

SOC/EOC0.

enumerator ADC_INT_TRIGGER_EOC1 = 1U

SOC/EOC1.

enumerator ADC_INT_TRIGGER_EOC2 = 2U

SOC/EOC2.

enumerator ADC_INT_TRIGGER_EOC3 = 3U

SOC/EOC3.

enumerator ADC_INT_TRIGGER_EOC4 = 4U

SOC/EOC4.

enumerator ADC_INT_TRIGGER_EOC5 = 5U

SOC/EOC5.

enumerator ADC_INT_TRIGGER_EOC6 = 6U

SOC/EOC6.

enumerator ADC_INT_TRIGGER_EOC7 = 7U

SOC/EOC7.

enumerator ADC_INT_TRIGGER_EOC8 = 8U

SOC/EOC8.

enumerator ADC_INT_TRIGGER_EOC9 = 9U

SOC/EOC9.

enumerator ADC_INT_TRIGGER_EOC10 = 10U

SOC/EOC10.

enumerator ADC_INT_TRIGGER_EOC11 = 11U

SOC/EOC11.

enumerator ADC_INT_TRIGGER_EOC12 = 12U

SOC/EOC12.

enumerator ADC_INT_TRIGGER_EOC13 = 13U

SOC/EOC13.

enumerator ADC_INT_TRIGGER_EOC14 = 14U

SOC/EOC14.

enumerator ADC_INT_TRIGGER_EOC15 = 15U

SOC/EOC15.

enumerator ADC_INT_TRIGGER_OSINT1 = 16U

OSINT1.

enumerator ADC_INT_TRIGGER_OSINT2 = 17U

OSINT2.

enumerator ADC_INT_TRIGGER_OSINT3 = 18U

OSINT3.

enumerator ADC_INT_TRIGGER_OSINT4 = 19U

OSINT4.

enum ADC_PPBCompSource

Values that can be passed to ADC_selectPPBCompareSource() as the compSrc parameter.

Values:

enumerator ADC_PPB_COMPSOURCE_RESULT = 0x0U

PPB compare source is ADCRESULT.

enumerator ADC_PPB_COMPSOURCE_PSUM = 0x1U

PPB compare source is PSUM.

enumerator ADC_PPB_COMPSOURCE_SUM = 0x2U

PPB compare source is SUM.

enum ADC_Select

Values that can be passed to ADC_configureSafetyChecker() as the adcInst parameter.

Values:

enumerator ADC_A = 0U

Select ADCA instance.

enumerator ADC_B = 1U

Select ADCB instance.

enumerator ADC_C = 2U

Select ADCC instance.

enum ADC_ResultSelect

Values that can be passed to ADC_configureSafetyChecker() as the adcResultInst parameter.

Values:

enumerator ADC_RESULT0 = 0U

Select ADC Result 0.

enumerator ADC_RESULT1 = 1U

Select ADC Result 1.

enumerator ADC_RESULT2 = 2U

Select ADC Result 2.

enumerator ADC_RESULT3 = 3U

Select ADC Result 3.

enumerator ADC_RESULT4 = 4U

Select ADC Result 4.

enumerator ADC_RESULT5 = 5U

Select ADC Result 5.

enumerator ADC_RESULT6 = 6U

Select ADC Result 6.

enumerator ADC_RESULT7 = 7U

Select ADC Result 7.

enumerator ADC_RESULT8 = 8U

Select ADC Result 8.

enumerator ADC_RESULT9 = 9U

Select ADC Result 9.

enumerator ADC_RESULT10 = 10U

Select ADC Result 10.

enumerator ADC_RESULT11 = 11U

Select ADC Result 11.

enumerator ADC_RESULT12 = 12U

Select ADC Result 12.

enumerator ADC_RESULT13 = 13U

Select ADC Result 13.

enumerator ADC_RESULT14 = 14U

Select ADC Result 14.

enumerator ADC_RESULT15 = 15U

Select ADC Result 15.

enum ADC_SafetyCheckerInput

Values that can be passed to ADC_configSOCSafetyCheckerInput() as the scInput parameter.

Values:

enumerator ADC_SAFETY_CHECKER_INPUT_DISABLE = 0x0U

Safety checker i/p disabled.

enumerator ADC_SAFETY_CHECKER_INPUT_SOCx = 0x1U

Safety checker i/p is SOCx.

enumerator ADC_SAFETY_CHECKER_INPUT_PPBx = 0x2U

Safety checker i/p is PPBx.

enumerator ADC_SAFETY_CHECKER_INPUT_PPBSUMx = 0x3U

Safety checker i/p is PPBSUMx.

enum ADC_SafetyCheckInst

Values that can be passed to ADC_getSafetyCheckerResult() as checkInst parameter.

Values:

enumerator ADC_SAFETY_CHECK1 = 0x0U

Safety Check Result 1.

enumerator ADC_SAFETY_CHECK2 = 0x2U

Safety Check Result 2.

enum ADC_SafetyCheckEvent

Values that can be passed to ADC_enableSafetyCheckEvt() and ADC_disableSafetyCheckEvt() as checkEvent parameter.

Values:

enumerator ADC_SAFETY_CHECK_EVENT1 = 0U

Safety Check Event 1.

enumerator ADC_SAFETY_CHECK_EVENT2 = 8U

Safety Check Event 2.

enumerator ADC_SAFETY_CHECK_EVENT3 = 16U

Safety Check Event 3.

enumerator ADC_SAFETY_CHECK_EVENT4 = 24U

Safety Check Event 4.

enum ADC_SafetyCheckResult

Values that can be passed to ADC_enableSafetyCheckEvt(), ADC_disableSafetyCheckEvt(), ADC_enableSafetyCheckInt() and ADC_disableSafetyCheckInt() as checkResult parameter.

Values:

enumerator ADC_SAFETY_CHECK_RES1OVF = 0U

Safety Check Result1 Overflow.

enumerator ADC_SAFETY_CHECK_RES2OVF = 2U

Safety Check Result2 Overflow.

enumerator ADC_SAFETY_CHECK_OOT = 4U

Safety Check OOT.

enum ADC_Checker

Values that can be passed to ADC_enableSafetyCheckEvt(), ADC_disableSafetyCheckEvt(), ADC_enableSafetyCheckInt(), ADC_disableSafetyCheckInt(), ADC_getSafetyCheckStatus(), ADC_clearSafetyCheckStatus(), ADC_getSafetyCheckIntStatus() and ADC_clearSafetyCheckIntStatus() as checkerNumber parameter.

Values:

enumerator ADC_SAFETY_CHECKER1 = 0U

Safety Checker1.

enumerator ADC_SAFETY_CHECKER2 = 1U

Safety Checker2.

enumerator ADC_SAFETY_CHECKER3 = 2U

Safety Checker3.

enumerator ADC_SAFETY_CHECKER4 = 3U

Safety Checker4.

enumerator ADC_SAFETY_CHECKER5 = 4U

Safety Checker5.

enumerator ADC_SAFETY_CHECKER6 = 5U

Safety Checker6.

enumerator ADC_SAFETY_CHECKER7 = 6U

Safety Checker7.

enumerator ADC_SAFETY_CHECKER8 = 7U

Safety Checker8.

enum ADC_SafetyCheckFlag

Values that can be passed to ADC_getSafetyCheckStatus() and ADC_clearSafetyCheckStatus(), as checkerFlag parameter.

Values:

enumerator ADC_SAFETY_CHECK_OOT_FLG = 0U

Safety Check Out-of-Tolerance Flag.

enumerator ADC_SAFETY_CHECK_RES1OVF_FLG = 4U

Safety Check Result1 Overflow Flag.

enumerator ADC_SAFETY_CHECK_RES2OVF_FLG = 8U

Safety Check Result2 Overflow Flag.

enum ADC_RepInstance

Values that can be passed to ADC_configureRepeater() as the repInstance parameter.

Values:

enumerator ADC_REPINST1 = 0x0U

Select ADC repeater instance 1.

enumerator ADC_REPINST2 = 0x1U

Select ADC repeater instance 2.

enum ADC_RepMode

Values that can be passed to ADC_configureRepeater() as the config.repMode and ADC_triggerRepeaterMode() as mode parameter.

Values:

enumerator ADC_REPMODE_OVERSAMPLING = 0x0U

ADC repeater mode is oversampling.

enumerator ADC_REPMODE_UNDERSAMPLING = 0x1U

ADC repeater mode is undersampling.

Functions

void ADC_setPrescaler(uint32_t base, ADC_ClkPrescale clkPrescale)

Configures the analog-to-digital converter module prescaler.

This function configures the ADC module’s ADCCLK.

Parameters
  • base: is the base address of the ADC module.

  • clkPrescale: is the ADC clock prescaler.

The clkPrescale parameter specifies the value by which the input clock is divided to make the ADCCLK. The clkPrescale value can be specified with any of the following enum values: ADC_CLK_DIV_1_0, ADC_CLK_DIV_2_0, ADC_CLK_DIV_2_5, …, ADC_CLK_DIV_7_5, ADC_CLK_DIV_8_0, or ADC_CLK_DIV_8_5.

Return

None.

void ADC_setupSOC(uint32_t base, ADC_SOCNumber socNumber, ADC_Trigger trigger, ADC_Channel channel, uint32_t sampleWindow)

Configures a start-of-conversion (SOC) in the ADC.

This function configures the a start-of-conversion (SOC) in the ADC module.

Parameters
  • base: is the base address of the ADC module.

  • socNumber: is the number of the start-of-conversion.

  • trigger: the source that will cause the SOC.

  • channel: is the number associated with the input signal.

  • sampleWindow: is the acquisition window duration.

The socNumber number is a value ADC_SOC_NUMBERX where X is a number from 0 to 15 specifying which SOC is to be configured on the ADC module specified by base.

The trigger specifies the event that causes the SOC such as software, a timer interrupt, an ePWM event, or an ADC interrupt. It should be a value in the format of ADC_TRIGGER_XXXX where XXXX is the event such as ADC_TRIGGER_SW_ONLY, ADC_TRIGGER_CPU1_TINT0, ADC_TRIGGER_GPIO, ADC_TRIGGER_EPWM1_SOCA, and so on.

The channel parameter specifies the channel to be converted. In single-ended mode this is a single pin given by ADC_CH_ADCINx where x is the number identifying the pin between 0 and 31 inclusive. In differential mode, two pins are used as inputs and are passed in the channel parameter as ADC_CH_ADCIN0_ADCIN1, ADC_CH_ADCIN2_ADCIN3, …, or ADC_CH_ADCIN14_ADCIN15.

The sampleWindow parameter is the acquisition window duration in SYSCLK cycles. It should be a value between 1 and 512 cycles inclusive. The selected duration must be at least as long as one ADCCLK cycle. Also, the datasheet will specify a minimum window duration requirement in nanoseconds.

Return

None.

void ADC_disableIntRefloConnection(void)

Disable internal VREFLO connection.

This function disables the internal connection of VREFLO for the ADC.

Note

This function disables the internal connections for VREFLO which is available through CMPSS module. To confiugre the internal connection for VREFLO, please refer ADC_setupSOCRefloChannel().

Return

None.

void ADC_selectSOCExtChannel(uint32_t base, ADC_SOCNumber socNumber, uint16_t extChannel)

Configures the external channel mux for an ADC SOC.

This function configures the external channel for an SOC by configuring the external channel mux for an SOC.

Parameters
  • base: is the base address of the ADC module.

  • socNumber: is the number of the start-of-conversion.

  • extChannel: is the desired external channel.

The socNumber number is a value ADC_SOC_NUMBERX where X is a number from 0 to 15 specifying which SOC is to be configured on the ADC module specified by base.

The extChannel is the desired external channel. Valid values can be refered from the enum ADC_ExtChannel.

Return

None.

void ADC_forceRepeaterTrigger(uint32_t base, uint16_t repInstance)

Forces software trigger to ADC trigger repeater block

This function forces the selected ADC repeater block.

Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance to be triggered.

Valid values for repInstance parameter can be any of the individual ADC_REPEATER_INSTANCEx values defined by enum ADC_RepInstance.

Return

None.

uint16_t ADC_getRepeaterStatus(uint32_t base, uint16_t repInstance)

Gets the current status for repeater block.

This function returns the current status for the repeater block.

Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance

Return

Returns the current event status, enumerated as a bit field of ADC_REPEATER_MODULE_BUSY, ADC_REPEATER_TRIGGER_OVERFLOW and ADC_REPEATER_PHASE_OVERFLOW.

void ADC_setInterruptSOCTrigger(uint32_t base, ADC_SOCNumber socNumber, ADC_IntSOCTrigger trigger)

Configures the interrupt SOC trigger of an SOC.

This function configures the interrupt start-of-conversion trigger in the ADC module.

Parameters
  • base: is the base address of the ADC module.

  • socNumber: is the number of the start-of-conversion.

  • trigger: the interrupt source that will cause the SOC.

The socNumber number is a value ADC_SOC_NUMBERX where X is a number from 0 to 15 specifying which SOC is to be configured on the ADC module specified by base.

The trigger specifies the interrupt that causes a start of conversion or none. It should be one of the following values.

  • ADC_INT_SOC_TRIGGER_NONE

  • ADC_INT_SOC_TRIGGER_ADCINT1

  • ADC_INT_SOC_TRIGGER_ADCINT2

This functionality is useful for creating continuous conversions.

Return

None.

void ADC_setInterruptPulseMode(uint32_t base, ADC_PulseMode pulseMode)

Sets the timing of the end-of-conversion pulse

This function configures the end-of-conversion (EOC) pulse generated by ADC. This pulse will be generated either at the end of the acquisition window plus a number of SYSCLK cycles configured by

ADC_setInterruptCycleOffset() (pass ADC_PULSE_END_OF_ACQ_WIN into pulseMode) or at the end of the voltage conversion, one cycle prior to the ADC result latching into it’s result register (pass ADC_PULSE_END_OF_CONV into pulseMode).
Parameters
  • base: is the base address of the ADC module.

  • pulseMode: is the generation mode of the EOC pulse.

Return

None.

void ADC_setInterruptCycleOffset(uint32_t base, uint16_t cycleOffset)

Sets the timing of early interrupt generation.

This function configures cycle offset between the negative edge of a sample pulse and an early interrupt pulse being generated. This number of cycles is specified with the

cycleOffset parameter.
Parameters
  • base: is the base address of the ADC module.

  • cycleOffset: is the cycles from an SOC falling edge to an early interrupt pulse.

This function only applies when early interrupt generation is enabled. That means the ADC_setInterruptPulseMode() function pulseMode parameter is configured as ADC_PULSE_END_OF_ACQ_WIN.

Return

None.

void ADC_enableAltDMATiming(uint32_t base)

Enables alternate timings for DMA trigger

This function enables the alternate timings(tDMA) for DMA trigger. When enabled the DMA is always triggered at tDMA regardless of whether the ADC is in early interrupt mode or late interrupt mode.

Parameters
  • base: is the base address of the ADC module.

Return

None.

void ADC_disableAltDMATiming(uint32_t base)

Disables alternate timings for DMA trigger

This function disables the alternate timings(tDMA) for DMA trigger. When disabled the DMA is triggered at the same time as the CPU interrupt.

Parameters
  • base: is the base address of the ADC module.

Return

None.

void ADC_enableExtMuxPreselect(uint32_t base)

Enables external channel mux preselection

This function enables the preselection of external mux pins which is at the end of the S+H window of the previous conversion. This preselection allows some of the external mux settling time to be pipelined with previous conversion’s conversion time and can be enabled if ADC SOC sequence is deterministic.

Parameters
  • base: is the base address of the ADC module.

Return

None.

void ADC_disableExtMuxPreselect(uint32_t base)

Disables external mux preselection

This function disables the preselection of external mux pins as in ADCEXTMUX pins can only change at the beginning of S+H window of current conversion.

Parameters
  • base: is the base address of the ADC module.

Return

None.

void ADC_selectOffsetTrimMode(uint32_t base, ADC_OffsetTrim mode)

Selects the offset trim mode

This function configures the offset trim mode for an ADC instance. This means that the offset trim to be used for an ADC mode would be specified by the

mode parameter. Valid values for mode parameter are:
  • ADC_OFFSET_TRIM_COMMON - Offset trim will always be supplied from ADCOFFTRIM.OFFTRIM register field (Legacy mode)

  • ADC_OFFSET_TRIM_INDIVIDUAL - offset trim will be supplied from individual registers based on the combination of resolution, signalmode, and capacitor bank related configurations.

Parameters
  • base: is the base address of the ADC module.

  • mode: is the offset trim mode to be selected.

Return

None.

bool ADC_getIntResultStatus(uint32_t base, ADC_IntNumber adcIntNum)

Gets the result ready status for ADC interrupt.

This function returns the result ready status associated with the selected interrupt number within the ADC wrapper.

Parameters
  • base: is the base address of the ADC module.

  • adcIntNum: is interrupt number within the ADC wrapper.

adcIntNum takes a one of the values ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to get the result ready status for the conversions associated with the given interrupt number.

Return

true if the result is available for the selected interrupt and false if it is not.

void ADC_enableConverter(uint32_t base)

Powers up the analog-to-digital converter core.

This function powers up the analog circuitry inside the analog core.

Parameters
  • base: is the base address of the ADC module.

Note

Allow at least a 500us delay before sampling after calling this API. If you enable multiple ADCs, you can delay after they all have begun powering up.

Return

None.

void ADC_disableConverter(uint32_t base)

Powers down the analog-to-digital converter module.

This function powers down the analog circuitry inside the analog core.

Parameters
  • base: is the base address of the ADC module.

Return

None.

void ADC_forceSOC(uint32_t base, ADC_SOCNumber socNumber)

Forces a SOC flag to a 1 in the analog-to-digital converter.

This function forces the SOC flag associated with the SOC specified by

socNumber. This initiates a conversion once that SOC is given priority. This software trigger can be used whether or not the SOC has been configured to accept some other specific trigger.
Parameters
  • base: is the base address of the ADC module.

  • socNumber: is the number of the start-of-conversion.

Return

None.

void ADC_forceMultipleSOC(uint32_t base, uint16_t socMask)

Forces multiple SOC flags to 1 in the analog-to-digital converter.

This function forces the SOCFRC1 flags associated with the SOCs specified by

socMask. This initiates a conversion once the desired SOCs are given priority. This software trigger can be used whether or not the SOC has been configured to accept some other specific trigger. Valid values for socMask parameter can be any of the individual ADC_FORCE_SOCx values or any of their OR’d combination to trigger multiple SOCs.
Parameters
  • base: is the base address of the ADC module.

  • socMask: is the SOCs to be forced through software

Note

To trigger SOC0, SOC1 and SOC2, value (ADC_FORCE_SOC0 | ADC_FORCE_SOC1 | ADC_FORCE_SOC2) should be passed as socMask.

Return

None.

bool ADC_getInterruptStatus(uint32_t base, ADC_IntNumber adcIntNum)

Gets the current ADC interrupt status.

This function returns the interrupt status for the analog-to-digital converter.

Parameters
  • base: is the base address of the ADC module.

  • adcIntNum: is interrupt number within the ADC wrapper.

adcIntNum takes a one of the values ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to get the interrupt status for the given interrupt number of the ADC module.

Return

true if the interrupt flag for the specified interrupt number is set and false if it is not.

void ADC_clearInterruptStatus(uint32_t base, ADC_IntNumber adcIntNum)

Clears ADC interrupt sources.

This function clears the specified ADC interrupt sources so that they no longer assert. If not in continuous mode, this function must be called before any further interrupt pulses may occur.

Parameters
  • base: is the base address of the ADC module.

  • adcIntNum: is interrupt number within the ADC wrapper.

adcIntNum takes a one of the values ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to express which of the four interrupts of the ADC module should be cleared.

Return

None.

bool ADC_getInterruptOverflowStatus(uint32_t base, ADC_IntNumber adcIntNum)

Gets the current ADC interrupt overflow status.

This function returns the interrupt overflow status for the analog-to-digital converter. An overflow condition is generated irrespective of the continuous mode.

Parameters
  • base: is the base address of the ADC module.

  • adcIntNum: is interrupt number within the ADC wrapper.

adcIntNum takes a one of the values ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to get the interrupt overflow status for the given interrupt number.

Return

true if the interrupt overflow flag for the specified interrupt number is set and false if it is not.

void ADC_clearInterruptOverflowStatus(uint32_t base, ADC_IntNumber adcIntNum)

Clears ADC interrupt overflow sources.

This function clears the specified ADC interrupt overflow sources so that they no longer assert. If software tries to clear the overflow in the same cycle that hardware tries to set the overflow, then hardware has priority.

Parameters
  • base: is the base address of the ADC module.

  • adcIntNum: is interrupt number within the ADC wrapper.

adcIntNum takes a one of the values ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to express which of the four interrupt overflow status of the ADC module should be cleared.

Return

None.

uint16_t ADC_readResult(uint32_t resultBase, ADC_SOCNumber socNumber)

Reads the conversion result.

This function returns the conversion result that corresponds to the base address passed into

resultBase and the SOC passed into socNumber.
Parameters
  • resultBase: is the base address of the ADC results.

  • socNumber: is the number of the start-of-conversion.

The socNumber number is a value ADC_SOC_NUMBERX where X is a number from 0 to 15 specifying which SOC’s result is to be read.

Note

Take care that you are using a base address for the result registers (ADCxRESULT_BASE) and not a base address for the control registers.

Return

Returns the conversion result.

bool ADC_isBusy(uint32_t base)

Determines whether the ADC is busy or not.

This function allows the caller to determine whether or not the ADC is busy and can sample another channel.

Parameters
  • base: is the base address of the ADC.

Return

Returns true if the ADC is sampling or false if all samples are complete.

void ADC_setBurstModeConfig(uint32_t base, ADC_Trigger trigger, uint16_t burstSize)

Set SOC burst mode.

This function configures the burst trigger and burstSize of an ADC module. Burst mode allows a single trigger to walk through the round-robin SOCs one or more at a time. When burst mode is enabled, the trigger selected by the

ADC_setupSOC() API will no longer have an effect on the SOCs in round-robin mode. Instead, the source specified through the trigger parameter will cause a burst of burstSize conversions to occur.
Parameters
  • base: is the base address of the ADC.

  • trigger: the source that will cause the burst conversion sequence.

  • burstSize: is the number of SOCs converted during a burst sequence.

The trigger parameter takes the same values as the ADC_setupSOC() API The burstSize parameter should be a value between 1 and 16 inclusive.

Return

None.

void ADC_enableBurstMode(uint32_t base)

Enables SOC burst mode.

This function enables SOC burst mode operation of the ADC. Burst mode allows a single trigger to walk through the round-robin SOCs one or more at a time. When burst mode is enabled, the trigger selected by the

ADC_setupSOC() API will no longer have an effect on the SOCs in round-robin mode. Use ADC_setBurstMode() to configure the burst trigger and size.
Parameters
  • base: is the base address of the ADC.

Return

None.

void ADC_disableBurstMode(uint32_t base)

Disables SOC burst mode.

This function disables SOC burst mode operation of the ADC. SOCs in round-robin mode will be triggered by the trigger configured using the

ADC_setupSOC() API.
Parameters
  • base: is the base address of the ADC.

Return

None.

void ADC_setSOCPriority(uint32_t base, ADC_PriorityMode priMode)

Sets the priority mode of the SOCs.

This function sets the priority mode of the SOCs. There are three main modes that can be passed in the

priMode parameter
Parameters
  • base: is the base address of the ADC.

  • priMode: is the priority mode of the SOCs.

  • All SOCs are in round-robin mode. This means no SOC has an inherent higher priority over another. This is selected by passing in the value ADC_PRI_ALL_ROUND_ROBIN.

  • All priorities are in high priority mode. This means that the priority of the SOC is determined by its SOC number. This option is selected by passing in the value ADC_PRI_ALL_HIPRI.

  • A range of SOCs are assigned high priority, with all others in round robin mode. High priority mode means that an SOC with high priority will interrupt the round robin wheel and insert itself as the next conversion. Passing in the value ADC_PRI_SOC0_HIPRI will make SOC0 highest priority, ADC_PRI_THRU_SOC1_HIPRI will put SOC0 and SOC 1 in high priority, and so on up to ADC_PRI_THRU_SOC14_HIPRI where SOCs 0 through 14 are in high priority.

Return

None.

void ADC_configOSDetectMode(uint32_t base, ADC_OSDetectMode modeVal)

Configures Open/Shorts Detection Circuit Mode.

This function configures the open/shorts detection circuit mode of the ADC.

Parameters
  • base: is the base address of the ADC.

  • modeVal: is the desired open/shorts detection circuit mode.

Return

None.

void ADC_setupPPB(uint32_t base, ADC_PPBNumber ppbNumber, ADC_SOCNumber socNumber)

Configures a post-processing block (PPB) in the ADC.

This function associates a post-processing block with a SOC.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • socNumber: is the number of the start-of-conversion.

The ppbNumber is a value ADC_PPB_NUMBERX where X is a value from 1 to 4 inclusive that identifies a PPB to be configured. The socNumber number is a value ADC_SOC_NUMBERX where X is a number from 0 to 15 specifying which SOC is to be configured on the ADC module specified by base.

Note

You can have more that one PPB associated with the same SOC, but a PPB can only be configured to correspond to one SOC at a time. Also note that when you have multiple PPBs for the same SOC, the calibration offset that actually gets applied will be that of the PPB with the highest number. Since SOC0 is the default for all PPBs, look out for unintentional overwriting of a lower numbered PPB’s offset.

Return

None.

void ADC_enablePPBEvent(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t evtFlags)

Enables individual ADC PPB event sources.

This function enables the indicated ADC PPB event sources. This will allow the specified events to propagate through the X-BAR to a pin or to an ePWM module. The

evtFlags parameter can be any of the ADC_EVT_TRIPHI, ADC_EVT_TRIPLO, or ADC_EVT_ZERO values.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • evtFlags: is a bit mask of the event sources to be enabled.

Return

None.

void ADC_disablePPBEvent(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t evtFlags)

Disables individual ADC PPB event sources.

This function disables the indicated ADC PPB event sources. This will stop the specified events from propagating through the X-BAR to other modules. The

evtFlags parameter can be any of the ADC_EVT_TRIPHI, ADC_EVT_TRIPLO, or ADC_EVT_ZERO values.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • evtFlags: is a bit mask of the event sources to be enabled.

Return

None.

void ADC_enablePPBEventInterrupt(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t intFlags)

Enables individual ADC PPB event interrupt sources.

This function enables the indicated ADC PPB interrupt sources. Only the sources that are enabled can be reflected to the processor interrupt. Disabled sources have no effect on the processor. The

intFlags parameter can be any of the ADC_EVT_TRIPHI, ADC_EVT_TRIPLO, or ADC_EVT_ZERO values.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • intFlags: is a bit mask of the interrupt sources to be enabled.

Return

None.

void ADC_disablePPBEventInterrupt(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t intFlags)

Disables individual ADC PPB event interrupt sources.

This function disables the indicated ADC PPB interrupt sources. Only the sources that are enabled can be reflected to the processor interrupt. Disabled sources have no effect on the processor. The

intFlags parameter can be any of the ADC_EVT_TRIPHI, ADC_EVT_TRIPLO, or ADC_EVT_ZERO values.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • intFlags: is a bit mask of the interrupt source to be disabled.

Return

None.

uint16_t ADC_getPPBEventStatus(uint32_t base, ADC_PPBNumber ppbNumber)

Gets the current ADC event status.

This function returns the event status for the analog-to-digital converter.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

Returns the current event status, enumerated as a bit field of ADC_EVT_TRIPHI, ADC_EVT_TRIPLO, and ADC_EVT_ZERO.

void ADC_clearPPBEventStatus(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t evtFlags)

Clears ADC event flags.

This function clears the indicated ADC PPB event flags. After an event occurs this function must be called to allow additional events to be produced. The

evtFlags parameter can be any of the ADC_EVT_TRIPHI, ADC_EVT_TRIPLO, or ADC_EVT_ZERO values.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • evtFlags: is a bit mask of the event source to be cleared.

Return

None.

void ADC_enablePPBEventCBCClear(uint32_t base, ADC_PPBNumber ppbNumber)

Enables cycle-by-cycle clear of ADC PPB event flags.

This function enables the automatic cycle-by-cycle clear of ADC PPB event flags. When enabled, the desired PPB event flags are automatically cleared on the next PPBxRESULT load, unless a set condition is also occurring at the same time, in which case the set takes precedence.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

None.

void ADC_disablePPBEventCBCClear(uint32_t base, ADC_PPBNumber ppbNumber)

Disables cycle-by-cycle clear of ADC PPB event flags.

This function disables the cycle-by-cycle clear of ADC PPB event flags. When disabled, the desired PPB event flags are to be cleared explicitly in software inorder to generate next set of interrupts/events.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

None.

void ADC_setPPBCountLimit(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t limit)

Configures PPB count limit.

This function configures the PPB oversampling count limit which defines the number of ADC conversions to accumulate before partial sum is automatically loaded to the sum registes.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • limit: is the desired PPB count limit.

Return

None.

uint16_t ADC_getPPBCountLimit(uint32_t base, ADC_PPBNumber ppbNumber)

Returns the PPB count limit.

This function returns the PPB oversampling count limit which defines the number of ADC conversions to accumulate before partial sum is automatically loaded to the sum registes.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

Returns the PPB count limit.

uint16_t ADC_readPPBPCount(uint32_t base, ADC_PPBNumber ppbNumber)

Reads the oversampled partial count from the PPB.

This function returns the oversampled partial count that corresponds to the base address passed into

base and the PPB passed into ppbNumber.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

Returns the oversampled partial count value.

int32_t ADC_readPPBPSum(uint32_t base, ADC_PPBNumber ppbNumber)

Reads the oversampled partial sum from the PPB.

This function returns the oversampled partial sum of PPB results that corresponds to the base address passed into

base and the PPB passed into ppbNumber.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

Returns the oversampled partial sum value.

int32_t ADC_readPPBPMax(uint32_t base, ADC_PPBNumber ppbNumber)

Reads the processed conversion result’s partial maximum value from the PPB.

This function returns the oversampled partial maximum that corresponds to the base address passed into

base and the PPB passed into ppbNumber.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

Returns the oversampled partial maximum value.

int32_t ADC_readPPBPMin(uint32_t base, ADC_PPBNumber ppbNumber)

Reads the processed conversion result’s partial minimum value from the PPB.

This function returns the oversampled partial minimum that corresponds to the base address passed into

base and the PPB passed into ppbNumber.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

Returns the oversampled partial minimum value.

uint16_t ADC_readPPBPMaxIndex(uint32_t base, ADC_PPBNumber ppbNumber)

Reads the index of the result with partial maximum value from the PPB.

This function returns the index of the oversampled partial maximum value that corresponds to the base address passed into

base and the PPB passed into ppbNumber.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

Returns the index of the oversampled partial maximum value.

uint16_t ADC_readPPBPMinIndex(uint32_t base, ADC_PPBNumber ppbNumber)

Reads the index of the result with partial minimum value from the PPB.

This function returns the index of the oversampled partial minimum value that corresponds to the base address passed into

base and the PPB passed into ppbNumber.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

Returns the index of the oversampled partial minimum value.

void ADC_enablePPBAbsoluteValue(uint32_t base, ADC_PPBNumber ppbNumber)

Enables absolute value capability in the PPB.

This function enables the absolute value functionality in the post- processing block specified by the

ppbNumber parameter. When enabled, absolute value calculation would be done on the ADC Result associated with the selected SOC. In other words, the PPB result will calculated as shown below: (ADCPPBxRESULT = abs(ADCRESULTx - ADCPPBxOFFREF))
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

None

void ADC_disablePPBAbsoluteValue(uint32_t base, ADC_PPBNumber ppbNumber)

Disables absolute value capability in the PPB.

This function disables the absolute value functionality in the post- processing block specified by the

ppbNumber parameter. When disabled, absolute value calculation would be done on the ADC Result associated with the selected SOC. In other words, the PPB result will calculated as shown below: (ADCPPBxRESULT = ADCRESULTx - ADCPPBxOFFREF)
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

None

void ADC_setPPBShiftValue(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t shiftVal)

Configures PPB shift value.

This function configured the shift value required to right shift the PPB PSUM before loading into the final PPB SUM.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • shiftVal: is the number of bits to right shift PSUM before loading to final PPB SUM.

Return

None

void ADC_selectPPBSyncInput(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t syncInput)

Configures PPB sync input.

This function configures desired sync event to transfer partial registers to final registers and reset the partial registers. For valid values of

syncInput refer to enum ADC_SyncInput.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • syncInput: is the desired sync event to transfer partial registers to final registers and reset the partial registers.

Return

None

void ADC_forcePPBSync(uint32_t base, ADC_PPBNumber ppbNumber)

Forces PPB software sync.

This function forces the software sync for the desired PPB.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

None

void ADC_selectPPBOSINTSource(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t osIntSrc)

Configures PPB interrupt source.

This function sets which oversampling event is the source of a PPB intterupt.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • osIntSrc: selects PPB interrupt source.

For valid values of osIntSrc refer to enum ADC_PPBIntSrcSelect.

Return

None

void ADC_selectPPBCompareSource(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t compSrc)

Configures PPB compare source.

This function configures the desired source to be used for zero crossing detect logic and threshold compare. For valid values of

compSrc refer to enum ADC_PPBCompSource.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • compSrc: is the desired source to be used for zero crossing detect logic and threshold compare.

Return

None

int32_t ADC_readPPBSum(uint32_t resultBase, ADC_PPBNumber ppbNumber)

Reads the oversampled final sum from the PPB.

This function returns the processed sum of results that corresponds to the base address passed into

resultBase and the PPB passed into ppbNumber.
Parameters
  • resultBase: is the base address of the ADC results.

  • ppbNumber: is the number of the post-processing block.

Note

Take care that you are using a base address for the result registers (ADCxRESULT_BASE) and not a base address for the control registers.

Return

Returns the oversampled final sum value.

uint32_t ADC_readPPBCount(uint32_t resultBase, ADC_PPBNumber ppbNumber)

Reads the oversampled final count from the PPB.

This function returns the oversampled final count that corresponds to the base address passed into

resultBase and the PPB passed into ppbNumber.
Parameters
  • resultBase: is the base address of the ADC results.

  • ppbNumber: is the number of the post-processing block.

Note

Take care that you are using a base address for the result registers (ADCxRESULT_BASE) and not a base address for the control registers.

Return

Returns the oversampled final count value.

int32_t ADC_readPPBMax(uint32_t resultBase, ADC_PPBNumber ppbNumber)

Reads the processed conversion result’s maximum value from the PPB.

This function returns the oversampled final maximum that corresponds to the base address passed into

resultBase and the PPB passed into ppbNumber.
Parameters
  • resultBase: is the base address of the ADC results.

  • ppbNumber: is the number of the post-processing block.

Note

Take care that you are using a base address for the result registers (ADCxRESULT_BASE) and not a base address for the control registers.

Return

Returns the oversampled final maximum value.

int32_t ADC_readPPBMin(uint32_t resultBase, ADC_PPBNumber ppbNumber)

Reads the processed conversion result’s minimum value from the PPB.

This function returns the processed conversion result that corresponds to the base address passed into

resultBase and the PPB passed into ppbNumber.
Parameters
  • resultBase: is the base address of the ADC results.

  • ppbNumber: is the number of the post-processing block.

Note

Take care that you are using a base address for the result registers (ADCxRESULT_BASE) and not a base address for the control registers.

Return

Returns the signed 32-bit conversion result.

uint16_t ADC_readPPBMaxIndex(uint32_t resultBase, ADC_PPBNumber ppbNumber)

Reads the index of the result with maximum value from the PPB.

This function returns the index of the processed conversion’s maximum value that corresponds to the base address passed into

resultBase and the PPB passed into ppbNumber.
Parameters
  • resultBase: is the base address of the ADC results.

  • ppbNumber: is the number of the post-processing block.

Note

Take care that you are using a base address for the result registers (ADCxRESULT_BASE) and not a base address for the control registers.

Return

Returns the index of the result with maximum value.

uint16_t ADC_readPPBMinIndex(uint32_t resultBase, ADC_PPBNumber ppbNumber)

Reads the index of the result with minimum value from the PPB.

This function returns the index of the processed conversion’s minimum value that corresponds to the base address passed into

resultBase and the PPB passed into ppbNumber.
Parameters
  • resultBase: is the base address of the ADC results.

  • ppbNumber: is the number of the post-processing block.

Note

Take care that you are using a base address for the result registers (ADCxRESULT_BASE) and not a base address for the control registers.

Return

Returns the index of the result with final minimum value.

int32_t ADC_readPPBResult(uint32_t resultBase, ADC_PPBNumber ppbNumber)

Reads the processed conversion result from the PPB.

This function returns the processed conversion result that corresponds to the base address passed into

resultBase and the PPB passed into ppbNumber.
Parameters
  • resultBase: is the base address of the ADC results.

  • ppbNumber: is the number of the post-processing block.

Note

Take care that you are using a base address for the result registers (ADCxRESULT_BASE) and not a base address for the control registers.

Return

Returns the signed 32-bit conversion result.

uint16_t ADC_getPPBDelayTimeStamp(uint32_t base, ADC_PPBNumber ppbNumber)

Reads sample delay time stamp from a PPB.

This function returns the sample delay time stamp. This delay is the number of system clock cycles between the SOC being triggered and when it began converting.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

Returns the delay time stamp.

void ADC_setPPBCalibrationOffset(uint32_t base, ADC_PPBNumber ppbNumber, int16_t offset)

Sets the post processing block offset correction.

This function sets the PPB offset correction value. This value can be used to digitally remove any system-level offset inherent in the ADCIN circuit before it is stored in the appropriate result register. The

offset parameter is subtracted from the ADC output and is a signed value from -512 to 511 inclusive. For example, when offset = 1, ADCRESULT = ADC output - 1. When offset = -512, ADCRESULT = ADC output - (-512) or ADC output + 512.
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • offset: is the 10-bit signed value subtracted from ADC the output.

Passing a zero in to the offset parameter will effectively disable the calculation, allowing the raw ADC result to be passed unchanged into the result register.

Note

If multiple PPBs are applied to the same SOC, the offset that will be applied will be that of the PPB with the highest number.

Return

None

void ADC_setPPBReferenceOffset(uint32_t base, ADC_PPBNumber ppbNumber, uint16_t offset)

Sets the post processing block reference offset.

This function sets the PPB reference offset value. This can be used to either calculate the feedback error or convert a unipolar signal to bipolar by subtracting a reference value. The result will be stored in the appropriate PPB result register which can be read using

ADC_readPPBResult().
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • offset: is the 16-bit unsigned value subtracted from ADC the output.

Passing a zero in to the offset parameter will effectively disable the calculation and will pass the ADC result to the PPB result register unchanged.

Note

If in 12-bit mode, you may only pass a 12-bit value into the offset parameter.

Return

None

void ADC_enablePPBTwosComplement(uint32_t base, ADC_PPBNumber ppbNumber)

Enables two’s complement capability in the PPB.

This function enables two’s complement in the post-processing block specified by the

ppbNumber parameter. When enabled, a two’s complement will be performed on the output of the offset subtraction before it is stored in the appropriate PPB result register. In other words, the PPB result will be the reference offset value minus the the ADC result value (ADCPPBxRESULT = ADCSOCxOFFREF - ADCRESULTx).
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

None

void ADC_disablePPBTwosComplement(uint32_t base, ADC_PPBNumber ppbNumber)

Disables two’s complement capability in the PPB.

This function disables two’s complement in the post-processing block specified by the

ppbNumber parameter. When disabled, a two’s complement will NOT be performed on the output of the offset subtraction before it is stored in the appropriate PPB result register. In other words, the PPB result will be the ADC result value minus the reference offset value (ADCPPBxRESULT = ADCRESULTx - ADCSOCxOFFREF).
Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

None

void ADC_enablePPBExtendedLowLimit(uint32_t base, ADC_PPBNumber ppbNumber)

Enables the extended low limit in the PPB.

This function enables the low limit for PPB by allowing the PPB low limit to be set by ADCPPBxTRIPLO2 register.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

None

void ADC_disablePPBExtendedLowLimit(uint32_t base, ADC_PPBNumber ppbNumber)

Disables extended low limit capability in the PPB.

This function disables the low limit for PPB by allowing the PPB low limit to be set by ADCPPBxTRIPLO register.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

Return

None

void ADC_enableInterrupt(uint32_t base, ADC_IntNumber adcIntNum)

Enables an ADC interrupt source.

This function enables the indicated ADC interrupt source. Only the sources that are enabled can be reflected to the processor interrupt. Disabled sources have no effect on the processor.

Parameters
  • base: is the base address of the ADC module.

  • adcIntNum: is interrupt number within the ADC wrapper.

adcIntNum can take the value ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to express which of the four interrupts of the ADC module should be enabled.

Return

None.

void ADC_disableInterrupt(uint32_t base, ADC_IntNumber adcIntNum)

Disables an ADC interrupt source.

This function disables the indicated ADC interrupt source. Only the sources that are enabled can be reflected to the processor interrupt. Disabled sources have no effect on the processor.

Parameters
  • base: is the base address of the ADC module.

  • adcIntNum: is interrupt number within the ADC wrapper.

adcIntNum can take the value ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to express which of the four interrupts of the ADC module should be disabled.

Return

None.

void ADC_setInterruptSource(uint32_t base, ADC_IntNumber adcIntNum, uint16_t intTrigger)

Sets the source EOC for an analog-to-digital converter interrupt.

This function sets which conversion is the source of an ADC interrupt.

Parameters
  • base: is the base address of the ADC module.

  • adcIntNum: is interrupt number within the ADC wrapper.

  • socNumber: is the number of the start-of-conversion.

The intTrigger number is a value ADC_INT_TRIGGER_X where X specifies the interrupt trigger to be configured for the ADC module specified by base. Refer ADC_IntTrigger enum for valid values for this input.

adcIntNum can take the value ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to express which of the four interrupts of the ADC module is being configured.

Return

None.

void ADC_enableContinuousMode(uint32_t base, ADC_IntNumber adcIntNum)

Enables continuous mode for an ADC interrupt.

This function enables continuous mode for the ADC interrupt passed into

adcIntNum. This means that pulses will be generated for the specified ADC interrupt whenever an EOC pulse is generated irrespective of whether or not the flag bit is set.
Parameters
  • base: is the base address of the ADC.

  • adcIntNum: is interrupt number within the ADC wrapper.

adcIntNum can take the value ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to express which of the four interrupts of the ADC module is being configured.

Return

None.

void ADC_disableContinuousMode(uint32_t base, ADC_IntNumber adcIntNum)

Disables continuous mode for an ADC interrupt.

This function disables continuous mode for the ADC interrupt passed into

adcIntNum. This means that pulses will not be generated for the specified ADC interrupt until the corresponding interrupt flag for the previous interrupt occurrence has been cleared using ADC_clearInterruptStatus().
Parameters
  • base: is the base address of the ADC.

  • adcIntNum: is interrupt number within the ADC wrapper.

adcIntNum can take the value ADC_INT_NUMBER1, ADC_INT_NUMBER2, ADC_INT_NUMBER3 or ADC_INT_NUMBER4 to express which of the four interrupts of the ADC module is being configured.

Return

None.

int16_t ADC_getTemperatureC(uint16_t tempResult, ADC_ReferenceMode refMode, float32_t vref)

Converts temperature from sensor reading to degrees C

This function converts temperature from temp sensor reading to degrees C. Temp sensor values in production test are derived with 2.5V reference. The

vref argument in the function is used to scale the temp sensor reading accordingly if temp sensor value is read at a different VREF setting.
Parameters
  • tempResult: is the raw ADC A conversion result from the temp sensor.

  • vref: is the reference voltage being used (for example 3.3 for 3.3V).

  • refMode: is the reference mode being used (ADC_REFERENCE_INTERNAL or ADC_REFERENCE_EXTERNAL).

Return

Returns the temperature sensor reading converted to degrees C.

int16_t ADC_getTemperatureK(uint16_t tempResult, ADC_ReferenceMode refMode, float32_t vref)

Converts temperature from sensor reading to degrees K

This function converts temperature from temp sensor reading to degrees K. Temp sensor values in production test are derived with 2.5V reference. The

vref argument in the function is used to scale the temp sensor reading accordingly if temp sensor value is read at a different VREF setting.
Parameters
  • tempResult: is the raw ADC A conversion result from the temp sensor.

  • vref: is the reference voltage being used (for example 3.3 for 3.3V).

  • refMode: is the reference mode being used (ADC_REFERENCE_INTERNAL or ADC_REFERENCE_EXTERNAL).

Return

Returns the temperature sensor reading converted to degrees K.

void ADC_configSOCSafetyCheckerInput(uint32_t base, ADC_SOCNumber socNumber, ADC_SafetyCheckerInput scInput)

Configures the safety checker result for a selected SOC.

This function configures the safety checker input for the desired SOC.

Parameters
  • base: is the base address of the ADC module.

  • socNumber: is the number of the start-of-conversion.

  • scInput: is the desired input configuration.

The socNumber number is a value ADC_SOC_NUMBERX where X is a number from 0 to 15 specifying which SOC is to be configured on the ADC module specified by base.

The scInput is the desired safety checker input configuration. Valid values can be refered from the enum ADC_SafetyCheckerInput.

Return

None.

void ADC_enableSafetyChecker(uint32_t scBase)

Enables the ADC result safety checker module.

This function enables the ADC result safety checker module.

Parameters
  • scBase: is the base address of the ADC Safety Checker module.

Return

None.

void ADC_disableSafetyChecker(uint32_t scBase)

Disables the ADC result safety checker module.

This function disables the ADC result safety checker module.

Parameters
  • scBase: is the base address of the ADC Safety Checker module.

Return

None.

void ADC_forceSafetyCheckerSync(uint32_t scBase)

Forces the software sync for the safety checker module

This function forces the software sync for the safety checker module.

Parameters
  • scBase: is the base address of the safety checker module.

Return

None.

uint16_t ADC_getSafetyCheckerStatus(uint32_t scBase)

Returns the status of the safey checker module.

This function configures the external channel for an SOC by configuring the external channel mux for an SOC.

Parameters
  • scBase: is the base address of the ADC safety checker module.

Return

Returns the status of the safety checker module. Valid values are any of the follwing values or any of their OR’d combination:

  • ADC_SAFECHECK_RESULT1_READY

  • ADC_SAFECHECK_RESULT2_READY

  • ADC_SAFECHECK_RESULT1_OOT

void ADC_configureSafetyChecker(uint32_t scBase, ADC_SafetyCheckInst checkInst, ADC_Select adcInst, ADC_ResultSelect adcResultInst)

Configures the safety checker module.

This function configures the selected checker instance of a safety checker instance.

Parameters
  • scBase: is the base address of the ADC safety checker module.

  • scInst: is the safety checker instance to be configured.

  • adcInst: is the desired ADC instance.

  • adcResultInst: is the desired ADC result instance.

The checkInst parameter can take values defined by enum ADC_SafetyCheckInst. The adcInst parameter can take values defined by enum ADC_Select. The adcResultInst parameter can take values defined by enum ADC_ResultSelect.

Return

None.

void ADC_setSafetyCheckerTolerance(uint32_t scBase, uint32_t tolerance)

Configures the tolerance allowed between safety check results.

This function configures the tolerance for the difference between check result instances of the selected safety checker instance.

Parameters
  • scBase: is the base address of the ADC safety checker module.

  • tolerance: is the number of the start-of-conversion.

Return

None.

uint32_t ADC_getSafetyCheckerResult(uint32_t scBase, ADC_SafetyCheckInst checkInst)

Returns the safety check result for the selected instance.

This function returns the safety check result for the selected instance.

Parameters
  • scBase: is the base address of the ADC safety checker module.

  • checkInst: is the number of the start-of-conversion.

The checkInst number is a value ADC_SAFETY_CHECKx where x is a number from 1 to 2 specifying the safety result check instances available in the safety checker instance specified by scBase.

Return

Returns the safety checker result for the desired instance.

void ADC_enableSafetyCheckEvt(uint32_t scIntEvtBase, ADC_Checker checkerNumber, ADC_SafetyCheckEvent checkEvent, ADC_SafetyCheckResult checkResult)

Enables the safety checker event sources for selected instance.

This function enables the indicated safety checker event sources.

Parameters
  • scIntEvtBase: is the base address of ADC Safe Check INTEVT module.

  • checkResult: is the desired ADC Safety Checker result.

  • checkEvent: is the desired event number.

  • checkerNumber: is the number of the checker tile.

The checkResult specifies the result of the OOT or OVF events. It should be one of the following values.

  • ADC_SAFETY_CHECK_RESULT1

  • ADC_SAFETY_CHECK_RESULT2

  • ADC_SAFETY_CHECK_OOT

The checkEvent is a value ADC_SAFETY_CHECK_EVENTx where x is a number from 1 to 4 specifying the safety check events available in the safety checker specified by scIntEvtBase.

The checkerNumber number is a value ADC_SAFETY_CHECKERx where x is a number from 1 to 8 specifying which Checker Tile is to be selected in the ADC module.

Return

None.

void ADC_disableSafetyCheckEvt(uint32_t scIntEvtBase, ADC_Checker checkerNumber, ADC_SafetyCheckEvent checkEvent, ADC_SafetyCheckResult checkResult)

Disables the safety checker event sources for selected instance.

This function disables the indicated safety checker event sources.

Parameters
  • scIntEvtBase: is the base address of ADC Safe Check INTEVT module.

  • checkResult: is the desired ADC Safety Checker result.

  • checkEvent: is the desired event number.

  • checkerNumber: is the number of the checker tile.

The checkResult specifies the result of the OOT or OVF events. It should be one of the following values.

  • ADC_SAFETY_CHECK_RESULT1

  • ADC_SAFETY_CHECK_RESULT2

  • ADC_SAFETY_CHECK_OOT

The checkEvent is a value ADC_SAFETY_CHECK_EVENTx where x is a number from 1 to 4 specifying the safety check events available in the safety checker specified by scIntEvtBase.

The checkerNumber number is a value ADC_CHECKER_NUMBERx where x is a number from 1 to 8 specifying which Checker Tile is to be selected in the ADC module.

Return

None.

void ADC_enableSafetyCheckInt(uint32_t scIntEvtBase, ADC_Checker checkerNumber, ADC_SafetyCheckResult checkResult)

Enables the safety checker interrupt sources for selected instance.

This function enables the indicated safety checker interrupt sources.

Parameters
  • scIntEvtBase: is the base address of ADC Safe Check INTEVT module.

  • checkResult: is the desired ADC Safety Checker interrupt result.

  • checkerNumber: is the number of the checker tile.

The checkResult specifies the result of the OOT or OVF events. It should be one of the following values.

  • ADC_SAFETY_CHECK_RESULT1

  • ADC_SAFETY_CHECK_RESULT2

  • ADC_SAFETY_CHECK_OOT

The checkerNumber number is a value ADC_CHECKER_NUMBERx where x is a number from 1 to 8 specifying which Checker Tile is to be selected in the ADC module.

Return

None.

void ADC_disableSafetyCheckInt(uint32_t scIntEvtBase, ADC_Checker checkerNumber, ADC_SafetyCheckResult checkResult)

Disables the safety checker interrupt sources for selected instance.

This function disables the indicated safety checker interrupt sources.

Parameters
  • scIntEvtBase: is the base address of ADC Safe Check INTEVT module.

  • checkResult: is the desired ADC Safety Checker interrupt result.

  • checkerNumber: is the number of the checker tile.

The checkResult specifies the result of the OOT or OVF events. It should be one of the following values.

  • ADC_SAFETY_CHECK_RESULT1

  • ADC_SAFETY_CHECK_RESULT2

  • ADC_SAFETY_CHECK_OOT

The checkerNumber number is a value ADC_CHECKER_NUMBERx where x is a number from 1 to 8 specifying which Checker Tile is to be selected in the ADC module.

Return

None.

bool ADC_getSafetyCheckStatus(uint32_t scIntEvtBase, ADC_Checker checkerNumber, ADC_SafetyCheckFlag checkerFlag)

Get the ADC safety checker OOT and OVF event status.

This function returns the event status for the OOT or OVF event.

Parameters
  • scIntEvtBase: is the base address of ADC Safe Check INTEVT module.

  • checkerFlag: is the desired ADC Safety Checker event status.

  • checkerNumber: is the number of the checker tile.

The checkerFlag specifies the ADC safety checker event status of OOT or OVF events. It should be one of the following values.

  • ADC_SAFETY_CHECK_OOT_FLG

  • ADC_SAFETY_CHECK_RES1OVF_FLG

  • ADC_SAFETY_CHECK_RES2OVF_FLG

The checkerNumber number is a value ADC_SAFETY_CHECKERx where x is a number from 1 to 8 specifying which Checker Tile is to be selected in the ADC module specified by scIntEvtBase.

Return

Returns the status of the safety checker event module for the selected instance.

void ADC_clearSafetyCheckStatus(uint32_t scIntEvtBase, ADC_Checker checkerNumber, ADC_SafetyCheckFlag checkerFlag)

Clears the ADC safety checker OOT and OVF event status.

This funtion clears the specified ADC Safety Checker event status so that they no longer assert.

Parameters
  • scIntEvtBase: is the base address of ADC Safe Check INTEVT module.

  • checkerFlag: is the desired ADC Safety Checker event status.

  • checkerNumber: is the number of the checker tile.

checkerFlag takes one of the values ADC_SAFETY_CHECK_OOT_FLG, ADC_SAFETY_CHECK_RES1OVF_FLG or ADC_SAFETY_CHECK_RES2OVF_FLG to express which of the three event status of the ADC Safety Checker should be cleared.

The checkerNumber number is a value ADC_SAFETY_CHECKERx where x is a number from 1 to 8 specifying which Checker Tile is to be selected in the ADC module specified by scIntEvtBase.

Return

None.

uint32_t ADC_getSafetyCheckIntStatus(uint32_t scIntEvtBase)

Get the ADC safety checker interrupt status.

This function returns the interrupt status for the OOT or OVF event.

Parameters
  • scIntEvtBase: is the base address of ADC Safe Check INTEVT module.

Return

Returns the status of the safety checker interrupt for the selected instance.

void ADC_clearSafetyCheckIntStatus(uint32_t scIntEvtBase)

Clears the ADC safety checker interrupt status.

This funtion clears the specified ADC Safety Checker interrupt status so that they no longer assert.

Parameters
  • scIntEvtBase: is the base address of ADC Safe Check INTEVT module.

  • checkerNumber: is the number of the checker tile.

Return

None.

void ADC_triggerRepeaterMode(uint32_t base, uint32_t repInstance, ADC_RepMode mode)

Configures the trigger repeater mode select.

This function configures desired ADC trigger repeater mode that corresponds to

mode to select either oversampling or undersampling mode.
Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

  • mode: is the repeater mode.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

Return

None.

bool ADC_triggerRepeaterActiveMode(uint32_t base, uint32_t repInstance)

Get the trigger repeater active mode status.

This function returns the status of the ADC trigger repeater mode for the selected repeater instance.

Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

Return

Returns the status of the trigger repeater active mode.

bool ADC_triggerRepeaterModuleBusy(uint32_t base, uint32_t repInstance)

Get the trigger repeater module busy indication.

This function returns the status of the ADC trigger repeater module for the selected repeater instance.

Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

Return

Returns the staus of the trigger repeater module busy.

void ADC_triggerRepeaterSelect(uint32_t base, uint16_t repInstance, ADC_Trigger trigger)

Configures the trigger source of the trigger repeater.

This function configures ADC trigger repeater by selecting the trigger source passed into

trigger to modify via oversampling or undersampling.
Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

  • trigger: the source to modify via oversampling or undersampling.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

Return

None.

void ADC_triggerRepeaterSyncIn(uint32_t base, uint16_t repInstance, ADC_SyncInput syncInput)

Configures the trigger repeater syncin source.

This function configures desired ADC trigger repeater sync event that corresponds to

syncInput to reset all counters and any pending repeated triggers are discarded.
Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

  • syncInput: is the desired sync event to reset all counters.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

Return

None.

void ADC_forceRepeaterTriggerSync(uint32_t base, uint16_t repInstance)

Forces software sync for the trigger repeater block.

This function forces the software sync for the trigger repeater block.

Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

Return

None.

void ADC_triggerRepeaterCount(uint32_t base, uint16_t repInstance, uint16_t repCount)

Configures the trigger repeater count.

This function indicates the number of repeated triggers passed into

repCount and remaining triggers to be generated/supressed. In oversampling mode, the repCount parameter is the number of desired repeated triggers to be generated. It should be a value between 0 to 127 where (repCount + 1) triggers will be generated. For example, when repCount = 2, 3 triggers will be generated on receiving corresponding REPxCTL.TRIGSEL. In unversampling mode, the repCount parameter is the number of desired triggers to be supressed. It should be a value between 0 to 127 where 1 out of (repCount + 1) triggers received will be passed through. For Example, when repCount = 2, 1 out of 3 triggers will be generated.
Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

  • repCount: is the desired trigger count to be selected.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

Return

None.

void ADC_triggerRepeaterPhase(uint32_t base, uint16_t repInstance, uint16_t repPhase)

Configures the trigger repeater phase.

This function configures the phase delay that corresponds to

repPhase by defining the number of sysclk to delay the selected trigger. The repPhase parameter should be a value between 0 and 65535 inclusive. For example, passing a 2 to the offset parameter will delay the trigger by 2 sysclks and passing 0 will pass through the trigger without delay.
Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

  • repPhase: indicates the repeater trigger phase delay in sysclk cycles.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

Return

None.

void ADC_triggerRepeaterSpread(uint32_t base, uint16_t repInstance, uint16_t repSpread)

Configures the trigger repeater spread.

This function configures the spread time by setting

repSpread to number of sysclk desired between triggers. In oversampling mode, the repSpread parameter is the minimum number of sysclks to wait before creating the next repeated trigger to the ADC. It should be a value between 0 and 65535 inclusive. For example, passing a 2 to the offset parameter will create at least 2 sysclk time between repeated triggers.
Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

  • repSpread: is the desired trigger spread in sysclk cycle.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

Return

None.

void ADC_configureRepeater(uint32_t base, uint16_t repInstance, ADC_RepeaterConfig *config)

Configures the trigger repeater.

This function configures ADC trigger repeater for repeater mode, trigger and sync along with count, phase delay and spread of triggers.

Parameters
  • base: is the base address of the ADC module.

  • repInstance: is the repeater instance.

  • config: is the desired repeater configuration.

The repInstance is the repeater instance to be configured. Valid values for this parameter can be referred from the enum ADC_RepInstance.

The config is the desired trigger repeater configuration which is of type ADC_RepeaterConfig.

Return

None.

void ADC_setupSOCRefloChannel(uint32_t base, ADC_SOCNumber socNumber, ADC_Trigger trigger, uint32_t sampleWindow, ADC_ChannelType channelType)

Cofigure the internal connection to route VREFLO to ADC module.

This function configures the internal connection to route VREFLO to the ADC module as all the modules do not have direct connection to internal VREFLO.

Parameters
  • base: is the base address of the ADC module.

  • socNumber: is the number of the start-of-conversion.

  • trigger: the source that will cause the SOC.

  • sampleWindow: is the acquisition window duration.

  • channelType: specifies the type of the ADC channel.

The socNumber number is a value ADC_SOC_NUMBERX where X is a number from 0 to 15 specifying which SOC is to be configured on the ADC module specified by base.

The trigger parameter takes the same values as the ADC_setupSOC() API and the sampleWindow parameter is the acquisition window duration in SYSCLK cycles. It should be a value between 1 and 512 cycles inclusive.

The channelType parameter must be one of the following: ADC_CHANNEL_ODD or ADC_CHANNEL_EVEN based on the channel selection.

Return

None.

void ADC_setMode(uint32_t base, ADC_Resolution resolution, ADC_SignalMode signalMode)

Configures the analog-to-digital converter resolution and signal mode.

This function configures the ADC module’s conversion resolution and input signal mode and ensures that the corresponding trims are loaded.

Parameters
  • base: is the base address of the ADC module.

  • resolution: is the resolution of the converter (12 or 16 bits).

  • signalMode: is the input signal mode of the converter.

The resolution parameter specifies the resolution of the conversion. It can be 12-bit or 16-bit specified by ADC_RESOLUTION_12BIT or ADC_RESOLUTION_16BIT.

The signalMode parameter specifies the signal mode. In single-ended mode, which is indicated by ADC_MODE_SINGLE_ENDED, the input voltage is sampled on a single pin referenced to VREFLO. In differential mode, which is indicated by ADC_MODE_DIFFERENTIAL, the input voltage to the converter is sampled on a pair of input pins, a positive and a negative.

Return

None.

void ADC_setVREF(uint32_t base, ADC_ReferenceMode refMode, ADC_ReferenceVoltage refVoltage)

Configures the ADC module’s reference mode and offset trim

This function configures the ADC module’s reference mode and loads the corresponding offset trims.

Parameters
  • base: is the base address of the ADC module.

  • refMode: is the reference mode being used (ADC_REFERENCE_INTERNAL or ADC_REFERENCE_EXTERNAL).

  • refVoltage: is the reference voltage being used (ADC_REFERENCE_2_5V or ADC_REFERENCE_3_3V). This is ignored when the reference mode is external.

Note

In this device, the bandgaps are common for all the ADC instances, hence common Vref configuration needs to be done for all the ADCs. This API configures same Vref configuration for all the supported ADCs in the device.

Note

When the refMode parameter is ADC_REFERENCE_EXTERNAL, the value of the refVoltage parameter has no effect on the operation of the ADC.

Return

None.

void ADC_setOffsetTrim(uint32_t base)

Configures the offset trim for the desired ADC instance

This function loads the offset trims for the desired ADC instance.

Parameters
  • base: is the base address of the ADC module.

Return

None.

void ADC_setINLTrim(uint32_t base)

Configures the INL trim for the desired ADC instance

This function loads the INL trims for the desired ADC instance.

Parameters
  • base: is the base address of the ADC module.

Return

None.

void ADC_setPPBTripLimits(uint32_t base, ADC_PPBNumber ppbNumber, int32_t tripHiLimit, int32_t tripLoLimit)

Sets the windowed trip limits for a PPB.

This function sets the windowed trip limits for a PPB. These values set the digital comparator so that when one of the values is exceeded, either a high or low trip event will occur.

Parameters
  • base: is the base address of the ADC module.

  • ppbNumber: is the number of the post-processing block.

  • tripHiLimit: is the value is the digital comparator trip high limit.

  • tripLoLimit: is the value is the digital comparator trip low limit.

The ppbNumber is a value ADC_PPB_NUMBERX where X is a value from 1 to 4 inclusive that identifies a PPB to be configured.

Return

None.

struct ADC_RepeaterConfig
#include <adc.h>

Values that can be passed to ADC_configureRepeater() as the config parameter.

The code for this module is contained in driverlib/adc.c, with driverlib/adc.h containing the API declarations for use by applications.