ASysCtl Module

The ASysCtl or Analog System Control driver provides functions to enable, disable and lock the temperature sensor on the device. It will also provide additional functionality if available for that device.

group asysctl_api

Defines

ASYSCTL_AGPIOFILTER_BYPASS 0U
ASYSCTL_AGPIOFILTER_333OHM 1U
ASYSCTL_AGPIOFILTER_500OHM 2U
ASYSCTL_AGPIOFILTER_1000OHM 3U
ASYSCTL_VREFHIA 0x1U

VREFHIA.

ASYSCTL_VREFHIB 0x2U

VREFHIB.

ASYSCTL_VREFHIC 0x4U

VREFHIC.

ASYSCTL_CMPHNMUX_SELECT_1 0x1U

CMPHNMUX select 1.

ASYSCTL_CMPHNMUX_SELECT_2 0x2U

CMPHNMUX select 2.

ASYSCTL_CMPHNMUX_SELECT_3 0x4U

CMPHNMUX select 3.

ASYSCTL_CMPHNMUX_SELECT_4 0x8U

CMPHNMUX select 4.

ASYSCTL_CMPHNMUX_SELECT_5 0x10U

CMPHNMUX select 5.

ASYSCTL_CMPHNMUX_SELECT_6 0x20U

CMPHNMUX select 6.

ASYSCTL_CMPHNMUX_SELECT_7 0x40U

CMPHNMUX select 7.

ASYSCTL_CMPHNMUX_SELECT_8 0x80U

CMPHNMUX select 8.

ASYSCTL_CMPHNMUX_SELECT_9 0x100U

CMPHNMUX select 9.

ASYSCTL_CMPHNMUX_SELECT_10 0x200U

CMPHNMUX select 10.

ASYSCTL_CMPHNMUX_SELECT_11 0x400U

CMPHNMUX select 11.

ASYSCTL_CMPLNMUX_SELECT_1 0x1U

CMPLNMUX select 1.

ASYSCTL_CMPLNMUX_SELECT_2 0x2U

CMPLNMUX select 2.

ASYSCTL_CMPLNMUX_SELECT_3 0x4U

CMPLNMUX select 3.

ASYSCTL_CMPLNMUX_SELECT_4 0x8U

CMPLNMUX select 4.

ASYSCTL_CMPLNMUX_SELECT_5 0x10U

CMPLNMUX select 5.

ASYSCTL_CMPLNMUX_SELECT_6 0x20U

CMPLNMUX select 6.

ASYSCTL_CMPLNMUX_SELECT_7 0x40U

CMPLNMUX select 7.

ASYSCTL_CMPLNMUX_SELECT_8 0x80U

CMPLNMUX select 8.

ASYSCTL_CMPLNMUX_SELECT_9 0x100U

CMPLNMUX select 9.

ASYSCTL_CMPLNMUX_SELECT_10 0x200U

CMPLNMUX select 10.

ASYSCTL_CMPLNMUX_SELECT_11 0x400U

CMPLNMUX select 11.

Enums

enum ASysCtl_CMPHPMuxSelect

ASysCtl_CMPHPMuxSelect used for function ASysCtl_selectCMPHPMux().

Values:

enumerator ASYSCTL_CMPHPMUX_SELECT_1 = 0U

CMPHPMUX select 1.

enumerator ASYSCTL_CMPHPMUX_SELECT_2 = 3U

CMPHPMUX select 2.

enumerator ASYSCTL_CMPHPMUX_SELECT_3 = 6U

CMPHPMUX select 3.

enumerator ASYSCTL_CMPHPMUX_SELECT_4 = 9U

CMPHPMUX select 4.

enumerator ASYSCTL_CMPHPMUX_SELECT_5 = 12U

CMPHPMUX select 5.

enumerator ASYSCTL_CMPHPMUX_SELECT_6 = 15U

CMPHPMUX select 6.

enumerator ASYSCTL_CMPHPMUX_SELECT_7 = 18U

