Functions | |
bool | ADC12_A_init (uint16_t baseAddress, uint16_t sampleHoldSignalSourceSelect, uint8_t clockSourceSelect, uint16_t clockSourceDivider) |
Initializes the ADC12_A Module. More... | |
void | ADC12_A_enable (uint16_t baseAddress) |
Enables the ADC12_A block. More... | |
void | ADC12_A_disable (uint16_t baseAddress) |
Disables the ADC12_A block. More... | |
void | ADC12_A_setupSamplingTimer (uint16_t baseAddress, uint16_t clockCycleHoldCountLowMem, uint16_t clockCycleHoldCountHighMem, uint16_t multipleSamplesEnabled) |
Sets up and enables the Sampling Timer Pulse Mode. More... | |
void | ADC12_A_disableSamplingTimer (uint16_t baseAddress) |
Disables Sampling Timer Pulse Mode. More... | |
void | ADC12_A_configureMemory (uint16_t baseAddress, ADC12_A_configureMemoryParam *param) |
Configures the controls of the selected memory buffer. More... | |
void | ADC12_A_enableInterrupt (uint16_t baseAddress, uint32_t interruptMask) |
Enables selected ADC12_A interrupt sources. More... | |
void | ADC12_A_disableInterrupt (uint16_t baseAddress, uint32_t interruptMask) |
Disables selected ADC12_A interrupt sources. More... | |
void | ADC12_A_clearInterrupt (uint16_t baseAddress, uint16_t memoryInterruptFlagMask) |
Clears ADC12_A selected interrupt flags. More... | |
uint8_t | ADC12_A_getInterruptStatus (uint16_t baseAddress, uint16_t memoryInterruptFlagMask) |
Returns the status of the selected memory interrupt flags. More... | |
void | ADC12_A_startConversion (uint16_t baseAddress, uint16_t startingMemoryBufferIndex, uint8_t conversionSequenceModeSelect) |
Enables/Starts an Analog-to-Digital Conversion. More... | |
void | ADC12_A_disableConversions (uint16_t baseAddress, bool preempt) |
Disables the ADC from converting any more signals. More... | |
uint16_t | ADC12_A_getResults (uint16_t baseAddress, uint8_t memoryBufferIndex) |
A Signed Integer of the contents of the specified memory buffer. More... | |
void | ADC12_A_setResolution (uint16_t baseAddress, uint8_t resolutionSelect) |
Use to change the resolution of the converted data. More... | |
void | ADC12_A_setSampleHoldSignalInversion (uint16_t baseAddress, uint16_t invertedSignal) |
Use to invert or un-invert the sample/hold signal. More... | |
void | ADC12_A_setDataReadBackFormat (uint16_t baseAddress, uint8_t readBackFormat) |
Use to set the read-back format of the converted data. More... | |
void | ADC12_A_enableReferenceBurst (uint16_t baseAddress) |
Enables the reference buffer's burst ability. More... | |
void | ADC12_A_disableReferenceBurst (uint16_t baseAddress) |
Disables the reference buffer's burst ability. More... | |
void | ADC12_A_setReferenceBufferSamplingRate (uint16_t baseAddress, uint8_t samplingRateSelect) |
Use to set the reference buffer's sampling rate. More... | |
uint32_t | ADC12_A_getMemoryAddressForDMA (uint16_t baseAddress, uint8_t memoryIndex) |
Returns the address of the specified memory buffer for the DMA module. More... | |
uint16_t | ADC12_A_isBusy (uint16_t baseAddress) |
Returns the busy status of the ADC12_A core. More... | |
void ADC12_A_clearInterrupt | ( | uint16_t | baseAddress, |
uint16_t | memoryInterruptFlagMask | ||
) |
Clears ADC12_A selected interrupt flags.
The selected ADC12_A interrupt flags are cleared, so that it no longer asserts. The memory buffer interrupt flags are only cleared when the memory buffer is accessed. Note that the overflow interrupts do not have an interrupt flag to clear; they must be accessed directly from the interrupt vector.
baseAddress | is the base address of the ADC12_A module. |
memoryInterruptFlagMask | is a bit mask of the interrupt flags to be cleared. Mask value is the logical OR of any of the following:
|
Modified bits of ADC12IFG register.
void ADC12_A_configureMemory | ( | uint16_t | baseAddress, |
ADC12_A_configureMemoryParam * | param | ||
) |
Configures the controls of the selected memory buffer.
Maps an input signal conversion into the selected memory buffer, as well as the positive and negative reference voltages for each conversion being stored into this memory buffer. If the internal reference is used for the positive reference voltage, the internal REF module must be used to control the voltage level. Note that if a conversion has been started with the startConversion() function, then a call to disableConversions() is required before this function may be called.
baseAddress | is the base address of the ADC12_A module. |
param | is the pointer to struct for memory configuration. |
References ADC12_A_configureMemoryParam::endOfSequence, ADC12_A_configureMemoryParam::inputSourceSelect, ADC12_A_configureMemoryParam::memoryBufferControlIndex, ADC12_A_configureMemoryParam::negativeRefVoltageSourceSelect, and ADC12_A_configureMemoryParam::positiveRefVoltageSourceSelect.
void ADC12_A_disable | ( | uint16_t | baseAddress | ) |
Disables the ADC12_A block.
This will disable operation of the ADC12_A block.
baseAddress | is the base address of the ADC12_A module. |
Modified bits are ADC12ON of ADC12CTL0 register.
void ADC12_A_disableConversions | ( | uint16_t | baseAddress, |
bool | preempt | ||
) |
Disables the ADC from converting any more signals.
Disables the ADC from converting any more signals. If there is a conversion in progress, this function can stop it immediately if the preempt parameter is set as TRUE, by changing the conversion mode to single-channel, single- conversion and disabling conversions. If the conversion mode is set as single-channel, single-conversion and this function is called without preemption, then the ADC core conversion status is polled until the conversion is complete before disabling conversions to prevent unpredictable data. If the ADC12_A_startConversion() has been called, then this function has to be called to re-initialize the ADC, reconfigure a memory buffer control, enable/disable the sampling pulse mode, or change the internal reference voltage.
baseAddress | is the base address of the ADC12_A module. |
preempt | specifies if the current conversion should be pre-empted before the end of the conversion. Valid values are:
|
Modified bits of ADC12CTL1 register and bits of ADC12CTL0 register.
References ADC12_A_isBusy().
void ADC12_A_disableInterrupt | ( | uint16_t | baseAddress, |
uint32_t | interruptMask | ||
) |
Disables selected ADC12_A interrupt sources.
Disables the indicated ADC12_A interrupt sources. Only the sources that are enabled can be reflected to the processor interrupt, disabled sources have no effect on the processor.
baseAddress | is the base address of the ADC12_A module. |
interruptMask | Mask value is the logical OR of any of the following:
|
Modified bits of ADC12IE register and bits of ADC12CTL0 register.
void ADC12_A_disableReferenceBurst | ( | uint16_t | baseAddress | ) |
Disables the reference buffer's burst ability.
Disables the reference buffer's burst ability, forcing the reference buffer to remain on continuously.
baseAddress | is the base address of the ADC12_A module. |
void ADC12_A_disableSamplingTimer | ( | uint16_t | baseAddress | ) |
Disables Sampling Timer Pulse Mode.
Disables the Sampling Timer Pulse Mode. Note that if a conversion has been started with the startConversion() function, then a call to disableConversions() is required before this function may be called.
baseAddress | is the base address of the ADC12_A module. |
Modified bits are ADC12SHP of ADC12CTL0 register.
void ADC12_A_enable | ( | uint16_t | baseAddress | ) |
Enables the ADC12_A block.
This will enable operation of the ADC12_A block.
baseAddress | is the base address of the ADC12_A module. |
Modified bits are ADC12ON of ADC12CTL0 register.
void ADC12_A_enableInterrupt | ( | uint16_t | baseAddress, |
uint32_t | interruptMask | ||
) |
Enables selected ADC12_A interrupt sources.
Enables the indicated ADC12_A interrupt sources. Only the sources that are enabled can be reflected to the processor interrupt, disabled sources have no effect on the processor. Does not clear interrupt flags.
baseAddress | is the base address of the ADC12_A module. |
interruptMask | Mask value is the logical OR of any of the following:
|
Modified bits of ADC12IE register and bits of ADC12CTL0 register.
void ADC12_A_enableReferenceBurst | ( | uint16_t | baseAddress | ) |
Enables the reference buffer's burst ability.
Enables the reference buffer's burst ability, allowing the reference buffer to turn off while the ADC is not converting, and automatically turning on when the ADC needs the generated reference voltage for a conversion.
baseAddress | is the base address of the ADC12_A module. |
uint8_t ADC12_A_getInterruptStatus | ( | uint16_t | baseAddress, |
uint16_t | memoryInterruptFlagMask | ||
) |
Returns the status of the selected memory interrupt flags.
Returns the status of the selected memory interrupt flags. Note that the overflow interrupts do not have an interrupt flag to clear; they must be accessed directly from the interrupt vector.
baseAddress | is the base address of the ADC12_A module. |
memoryInterruptFlagMask | is a bit mask of the interrupt flags status to be returned. Mask value is the logical OR of any of the following:
|
uint32_t ADC12_A_getMemoryAddressForDMA | ( | uint16_t | baseAddress, |
uint8_t | memoryIndex | ||
) |
Returns the address of the specified memory buffer for the DMA module.
Returns the address of the specified memory buffer. This can be used in conjunction with the DMA to store the converted data directly to memory.
baseAddress | is the base address of the ADC12_A module. |
memoryIndex | is the memory buffer to return the address of. Valid values are:
|
uint16_t ADC12_A_getResults | ( | uint16_t | baseAddress, |
uint8_t | memoryBufferIndex | ||
) |
A Signed Integer of the contents of the specified memory buffer.
Returns the raw contents of the specified memory buffer. The format of the content depends on the read-back format of the data: if the data is in signed 2's complement format then the contents in the memory buffer will be left-justified with the least-significant bits as 0's, whereas if the data is in unsigned format then the contents in the memory buffer will be right- justified with the most-significant bits as 0's.
baseAddress | is the base address of the ADC12_A module. |
memoryBufferIndex | is the specified Memory Buffer to read. Valid values are:
|
bool ADC12_A_init | ( | uint16_t | baseAddress, |
uint16_t | sampleHoldSignalSourceSelect, | ||
uint8_t | clockSourceSelect, | ||
uint16_t | clockSourceDivider | ||
) |
Initializes the ADC12_A Module.
This function initializes the ADC module to allow for analog-to-digital conversions. Specifically this function sets up the sample-and-hold signal and clock sources for the ADC core to use for conversions. Upon successful completion of the initialization all of the ADC control registers will be reset, excluding the memory controls and reference module bits, the given parameters will be set, and the ADC core will be turned on (Note, that the ADC core only draws power during conversions and remains off when not converting).Note that sample/hold signal sources are device dependent. Note that if re-initializing the ADC after starting a conversion with the startConversion() function, the disableConversion() must be called BEFORE this function can be called.
baseAddress | is the base address of the ADC12_A module. |
sampleHoldSignalSourceSelect | is the signal that will trigger a sample-and-hold for an input signal to be converted. This parameter is device specific and sources should be found in the device's datasheet. Valid values are:
|
clockSourceSelect | selects the clock that will be used by the ADC12_A core, and the sampling timer if a sampling pulse mode is enabled. Valid values are:
|
clockSourceDivider | selects the amount that the clock will be divided. Valid values are:
|
uint16_t ADC12_A_isBusy | ( | uint16_t | baseAddress | ) |
Returns the busy status of the ADC12_A core.
Returns the status of the ADC core if there is a conversion currently taking place.
baseAddress | is the base address of the ADC12_A module. |
Referenced by ADC12_A_disableConversions().
void ADC12_A_setDataReadBackFormat | ( | uint16_t | baseAddress, |
uint8_t | readBackFormat | ||
) |
Use to set the read-back format of the converted data.
Sets the format of the converted data: how it will be stored into the memory buffer, and how it should be read back. The format can be set as right-justified (default), which indicates that the number will be unsigned, or left-justified, which indicates that the number will be signed in 2's complement format. This change affects all memory buffers for subsequent conversions.
baseAddress | is the base address of the ADC12_A module. |
readBackFormat | is the specified format to store the conversions in the memory buffer. Valid values are:
|
void ADC12_A_setReferenceBufferSamplingRate | ( | uint16_t | baseAddress, |
uint8_t | samplingRateSelect | ||
) |
Use to set the reference buffer's sampling rate.
Sets the reference buffer's sampling rate to the selected sampling rate. The default sampling rate is maximum of 200-ksps, and can be reduced to a maximum of 50-ksps to conserve power.
baseAddress | is the base address of the ADC12_A module. |
samplingRateSelect | is the specified maximum sampling rate. Valid values are:
|
void ADC12_A_setResolution | ( | uint16_t | baseAddress, |
uint8_t | resolutionSelect | ||
) |
Use to change the resolution of the converted data.
This function can be used to change the resolution of the converted data from the default of 12-bits.
baseAddress | is the base address of the ADC12_A module. |
resolutionSelect | determines the resolution of the converted data. Valid values are:
|
void ADC12_A_setSampleHoldSignalInversion | ( | uint16_t | baseAddress, |
uint16_t | invertedSignal | ||
) |
Use to invert or un-invert the sample/hold signal.
This function can be used to invert or un-invert the sample/hold signal. Note that if a conversion has been started with the startConversion() function, then a call to disableConversions() is required before this function may be called.
baseAddress | is the base address of the ADC12_A module. |
invertedSignal | set if the sample/hold signal should be inverted Valid values are:
|
void ADC12_A_setupSamplingTimer | ( | uint16_t | baseAddress, |
uint16_t | clockCycleHoldCountLowMem, | ||
uint16_t | clockCycleHoldCountHighMem, | ||
uint16_t | multipleSamplesEnabled | ||
) |
Sets up and enables the Sampling Timer Pulse Mode.
This function sets up the sampling timer pulse mode which allows the sample/hold signal to trigger a sampling timer to sample-and-hold an input signal for a specified number of clock cycles without having to hold the sample/hold signal for the entire period of sampling. Note that if a conversion has been started with the startConversion() function, then a call to disableConversions() is required before this function may be called.
baseAddress | is the base address of the ADC12_A module. |
clockCycleHoldCountLowMem | sets the amount of clock cycles to sample- and-hold for the higher memory buffers 0-7. Valid values are:
|
clockCycleHoldCountHighMem | sets the amount of clock cycles to sample-and-hold for the higher memory buffers 8-15. Valid values are:
|
multipleSamplesEnabled | allows multiple conversions to start without a trigger signal from the sample/hold signal Valid values are:
|
void ADC12_A_startConversion | ( | uint16_t | baseAddress, |
uint16_t | startingMemoryBufferIndex, | ||
uint8_t | conversionSequenceModeSelect | ||
) |
Enables/Starts an Analog-to-Digital Conversion.
This function enables/starts the conversion process of the ADC. If the sample/hold signal source chosen during initialization was ADC12OSC, then the conversion is started immediately, otherwise the chosen sample/hold signal source starts the conversion by a rising edge of the signal. Keep in mind when selecting conversion modes, that for sequenced and/or repeated modes, to keep the sample/hold-and-convert process continuing without a trigger from the sample/hold signal source, the multiple samples must be enabled using the ADC12_A_setupSamplingTimer() function. Note that after this function is called, the ADC12_A_disableConversions() has to be called to re-initialize the ADC, reconfigure a memory buffer control, enable/disable the sampling timer, or to change the internal reference voltage.
baseAddress | is the base address of the ADC12_A module. |
startingMemoryBufferIndex | is the memory buffer that will hold the first or only conversion. Valid values are:
|
conversionSequenceModeSelect | determines the ADC operating mode. Valid values are:
|
Modified bits of ADC12CTL1 register and bits of ADC12CTL0 register.