|
WISP ERT (Client)
1.0.0
The WISP Extended Runtime (WISP side)
|
ADC module for using the ADC12_B peripheral. More...
Functions | |
| void | ADC_init (void) |
| void | ADC_initCustom (ADC_referenceSelect reference, ADC_precisionSelect precision, ADC_inputSelect channel) |
| uint16_t | ADC_read (void) |
| void | ADC_asyncRead (void(*callback)(uint16_t)) |
| uint16_t | ADC_critRead (void) |
| __interrupt void | INT_ADC12 (void) |
| uint16_t | ADC_rawCorrection (uint16_t raw) |
| uint16_t | ADC_rawToVoltage (uint16_t raw) |
| int16_t | ADC_rawToTemperature (uint16_t raw) |
| uint8_t | ADC_isBusy (void) |
| uint8_t | ADC_isReady (void) |
| void | ADC_enable (void) |
| void | ADC_disable (void) |
| void | ADC_enableConversion (void) |
| void | ADC_disableConversion (void) |
| void | ADC_enableInterrupts (void) |
| void | ADC_disableInterrupts (void) |
| void | ADC_setReference (ADC_referenceSelect reference) |
| ADC_referenceSelect | ADC_getReference (void) |
| void | ADC_setPrecision (ADC_precisionSelect precision) |
| ADC_precisionSelect | ADC_getPrecision (void) |
| void | ADC_setInputChannel (ADC_inputSelect channel) |
| ADC_inputSelect | ADC_getInputChannel (void) |
| void | ADC_setSampleHold (void) |
Variables | |
| struct { | |
| uint16_t lastValue | |
| ADC_referenceSelect reference | |
| ADC_precisionSelect precision | |
| ADC_inputSelect channel | |
| void(* read_callback )(uint16_t) | |
| } | ADC_SM |
ADC module for using the ADC12_B peripheral.
| void ADC_asyncRead | ( | void(*)(uint16_t) | callback | ) |
Asynchronously read ADC. Do not block, call callback when done.
| callback | function to be called after conversion finishes |
| uint16_t ADC_critRead | ( | void | ) |
Critical ADC read. Does block, does not use interrupts.
| void ADC_disable | ( | void | ) |
Disable the ADC12_B peripheral.
| void ADC_disableConversion | ( | void | ) |
Disable ADC conversions.
| void ADC_disableInterrupts | ( | void | ) |
Disable all ADC interrupts.
| void ADC_enable | ( | void | ) |
Enable the ADC12_B peripheral.
| void ADC_enableConversion | ( | void | ) |
Enable ADC conversions.
| void ADC_enableInterrupts | ( | void | ) |
Enable ADC interrupts.
| ADC_inputSelect ADC_getInputChannel | ( | void | ) |
Get currently set input channel.
| ADC_precisionSelect ADC_getPrecision | ( | void | ) |
Get currently set conversion precision.
| ADC_referenceSelect ADC_getReference | ( | void | ) |
Get currently set voltage reference.
| void ADC_init | ( | void | ) |
Configure the ADC12_B module in single channel single measurement mode and prepare for measurement.
| void ADC_initCustom | ( | ADC_referenceSelect | reference, |
| ADC_precisionSelect | precision, | ||
| ADC_inputSelect | channel | ||
| ) |
Configure the ADC12_B module in single channel single measurement mode and prepare for measurement.
| reference | voltage reference source |
| precision | ADC measurement precision |
| channel | ADC input channel |
| uint8_t ADC_isBusy | ( | void | ) |
Return true if ADC module is in the middle of a conversion, false if not.
| uint8_t ADC_isReady | ( | void | ) |
Return false if ADC module is in the middle of a conversion, true if not.
| uint16_t ADC_rawCorrection | ( | uint16_t | raw | ) |
Correct RAW ADC reading according to calibration procedure
See user guide 1.14.3.2
| raw | RAW ADC value |
| int16_t ADC_rawToTemperature | ( | uint16_t | raw | ) |
Convert RAW ADC reading to milli degree Celcius.
| raw | RAW ADC value |
| uint16_t ADC_rawToVoltage | ( | uint16_t | raw | ) |
Convert RAW ADC reading to MilliVolts.
Based on formula (see user guide 25.2.1): Nadc = 4096 * ( (Vin + .5LSB) - Vr- ) / ( Vr+ - Vr- ) where LSB = ( Vr+ - Vr- ) / 4096
Formula converted to: Vin = (Nadc * ( Vr+ - Vr- ) ) / 4096 + Vr- - .5LSB where LSB = ( Vr+ - Vr- ) / 4096
| raw | RAW ADC value |
| uint16_t ADC_read | ( | void | ) |
Synchronously read ADC. Does block.
| void ADC_setInputChannel | ( | ADC_inputSelect | channel | ) |
Set ADC input channel and single channel-single conversion mode.
Possible channels: analog input pins A0-A31 and internal temperature sensor.
| channel | the wanted channel. |
| void ADC_setPrecision | ( | ADC_precisionSelect | precision | ) |
Set ADC conversion precision.
| precision | the wanted precision. |
| void ADC_setReference | ( | ADC_referenceSelect | reference | ) |
Set voltage reference and make the ADC to use it.
| reference | the wanted reference voltage. |
| void ADC_setSampleHold | ( | void | ) |
Set ADC to sample and hold pulse mode.
| __interrupt void INT_ADC12 | ( | void | ) |
Handles interrupts for the ADC module. Interrupts typically occur once after each conversion.
| struct { ... } ADC_SM |
State variables for the ADC module
| ADC_inputSelect channel |
| uint16_t lastValue |
| ADC_precisionSelect precision |
| void(* read_callback) (uint16_t) |
| ADC_referenceSelect reference |