CMPHPMUX select 7.

enumerator ASYSCTL_CMPHPMUX_SELECT_8 = 21U

CMPHPMUX select 8.

enumerator ASYSCTL_CMPHPMUX_SELECT_9 = 24U

CMPHPMUX select 9.

enumerator ASYSCTL_CMPHPMUX_SELECT_10 = 27U

CMPHPMUX select 10.

enumerator ASYSCTL_CMPHPMUX_SELECT_11 = 0U + 32U

CMPHPMUX select 11.

enum ASysCtl_CMPLPMuxSelect

ASysCtl_CMPLPMuxSelect used for function ASysCtl_selectCMPLPMux().

Values:

enumerator ASYSCTL_CMPLPMUX_SELECT_1 = 0U

CMPLPMUX select 1.

enumerator ASYSCTL_CMPLPMUX_SELECT_2 = 3U

CMPLPMUX select 2.

enumerator ASYSCTL_CMPLPMUX_SELECT_3 = 6U

CMPLPMUX select 3.

enumerator ASYSCTL_CMPLPMUX_SELECT_4 = 9U

CMPLPMUX select 4.

enumerator ASYSCTL_CMPLPMUX_SELECT_5 = 12U

CMPLPMUX select 5.

enumerator ASYSCTL_CMPLPMUX_SELECT_6 = 15U

CMPLPMUX select 6.

enumerator ASYSCTL_CMPLPMUX_SELECT_7 = 18U

CMPLPMUX select 7.

enumerator ASYSCTL_CMPLPMUX_SELECT_8 = 21U

CMPLPMUX select 8.

enumerator ASYSCTL_CMPLPMUX_SELECT_9 = 24U

CMPLPMUX select 9.

enumerator ASYSCTL_CMPLPMUX_SELECT_10 = 27U

CMPLPMUX select 10.

enumerator ASYSCTL_CMPLPMUX_SELECT_11 = 0U + 32U

CMPLPMUX select 11.

enum ASysCtl_TestSelect

ASysCtl_TestSelect used for function ASysCtl_selectInternalTestNode().

Values:

enumerator ASYSCTL_TEST_NODE_NO_CONN = 0U

No Internal Connection.

enumerator ASYSCTL_TEST_NODE_VDDCORE = 1U

Core VDD (1.2V) voltage.

enumerator ASYSCTL_TEST_NODE_VDDA = 2U

VDDA voltage.

enumerator ASYSCTL_TEST_NODE_VSSA = 3U

VSSA - Analog ground pin.

enumerator ASYSCTL_TEST_NODE_VREFLOA = 4U

VREFLOA pin voltage.

enumerator ASYSCTL_TEST_NODE_VREFLOB = 5U

VREFLOB pin voltage.

enumerator ASYSCTL_TEST_NODE_VREFLOC = 6U

VREFLOC pin voltage.

enumerator ASYSCTL_TEST_NODE_CDAC1H = 7U

CMPSS1 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC1L = 8U

CMPSS1 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC2H = 9U

CMPSS2 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC2L = 10U

CMPSS2 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC3H = 11U

CMPSS3 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC3L = 12U

CMPSS3 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC4H = 13U

CMPSS4 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC4L = 14U

CMPSS4 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC5H = 15U

CMPSS5 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC5L = 16U

CMPSS5 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC6H = 17U

CMPSS6 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC6L = 18U

CMPSS6 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC7H = 19U

CMPSS7 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC7L = 20U

CMPSS7 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC8H = 21U

CMPSS8 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC8L = 22U

CMPSS8 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC9H = 23U

CMPSS9 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC9L = 24U

CMPSS9 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC10H = 25U

CMPSS10 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC10L = 26U

CMPSS10 Low DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC11H = 27U

CMPSS11 High DAC output.

enumerator ASYSCTL_TEST_NODE_CDAC11L = 28U

CMPSS11 Low DAC output.

