Macros | Functions
REF_A

Reference module used to create/configure analog voltage reference. More...

Macros

#define REF_A_VREF1_2V   REF_A_CTL0_VSEL_0
 
#define REF_A_VREF1_45V   REF_A_CTL0_VSEL_1
 
#define REF_A_VREF2_5V   REF_A_CTL0_VSEL_3
 
#define REF_A_STATICMODE   0x0
 
#define REF_A_SAMPLEMODE   REF_A_CTL0_BGMODE
 
#define REF_A_setReferenceVoltageMultipleInstance(a, b)   REF_A_setReferenceVoltage(b)
 
#define REF_A_disableTempSensorMultipleInstance(a)   REF_A_disableTempSensor()
 
#define REF_A_enableTempSensorMultipleInstance(a)   REF_A_enableTempSensor()
 
#define REF_A_enableReferenceVoltageOutputMultipleInstance(a)   REF_A_enableReferenceVoltageOutput()
 
#define REF_A_disableReferenceVoltageOutputMultipleInstance(a)   REF_A_disableReferenceVoltageOutput()
 
#define REF_A_enableReferenceVoltageMultipleInstance(a)   REF_A_enableReferenceVoltage()
 
#define REF_A_disableReferenceVoltageMultipleInstance(a)   REF_A_disableReferenceVoltage()
 
#define REF_A_getBandgapModeMultipleInstance(a)   REF_A_getBandgapMode()
 
#define REF_A_isBandgapActiveMultipleInstance(a)   REF_A_isBandgapActive()
 
#define REF_A_isRefGenBusyMultipleInstance(a)   REF_A_isRefGenBusy()
 
#define REF_A_isRefGenActiveMultipleInstance(a)   REF_A_isRefGenActive()
 
#define REF_A_getBufferedBandgapVoltageStatusMultipleInstance(a)   REF_A_getBufferedBandgapVoltageStatus()
 
#define REF_A_getVariableReferenceVoltageStatusMultipleInstance(a)   REF_A_getVariableReferenceVoltageStatus()
 
#define REF_A_setReferenceVoltageOneTimeTriggerMultipleInstance(a)   REF_A_setReferenceVoltageOneTimeTrigger()
 
#define REF_A_setBufferedBandgapVoltageOneTimeTriggerMultipleInstance(a)   REF_A_setBufferedBandgapVoltageOneTimeTrigger()
 

Functions

void REF_A_setReferenceVoltage (uint_fast8_t referenceVoltageSelect)
 
void REF_A_disableTempSensor (void)
 
void REF_A_enableTempSensor (void)
 
void REF_A_enableReferenceVoltageOutput (void)
 
void REF_A_disableReferenceVoltageOutput (void)
 
void REF_A_enableReferenceVoltage (void)
 
void REF_A_disableReferenceVoltage (void)
 
uint_fast8_t REF_A_getBandgapMode (void)
 
bool REF_A_isBandgapActive (void)
 
bool REF_A_isRefGenBusy (void)
 
bool REF_A_isRefGenActive (void)
 
bool REF_A_getBufferedBandgapVoltageStatus (void)
 
bool REF_A_getVariableReferenceVoltageStatus (void)
 
void REF_A_setReferenceVoltageOneTimeTrigger (void)
 
void REF_A_setBufferedBandgapVoltageOneTimeTrigger (void)
 

Detailed Description

Reference module used to create/configure analog voltage reference.


DriverLib REF_A Module Operation


The Internal Reference (REF_A) API provides a set of functions for using the SDK REF_A modules. Functions are provided to setup and enable use of the Reference voltage, enable or disable the internal temperature sensor, and view the status of the inner workings of the REF module. The reference module (REF_A) is responsible for generation of all critical reference voltages that can be used by various analog peripherals in a given device. The heart of the reference system is the bandgap from which all other references are derived by unity or non-inverting gain stages. The REFGEN sub-system consists of the bandgap, the bandgap bias, and the non-inverting buffer stage which generates the three primary voltage reference available in the system, namely 1.2 V, 1.45, 2.0 V, and 2.5 V. In addition, when enabled, a buffered bandgap voltage is available. \htmlonly

Programming Example


