Struct esp32c3_hal::adc::AdcCalLine

source ·
pub struct AdcCalLine<ADCI> { /* private fields */ }
Expand description

Line fitting ADC calibration scheme

This scheme implements gain correction based on reference points.

A reference point is a pair of a reference voltage and the corresponding mean raw digital ADC value. Such values are usually stored in efuse bit fields for each supported attenuation.

Also it can be measured in runtime by connecting ADC to reference voltage internally but this method is not so good because actual reference voltage may varies in range 1.0..=1.2 V. Currently this method is used as a fallback (with 1.1 V by default) when calibration data is missing.

This scheme also includes basic calibration (AdcCalBasic).

Trait Implementations§

source§

impl<ADCI> AdcCalScheme<ADCI> for AdcCalLine<ADCI>where ADCI: AdcCalEfuse + AdcHasLineCal + RegisterAccess,

source§

fn new_cal(atten: Attenuation) -> AdcCalLine<ADCI>

Instantiate scheme
source§

fn adc_cal(&self) -> u16

Get ADC calibration value to set to ADC unit
source§

fn adc_val(&self, val: u16) -> u16

Convert ADC value
source§

impl<ADCI> Clone for AdcCalLine<ADCI>where ADCI: Clone,

source§

fn clone(&self) -> AdcCalLine<ADCI>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<ADCI> Copy for AdcCalLine<ADCI>where ADCI: Copy,

Auto Trait Implementations§

§

impl<ADCI> RefUnwindSafe for AdcCalLine<ADCI>where ADCI: RefUnwindSafe,

§

impl<ADCI> Send for AdcCalLine<ADCI>where ADCI: Send,

§

impl<ADCI> Sync for AdcCalLine<ADCI>where ADCI: Sync,

§

impl<ADCI> Unpin for AdcCalLine<ADCI>where ADCI: Unpin,

§

impl<ADCI> UnwindSafe for AdcCalLine<ADCI>where ADCI: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.