enumerator ASYSCTL_TEST_NODE_ENZ_CALIB_GAIN_3P3V = 29U

All ADCs are placed in gain calibration mode

Functions

void ASysCtl_enableTemperatureSensor(void)

Enable temperature sensor.

This function enables the temperature sensor output to the ADC.

Return

None.

void ASysCtl_disableTemperatureSensor(void)

Disable temperature sensor.

This function disables the temperature sensor output to the ADC.

Return

None.

void ASysCtl_setAnalogReferenceInternal(uint16_t reference)

Set the analog voltage reference selection to internal.

The parameter

reference can be a combination of the following values:
Parameters
  • reference: is the analog reference.

  • ASYSCTL_VREFHIA

  • ASYSCTL_VREFHIB

  • ASYSCTL_VREFHIC

Return

None.

void ASysCtl_setAnalogReferenceExternal(uint16_t reference)

Set the analog voltage reference selection to external.

The parameter

reference can be a combination of the following values:
Parameters
  • reference: is the analog reference.

  • ASYSCTL_VREFHIA

  • ASYSCTL_VREFHIB

  • ASYSCTL_VREFHIC

Return

None.

void ASysCtl_setAnalogReference2P5(uint16_t reference)

Set the internal analog voltage reference selection to 2.5V.

The parameter

reference can be a combination of the following values:
Parameters
  • reference: is the analog reference.

  • ASYSCTL_VREFHIA

  • ASYSCTL_VREFHIB

  • ASYSCTL_VREFHIC

Return

None.

void ASysCtl_setAnalogReference1P65(uint16_t reference)

Set the internal analog voltage reference selection to 1.65V.

The parameter

reference can be a combination of the following values:
Parameters
  • reference: is the analog reference.

  • ASYSCTL_VREFHIA

  • ASYSCTL_VREFHIB

  • ASYSCTL_VREFHIC

Return

None.

void ASysCtl_selectInternalTestNode(ASysCtl_TestSelect testSelect)

Select internal test node for ADC.

The

testSelect is the desired internal test node. Valid values can be refered from the enum ASysCtl_TestSelect.
Parameters
  • testSelect: is internal node to come out on ADC.

Return

None.

void ASysCtl_selectCMPHNMux(uint16_t select)

Select the value for CMPHNMXSEL.

The parameter

select can be a bitwise OR of the below values:
Parameters
  • select: is a combination of CMPHNMXSEL values.

  • ASYSCTL_CMPHNMUX_SELECT_1

  • ASYSCTL_CMPHNMUX_SELECT_2

  • ASYSCTL_CMPHNMUX_SELECT_3

  • ASYSCTL_CMPHNMUX_SELECT_4

  • ASYSCTL_CMPHNMUX_SELECT_5

  • ASYSCTL_CMPHNMUX_SELECT_6

  • ASYSCTL_CMPHNMUX_SELECT_7

  • ASYSCTL_CMPHNMUX_SELECT_8

  • ASYSCTL_CMPHNMUX_SELECT_9

Return

None.

void ASysCtl_selectCMPHNMuxValue(uint16_t select, uint16_t value)

Select the value for individual CMPxHNMXSEL.

The parameter

select can be one of the below values:
Parameters
  • select: is the CMPxHNMXSEL to be set.

  • value: is 0 or 1.

  • ASYSCTL_CMPHNMUX_SELECT_1

  • ASYSCTL_CMPHNMUX_SELECT_2

  • ASYSCTL_CMPHNMUX_SELECT_3

  • ASYSCTL_CMPHNMUX_SELECT_4

  • ASYSCTL_CMPHNMUX_SELECT_5

  • ASYSCTL_CMPHNMUX_SELECT_6

  • ASYSCTL_CMPHNMUX_SELECT_7

  • ASYSCTL_CMPHNMUX_SELECT_8

  • ASYSCTL_CMPHNMUX_SELECT_9

Return

None.

