diff options
| author | xoviat <[email protected]> | 2025-11-10 12:49:23 -0600 |
|---|---|---|
| committer | xoviat <[email protected]> | 2025-11-10 12:49:23 -0600 |
| commit | ff1fb2dd6b9ebc0dd3c7b642f70fbb80a1fd030d (patch) | |
| tree | 96db68cbfd7c17c019795763e186c982547d2faf /embassy-stm32 | |
| parent | c90e4b3135283070bddc6a8e64df3139909ac8ce (diff) | |
adc: exact cal
Diffstat (limited to 'embassy-stm32')
| -rw-r--r-- | embassy-stm32/src/adc/f3.rs | 7 | ||||
| -rw-r--r-- | embassy-stm32/src/adc/mod.rs | 8 |
2 files changed, 8 insertions, 7 deletions
diff --git a/embassy-stm32/src/adc/f3.rs b/embassy-stm32/src/adc/f3.rs index da185e875..f6a4e1209 100644 --- a/embassy-stm32/src/adc/f3.rs +++ b/embassy-stm32/src/adc/f3.rs | |||
| @@ -33,13 +33,6 @@ impl<T: Instance> super::VrefConverter for T { | |||
| 33 | const CHANNEL: u8 = 18; | 33 | const CHANNEL: u8 = 18; |
| 34 | } | 34 | } |
| 35 | 35 | ||
| 36 | impl super::VrefInt { | ||
| 37 | /// The value that vref would be if vdda was at 3300mv | ||
| 38 | pub fn value(&self) -> u16 { | ||
| 39 | crate::pac::VREFINTCAL.data().read() | ||
| 40 | } | ||
| 41 | } | ||
| 42 | |||
| 43 | impl<T: Instance> super::TemperatureConverter for T { | 36 | impl<T: Instance> super::TemperatureConverter for T { |
| 44 | const CHANNEL: u8 = 16; | 37 | const CHANNEL: u8 = 16; |
| 45 | } | 38 | } |
diff --git a/embassy-stm32/src/adc/mod.rs b/embassy-stm32/src/adc/mod.rs index a5ca6277f..3bf893a35 100644 --- a/embassy-stm32/src/adc/mod.rs +++ b/embassy-stm32/src/adc/mod.rs | |||
| @@ -123,6 +123,14 @@ impl<T: Instance + VrefConverter> SealedAdcChannel<T> for VrefInt { | |||
| 123 | } | 123 | } |
| 124 | } | 124 | } |
| 125 | 125 | ||
| 126 | impl VrefInt { | ||
| 127 | #[cfg(any(adc_f3v1, adc_f3v2))] | ||
| 128 | /// The value that vref would be if vdda was at 3300mv | ||
| 129 | pub fn calibrated_value(&self) -> u16 { | ||
| 130 | crate::pac::VREFINTCAL.data().read() | ||
| 131 | } | ||
| 132 | } | ||
| 133 | |||
| 126 | /// Internal temperature channel. | 134 | /// Internal temperature channel. |
| 127 | pub struct Temperature; | 135 | pub struct Temperature; |
| 128 | impl<T: Instance + TemperatureConverter> AdcChannel<T> for Temperature {} | 136 | impl<T: Instance + TemperatureConverter> AdcChannel<T> for Temperature {} |
