Functions | |
bool | ADC10_A_init (uint16_t baseAddress, uint16_t sampleHoldSignalSourceSelect, uint8_t clockSourceSelect, uint16_t clockSourceDivider) |
Initializes the ADC10_A Module. More... | |
void | ADC10_A_enable (uint16_t baseAddress) |
Enables the ADC10_A block. More... | |
void | ADC10_A_disable (uint16_t baseAddress) |
Disables the ADC10_A block. More... | |
void | ADC10_A_setupSamplingTimer (uint16_t baseAddress, uint16_t clockCycleHoldCount, uint16_t multipleSamplesEnabled) |
Sets up and enables the Sampling Timer Pulse Mode. More... | |
void | ADC10_A_disableSamplingTimer (uint16_t baseAddress) |
Disables Sampling Timer Pulse Mode. More... | |
void | ADC10_A_configureMemory (uint16_t baseAddress, uint8_t inputSourceSelect, uint8_t positiveRefVoltageSourceSelect, uint8_t negativeRefVoltageSourceSelect) |
Configures the controls of the selected memory buffer. More... | |
void | ADC10_A_enableInterrupt (uint16_t baseAddress, uint8_t interruptMask) |
Enables selected ADC10_A interrupt sources. More... | |
void | ADC10_A_disableInterrupt (uint16_t baseAddress, uint8_t interruptMask) |
Disables selected ADC10_A interrupt sources. More... | |
void | ADC10_A_clearInterrupt (uint16_t baseAddress, uint8_t interruptFlagMask) |
Clears ADC10_A selected interrupt flags. More... | |
uint16_t | ADC10_A_getInterruptStatus (uint16_t baseAddress, uint8_t interruptFlagMask) |
Returns the status of the selected memory interrupt flags. More... | |
void | ADC10_A_startConversion (uint16_t baseAddress, uint8_t conversionSequenceModeSelect) |
Enables/Starts an Analog-to-Digital Conversion. More... | |
void | ADC10_A_disableConversions (uint16_t baseAddress, bool preempt) |
Disables the ADC from converting any more signals. More... | |
int16_t | ADC10_A_getResults (uint16_t baseAddress) |
Returns the raw contents of the specified memory buffer. More... | |
void | ADC10_A_setResolution (uint16_t baseAddress, uint8_t resolutionSelect) |
Use to change the resolution of the converted data. More... | |
void | ADC10_A_setSampleHoldSignalInversion (uint16_t baseAddress, uint16_t invertedSignal) |
Use to invert or un-invert the sample/hold signal. More... | |
void | ADC10_A_setDataReadBackFormat (uint16_t baseAddress, uint16_t readBackFormat) |
Use to set the read-back format of the converted data. More... | |
void | ADC10_A_enableReferenceBurst (uint16_t baseAddress) |
Enables the reference buffer's burst ability. More... | |
void | ADC10_A_disableReferenceBurst (uint16_t baseAddress) |
Disables the reference buffer's burst ability. More... | |
void | ADC10_A_setReferenceBufferSamplingRate (uint16_t baseAddress, uint16_t samplingRateSelect) |
Use to set the reference buffer's sampling rate. More... | |
void | ADC10_A_setWindowComp (uint16_t baseAddress, uint16_t highThreshold, uint16_t lowThreshold) |
Sets the high and low threshold for the window comparator feature. More... | |
uint32_t | ADC10_A_getMemoryAddressForDMA (uint16_t baseAddress) |
Returns the address of the memory buffer for the DMA module. More... | |
uint16_t | ADC10_A_isBusy (uint16_t baseAddress) |
Returns the busy status of the ADC10_A core. More... | |
void ADC10_A_clearInterrupt | ( | uint16_t | baseAddress, |
uint8_t | interruptFlagMask | ||
) |
Clears ADC10_A selected interrupt flags.
The selected ADC10_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.
baseAddress | is the base address of the ADC10_A module. |
interruptFlagMask | 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 ADC10IFG register.
void ADC10_A_configureMemory | ( | uint16_t | baseAddress, |
uint8_t | inputSourceSelect, | ||
uint8_t | positiveRefVoltageSourceSelect, | ||
uint8_t | negativeRefVoltageSourceSelect | ||
) |
Configures the controls of the selected memory buffer.
Maps an input signal conversion into the memory buffer, as well as the positive and negative reference voltages for each conversion being stored into the memory buffer. If the internal reference is used for the positive reference voltage, the internal REF module has 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. If conversion is not disabled, this function does nothing.
baseAddress | is the base address of the ADC10_A module. |
inputSourceSelect | is the input that will store the converted data into the specified memory buffer. Valid values are:
|
positiveRefVoltageSourceSelect | is the reference voltage source to set as the upper limit for the conversion that is to be stored in the specified memory buffer. Valid values are:
|
negativeRefVoltageSourceSelect | is the reference voltage source to set as the lower limit for the conversion that is to be stored in the specified memory buffer. Valid values are:
|
void ADC10_A_disable | ( | uint16_t | baseAddress | ) |
Disables the ADC10_A block.
This will disable operation of the ADC10_A block.
baseAddress | is the base address of the ADC10_A module. |
Modified bits are ADC10ON of ADC10CTL0 register.
void ADC10_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 ADC10_A_PREEMPTCONVERSION, 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 ADC10_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 ADC10_A module. |
preempt | specifies if the current conversion should be pre-empted before the end of the conversion Valid values are:
|
Modified bits of ADC10CTL1 register and bits of ADC10CTL0 register.
void ADC10_A_disableInterrupt | ( | uint16_t | baseAddress, |
uint8_t | interruptMask | ||
) |
Disables selected ADC10_A interrupt sources.
Disables the indicated ADC10_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 ADC10_A module. |
interruptMask | is the bit mask of the memory buffer interrupt sources to be disabled. Mask value is the logical OR of any of the following:
|
Modified bits of ADC10IE register.
void ADC10_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 ADC10_A module. |
void ADC10_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 ADC10_A module. |
void ADC10_A_enable | ( | uint16_t | baseAddress | ) |
Enables the ADC10_A block.
This will enable operation of the ADC10_A block.
baseAddress | is the base address of the ADC10_A module. |
Modified bits are ADC10ON of ADC10CTL0 register.
void ADC10_A_enableInterrupt | ( | uint16_t | baseAddress, |
uint8_t | interruptMask | ||
) |
Enables selected ADC10_A interrupt sources.
Enables the indicated ADC10_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 ADC10_A module. |
interruptMask | is the bit mask of the memory buffer interrupt sources to be enabled. Mask value is the logical OR of any of the following:
|
Modified bits of ADC10IE register.
void ADC10_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 ADC10_A module. |
uint16_t ADC10_A_getInterruptStatus | ( | uint16_t | baseAddress, |
uint8_t | interruptFlagMask | ||
) |
Returns the status of the selected memory interrupt flags.
Returns the status of the selected interrupt flags.
baseAddress | is the base address of the ADC10_A module. |
interruptFlagMask | 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 ADC10_A_getMemoryAddressForDMA | ( | uint16_t | baseAddress | ) |
Returns the address of the memory buffer for the DMA module.
Returns the address of the 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 ADC10_A module. |
int16_t ADC10_A_getResults | ( | uint16_t | baseAddress | ) |
Returns the raw 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 ADC10_A module. |
bool ADC10_A_init | ( | uint16_t | baseAddress, |
uint16_t | sampleHoldSignalSourceSelect, | ||
uint8_t | clockSourceSelect, | ||
uint16_t | clockSourceDivider | ||
) |
Initializes the ADC10_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 ADC10_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 ADC10_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 ADC10_A_isBusy | ( | uint16_t | baseAddress | ) |
Returns the busy status of the ADC10_A core.
Returns the status of the ADC core if there is a conversion currently taking place.
baseAddress | is the base address of the ADC10_A module. |
void ADC10_A_setDataReadBackFormat | ( | uint16_t | baseAddress, |
uint16_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 ADC10_A module. |
readBackFormat | is the specified format to store the conversions in the memory buffer. Valid values are:
|
void ADC10_A_setReferenceBufferSamplingRate | ( | uint16_t | baseAddress, |
uint16_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 ADC10_A module. |
samplingRateSelect | is the specified maximum sampling rate. Valid values are:
|
void ADC10_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 ADC10_A module. |
resolutionSelect | determines the resolution of the converted data. Valid values are:
|
void ADC10_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 ADC10_A module. |
invertedSignal | set if the sample/hold signal should be inverted Valid values are:
|
void ADC10_A_setupSamplingTimer | ( | uint16_t | baseAddress, |
uint16_t | clockCycleHoldCount, | ||
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 ADC10_A module. |
clockCycleHoldCount | sets the amount of clock cycles to sample-and- hold for the memory buffer. Valid values are:
|
multipleSamplesEnabled | allows multiple conversions to start without a trigger signal from the sample/hold signal Valid values are:
|
void ADC10_A_setWindowComp | ( | uint16_t | baseAddress, |
uint16_t | highThreshold, | ||
uint16_t | lowThreshold | ||
) |
Sets the high and low threshold for the window comparator feature.
Sets the high and low threshold for the window comparator feature. Use the ADC10HIIE, ADC10INIE, ADC10LOIE interrupts to utilize this feature.
baseAddress | is the base address of the ADC10_A module. |
highThreshold | is the upper bound that could trip an interrupt for the window comparator. |
lowThreshold | is the lower bound that could trip on interrupt for the window comparator. |
void ADC10_A_startConversion | ( | uint16_t | baseAddress, |
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 ADC10OSC, 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 ADC10_A_setupSamplingTimer() function. Also note that when a sequence conversion mode is selected, the first input channel is the one mapped to the memory buffer, the next input channel selected for conversion is one less than the input channel just converted (i.e. A1 comes after A2), until A0 is reached, and if in repeating mode, then the next input channel will again be the one mapped to the memory buffer. Note that after this function is called, the ADC10_A_stopConversions() 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 ADC10_A module. |
conversionSequenceModeSelect | determines the ADC operating mode. Valid values are:
|