void ASysCtl_selectCMPLNMux(uint16_t select)

Select the value for individual CMPxLNMXSEL.

The parameter

select can be the bitwise OR of the below values:
Parameters
  • select: is a combination of CMPLNMXSEL values.

  • ASYSCTL_CMPLNMUX_SELECT_1

  • ASYSCTL_CMPLNMUX_SELECT_2

  • ASYSCTL_CMPLNMUX_SELECT_3

  • ASYSCTL_CMPLNMUX_SELECT_4

  • ASYSCTL_CMPLNMUX_SELECT_5

  • ASYSCTL_CMPLNMUX_SELECT_6

  • ASYSCTL_CMPLNMUX_SELECT_7

  • ASYSCTL_CMPLNMUX_SELECT_8

  • ASYSCTL_CMPLNMUX_SELECT_9

Return

None.

void ASysCtl_selectCMPLNMuxValue(uint16_t select, uint16_t value)

Select the value for CMPLNMXSEL.

The parameter

select can be one of the below values:
Parameters
  • select: is the CMPxHNMXSEL to be set.

  • value: is 0 or 1.

  • ASYSCTL_CMPLNMUX_SELECT_1

  • ASYSCTL_CMPLNMUX_SELECT_2

  • ASYSCTL_CMPLNMUX_SELECT_3

  • ASYSCTL_CMPLNMUX_SELECT_4

  • ASYSCTL_CMPLNMUX_SELECT_5

  • ASYSCTL_CMPLNMUX_SELECT_6

  • ASYSCTL_CMPLNMUX_SELECT_7

  • ASYSCTL_CMPLNMUX_SELECT_8

  • ASYSCTL_CMPLNMUX_SELECT_9

Return

None.

void ASysCtl_selectCMPHPMux(ASysCtl_CMPHPMuxSelect select, uint32_t value)

Select the value for CMPHPMXSEL.

This function is used to write a value to one mux select at a time. The parameter

select can be one of the following values:
Parameters
  • select: is of type ASysCtl_CMPHPMuxSelect.

  • value: is 0, 1, 2, 3, or 4.

  • ASYSCTL_CMPHPMUX_SELECT_1

  • ASYSCTL_CMPHPMUX_SELECT_2

  • ASYSCTL_CMPHPMUX_SELECT_3

  • ASYSCTL_CMPHPMUX_SELECT_4

  • ASYSCTL_CMPHPMUX_SELECT_5

  • ASYSCTL_CMPHPMUX_SELECT_6

  • ASYSCTL_CMPHPMUX_SELECT_7

  • ASYSCTL_CMPHPMUX_SELECT_8

  • ASYSCTL_CMPHPMUX_SELECT_9

  • ASYSCTL_CMPHPMUX_SELECT_10

  • ASYSCTL_CMPHPMUX_SELECT_11

Return

None.

void ASysCtl_selectCMPLPMux(ASysCtl_CMPLPMuxSelect select, uint32_t value)

Select the value for CMPLPMXSEL.

This function is used to write a value to one mux select at a time. The parameter

select can be one of the following values:
Parameters
  • select: is of type ASysCtl_CMPLPMuxSelect.

  • value: is 0, 1, 2, 3, or 4.

  • ASYSCTL_CMPLPMUX_SELECT_1

  • ASYSCTL_CMPLPMUX_SELECT_2

  • ASYSCTL_CMPLPMUX_SELECT_3

  • ASYSCTL_CMPLPMUX_SELECT_4

  • ASYSCTL_CMPLPMUX_SELECT_5

  • ASYSCTL_CMPLPMUX_SELECT_6

  • ASYSCTL_CMPLPMUX_SELECT_7

  • ASYSCTL_CMPLPMUX_SELECT_8

  • ASYSCTL_CMPLPMUX_SELECT_9

Return

None.

void ASysCtl_lockTemperatureSensor(void)

Locks the temperature sensor control register.

Return

None.