The DriverLib package contains a variety of different code examples that demonstrate the usage of the REF_A module. These code examples are accessible under the examples/ folder of the SDK release as well as through TI Resource Explorer if using Code Composer Studio. These code examples provide a comprehensive list of use cases as well as practical applications involving each module.

Below is a very brief code example showing how to enable the REF_A module for a 2.5v reference:

Macro Definition Documentation

#define REF_A_VREF1_2V   REF_A_CTL0_VSEL_0
#define REF_A_VREF1_45V   REF_A_CTL0_VSEL_1
#define REF_A_VREF2_5V   REF_A_CTL0_VSEL_3
#define REF_A_STATICMODE   0x0
#define REF_A_SAMPLEMODE   REF_A_CTL0_BGMODE
#define REF_A_setReferenceVoltageMultipleInstance (   a,
 
)    REF_A_setReferenceVoltage(b)
#define REF_A_disableTempSensorMultipleInstance (   a)    REF_A_disableTempSensor()
#define REF_A_enableTempSensorMultipleInstance (   a)    REF_A_enableTempSensor()
#define REF_A_enableReferenceVoltageOutputMultipleInstance (   a)    REF_A_enableReferenceVoltageOutput()
#define REF_A_disableReferenceVoltageOutputMultipleInstance (   a)    REF_A_disableReferenceVoltageOutput()
#define REF_A_enableReferenceVoltageMultipleInstance (   a)    REF_A_enableReferenceVoltage()
#define REF_A_disableReferenceVoltageMultipleInstance (   a)    REF_A_disableReferenceVoltage()
#define REF_A_getBandgapModeMultipleInstance (   a)    REF_A_getBandgapMode()
#define REF_A_isBandgapActiveMultipleInstance (   a)    REF_A_isBandgapActive()
#define REF_A_isRefGenBusyMultipleInstance (   a)    REF_A_isRefGenBusy()
#define REF_A_isRefGenActiveMultipleInstance (   a)    REF_A_isRefGenActive()
#define REF_A_getBufferedBandgapVoltageStatusMultipleInstance (   a)    REF_A_getBufferedBandgapVoltageStatus()
#define REF_A_getVariableReferenceVoltageStatusMultipleInstance (   a)    REF_A_getVariableReferenceVoltageStatus()
#define REF_A_setReferenceVoltageOneTimeTriggerMultipleInstance (   a)    REF_A_setReferenceVoltageOneTimeTrigger()
#define REF_A_setBufferedBandgapVoltageOneTimeTriggerMultipleInstance (   a)    REF_A_setBufferedBandgapVoltageOneTimeTrigger()

Function Documentation

void REF_A_setReferenceVoltage ( uint_fast8_t  referenceVoltageSelect)

Sets the reference voltage for the voltage generator.

Parameters
referenceVoltageSelectis the desired voltage to generate for a reference voltage. Valid values are:
  • REF_A_VREF1_2V [Default]
  • REF_A_VREF1_45V
  • REF_A_VREF2_5V Modified bits are REFVSEL of REFCTL0 register.

This function sets the reference voltage generated by the voltage generator to be used by other peripherals. This reference voltage will only be valid while the REF module is in control. Please note, if the REF_A_isRefGenBusy() returns REF_BUSY, this function will have no effect.

Returns
none

References ASSERT, and REF_A_VREF2_5V.

void REF_A_disableTempSensor ( void  )

Disables the internal temperature sensor to save power consumption.

This function is used to turn off the internal temperature sensor to save on power consumption. The temperature sensor is enabled by default. Please note, that giving ADC12 module control over the REF module, the state of the temperature sensor is dependent on the controls of the ADC12 module. Please note, if the REF_A_isRefGenBusy() returns REF_A_BUSY, this function will have no effect.

Modified bits are REFTCOFF of REFCTL0 register.

Returns
none
void REF_A_enableTempSensor ( void  )

Enables the internal temperature sensor.

This function is used to turn on the internal temperature sensor to use by other peripherals. The temperature sensor is enabled by default. Please note, if the REF_A_isRefGenBusy() returns REF_A_BUSY, this function will have no effect.

Modified bits are REFTCOFF of REFCTL0 register.

Returns
none
void REF_A_enableReferenceVoltageOutput ( void  )

Outputs the reference voltage to an output pin.

This function is used to output the reference voltage being generated to an output pin. Please note, the output pin is device specific. Please note, that giving ADC12 module control over the REF module, the state of the reference voltage as an output to a pin is dependent on the controls of the ADC12 module. Please note, if the REF_A_isRefGenBusy() returns REF_A_BUSY, this function will have no effect.

Modified bits are REFOUT of REFCTL0 register.

Returns
none
void REF_A_disableReferenceVoltageOutput ( void  )

Disables the reference voltage as an output to a pin.

This function is used to disables the reference voltage being generated to be given to an output pin. Please note, if the REF_A_isRefGenBusy() returns REF_A_BUSY, this function will have no effect.

Modified bits are REFOUT of REFCTL0 register.

Returns
none
void REF_A_enableReferenceVoltage ( void  )

Enables the reference voltage to be used by peripherals.

This function is used to enable the generated reference voltage to be used other peripherals or by an output pin, if enabled. Please note, that giving ADC12 module control over the REF module, the state of the reference voltage is dependent on the controls of the ADC12 module. Please note, if the REF_A_isRefGenBusy() returns REF_A_BUSY, this function will have no effect.

Modified bits are REFON of REFCTL0 register.

Returns
none
void REF_A_disableReferenceVoltage ( void  )

Disables the reference voltage.

This function is used to disable the generated reference voltage. Please note, if the REF_A_isRefGenBusy() returns REF_A_BUSY, this function will have no effect.

Modified bits are REFON of REFCTL0 register.

Returns
none
uint_fast8_t REF_A_getBandgapMode ( void  )

Returns the bandgap mode of the REF module.

This function is used to return the bandgap mode of the REF module, requested by the peripherals using the bandgap. If a peripheral requests static mode, then the bandgap mode will be static for all modules, whereas if all of the peripherals using the bandgap request sample mode, then that will be the mode returned. Sample mode allows the bandgap to be active only when necessary to save on power consumption, static mode requires the bandgap to be active until no peripherals are using it anymore.

Returns
The bandgap mode of the REF module:
  • REF_A_STATICMODE if the bandgap is operating in static mode
  • REF_A_SAMPLEMODE if the bandgap is operating in sample mode
bool REF_A_isBandgapActive ( void  )

Returns the active status of the bandgap in the REF module.

This function is used to return the active status of the bandgap in the REF module. If the bandgap is in use by a peripheral, then the status will be seen as active.

Returns
true if the bandgap is being used, false otherwise
bool REF_A_isRefGenBusy ( void  )

Returns the busy status of the reference generator in the REF module.

This function is used to return the busy status of the reference generator in the REF module. If the ref. generator is in use by a peripheral, then the status will be seen as busy.

Returns
true if the reference generator is being used, false otherwise.
bool REF_A_isRefGenActive ( void  )

Returns the active status of the reference generator in the REF module.

This function is used to return the active status of the reference generator in the REF module. If the ref. generator is on and ready to use, then the status will be seen as active.

Returns
true if the reference generator is active, false otherwise.
bool REF_A_getBufferedBandgapVoltageStatus ( void  )

Returns the busy status of the reference generator in the REF module.

This function is used to return the buys status of the buffered bandgap voltage in the REF module. If the ref. generator is on and ready to use, then the status will be seen as active.

Returns
true if the buffered bandgap voltage is ready to be used, false otherwise
bool REF_A_getVariableReferenceVoltageStatus ( void  )

Returns the busy status of the variable reference voltage in the REF module.

This function is used to return the buys status of the variable reference voltage in the REF module. If the ref. generator is on and ready to use, then the status will be seen as active.

Returns
true if the variable bandgap voltage is ready to be used, false otherwise
void REF_A_setReferenceVoltageOneTimeTrigger ( void  )

Enables the one-time trigger of the reference voltage.

Triggers the one-time generation of the variable reference voltage. Once the reference voltage request is set, this bit is cleared by hardware

Modified bits are REFGENOT of REFCTL0 register.

Returns
none
void REF_A_setBufferedBandgapVoltageOneTimeTrigger ( void  )

Enables the one-time trigger of the buffered bandgap voltage.

Triggers the one-time generation of the buffered bandgap voltage. Once the buffered bandgap voltage request is set, this bit is cleared by hardware

Modified bits are RefGOT of REFCTL0 register.

Returns
none

Copyright 2018, Texas Instruments Incorporated