void ASysCtl_lockANAREF(void)

Locks the analog reference control register.

Return

None.

void ASysCtl_lockVMON(void)

Locks the voltage monitor control register.

Return

None.

void ASysCtl_lockCMPHPMux(void)

Locks the CMPHPMXSEL control register.

Return

None.

void ASysCtl_lockCMPLPMux(void)

Locks the CMPLPMXSEL control register.

Return

None.

void ASysCtl_lockCMPHNMux(void)

Locks the CMPHNMXSEL control register.

Return

None.

void ASysCtl_lockCMPLNMux(void)

Locks the CMPLNMXSEL control register.

Return

None.

void ASysCtl_lockVREG(void)

Locks the VREG control register.

Return

None.

void ASysCtl_lockCMPSSCTL(void)

Locks the CMPSSCTL register.

Return

None.

void ASysCtl_enableADCDACLoopback(uint32_t config)

Enable loopback from DAC to ADCs.

Return

None

Parameters
  • config: can be bitwise OR of the following values:

    • ASYSCTL_ADCDACLOOPBACK_ENLB2ADCA

    • ASYSCTL_ADCDACLOOPBACK_ENLB2ADCB

    • ASYSCTL_ADCDACLOOPBACK_ENLB2ADCC

void ASysCtl_disableADCDACLoopback(uint32_t config)

Disable loopback from DAC to ADCs.

Return

None

Parameters
  • config: can be bitwise OR of the following values:

    • ASYSCTL_ADCDACLOOPBACK_ENLB2ADCA

    • ASYSCTL_ADCDACLOOPBACK_ENLB2ADCB

    • ASYSCTL_ADCDACLOOPBACK_ENLB2ADCC

void ASysCtl_setAGPIOFilterRight(uint32_t config)

Configure AGPIO Filter control for right side pins.

Return

None

Parameters
  • config: can be bitwise OR of the following values:

    • ASYSCTL_AGPIOFILTER_BYPASS - Filter bypass configuration(min ACQPS = 90ns)

    • ASYSCTL_AGPIOFILTER_333OHM - 333Ohm filter setting (min ACQPS = 125ns)

    • ASYSCTL_AGPIOFILTER_500OHM - 500 Ohm filter setting (min ACQPS = 160ns)

    • ASYSCTL_AGPIOFILTER_1000OHM - 1KOhm filter setting (min ACQPS = 230ns)

void ASysCtl_setAGPIOFilterBottom(uint32_t config)

Configure AGPIO Filter control for bottom side pins.

Return

None

Parameters
  • config: can be bitwise OR of the following values:

    • ASYSCTL_AGPIOFILTER_BYPASS - Filter bypass configuration(min ACQPS = 90ns)

    • ASYSCTL_AGPIOFILTER_333OHM - 333Ohm filter setting (min ACQPS = 125ns)

    • ASYSCTL_AGPIOFILTER_500OHM - 500 Ohm filter setting (min ACQPS = 160ns)

    • ASYSCTL_AGPIOFILTER_1000OHM - 1KOhm filter setting (min ACQPS = 230ns)

void ASysCtl_enableGPIOInputBuffer(uint32_t pin)

Enable GPIO Input buffer (INENA control).

Return

None

Parameters
  • pin: can be 0, 23, 25, 31, 46 or 103

void ASysCtl_disableGPIOInputBuffer(uint32_t pin)

Disable GPIO Input buffer (INENA control).

Return

None

Parameters
  • pin: can be 0, 23, 25, 31, 46 or 103

void AsysCtl_configADCGlobalSOC(uint32_t adcSelect)

Configure the ADCs for Global SW Trigger

Return

None

Parameters
  • adcSelect: can be bitwsie OR of the following :

void AsysCtl_forceADCGlobalSOC(uint32_t socSelect)

Generate Global SOC force for specified SOCs

Return

None

Parameters
  • socSelect: can be bitwsie OR of the following :

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