diff options
Diffstat (limited to 'embassy-stm32')
| -rw-r--r-- | embassy-stm32/src/adc/adc4.rs | 21 | ||||
| -rw-r--r-- | embassy-stm32/src/adc/v4.rs | 8 |
2 files changed, 10 insertions, 19 deletions
diff --git a/embassy-stm32/src/adc/adc4.rs b/embassy-stm32/src/adc/adc4.rs index 43509873f..491569c34 100644 --- a/embassy-stm32/src/adc/adc4.rs +++ b/embassy-stm32/src/adc/adc4.rs | |||
| @@ -24,23 +24,23 @@ pub const VREF_DEFAULT_MV: u32 = 3300; | |||
| 24 | /// VREF voltage used for factory calibration of VREFINTCAL register. | 24 | /// VREF voltage used for factory calibration of VREFINTCAL register. |
| 25 | pub const VREF_CALIB_MV: u32 = 3300; | 25 | pub const VREF_CALIB_MV: u32 = 3300; |
| 26 | 26 | ||
| 27 | impl<'d, T: Instance> super::SealedSpecialConverter<super::VrefInt> for Adc4<'d, T> { | 27 | impl super::SealedSpecialConverter<super::VrefInt> for crate::peripherals::ADC4 { |
| 28 | const CHANNEL: u8 = 0; | 28 | const CHANNEL: u8 = 0; |
| 29 | } | 29 | } |
| 30 | 30 | ||
| 31 | impl<'d, T: Instance> super::SealedSpecialConverter<super::Temperature> for Adc4<'d, T> { | 31 | impl super::SealedSpecialConverter<super::Temperature> for crate::peripherals::ADC4 { |
| 32 | const CHANNEL: u8 = 13; | 32 | const CHANNEL: u8 = 13; |
| 33 | } | 33 | } |
| 34 | 34 | ||
| 35 | impl<'d, T: Instance> super::SealedSpecialConverter<super::Vcore> for Adc4<'d, T> { | 35 | impl super::SealedSpecialConverter<super::Vcore> for crate::peripherals::ADC4 { |
| 36 | const CHANNEL: u8 = 12; | 36 | const CHANNEL: u8 = 12; |
| 37 | } | 37 | } |
| 38 | 38 | ||
| 39 | impl<'d, T: Instance> super::SealedSpecialConverter<super::Vbat> for Adc4<'d, T> { | 39 | impl super::SealedSpecialConverter<super::Vbat> for crate::peripherals::ADC4 { |
| 40 | const CHANNEL: u8 = 14; | 40 | const CHANNEL: u8 = 14; |
| 41 | } | 41 | } |
| 42 | 42 | ||
| 43 | impl<'d, T: Instance> super::SealedSpecialConverter<super::Dac> for Adc4<'d, T> { | 43 | impl super::SealedSpecialConverter<super::Dac> for crate::peripherals::ADC4 { |
| 44 | const CHANNEL: u8 = 21; | 44 | const CHANNEL: u8 = 21; |
| 45 | } | 45 | } |
| 46 | 46 | ||
| @@ -197,17 +197,6 @@ impl AdcRegs for crate::pac::adc::Adc4 { | |||
| 197 | } | 197 | } |
| 198 | } | 198 | } |
| 199 | 199 | ||
| 200 | pub struct Adc4<'d, T: Instance> { | ||
| 201 | #[allow(unused)] | ||
| 202 | adc: crate::Peri<'d, T>, | ||
| 203 | } | ||
| 204 | |||
| 205 | #[derive(Copy, Clone, Debug)] | ||
| 206 | pub enum Adc4Error { | ||
| 207 | InvalidSequence, | ||
| 208 | DMAError, | ||
| 209 | } | ||
| 210 | |||
| 211 | impl<'d, T: Instance<Regs = crate::pac::adc::Adc4>> super::Adc<'d, T> { | 200 | impl<'d, T: Instance<Regs = crate::pac::adc::Adc4>> super::Adc<'d, T> { |
| 212 | /// Create a new ADC driver. | 201 | /// Create a new ADC driver. |
| 213 | pub fn new_adc4(adc: Peri<'d, T>) -> Self { | 202 | pub fn new_adc4(adc: Peri<'d, T>) -> Self { |
diff --git a/embassy-stm32/src/adc/v4.rs b/embassy-stm32/src/adc/v4.rs index 09fc2ab22..962816194 100644 --- a/embassy-stm32/src/adc/v4.rs +++ b/embassy-stm32/src/adc/v4.rs | |||
| @@ -5,6 +5,8 @@ use pac::adc::vals::{Adstp, Difsel, Dmngt, Exten, Pcsel}; | |||
| 5 | use pac::adccommon::vals::Presc; | 5 | use pac::adccommon::vals::Presc; |
| 6 | 6 | ||
| 7 | use super::{Adc, Averaging, Instance, Resolution, SampleTime, Temperature, Vbat, VrefInt, blocking_delay_us}; | 7 | use super::{Adc, Averaging, Instance, Resolution, SampleTime, Temperature, Vbat, VrefInt, blocking_delay_us}; |
| 8 | #[cfg(stm32u5)] | ||
| 9 | use crate::adc::DefaultInstance; | ||
| 8 | use crate::adc::{AdcRegs, ConversionMode}; | 10 | use crate::adc::{AdcRegs, ConversionMode}; |
| 9 | use crate::time::Hertz; | 11 | use crate::time::Hertz; |
| 10 | use crate::{Peri, pac, rcc}; | 12 | use crate::{Peri, pac, rcc}; |
| @@ -47,15 +49,15 @@ impl<T: Instance> super::SealedSpecialConverter<super::Vbat> for T { | |||
| 47 | } | 49 | } |
| 48 | 50 | ||
| 49 | #[cfg(stm32u5)] | 51 | #[cfg(stm32u5)] |
| 50 | impl<T: Instance> super::SealedSpecialConverter<super::VrefInt> for T { | 52 | impl<T: DefaultInstance> super::SealedSpecialConverter<super::VrefInt> for T { |
| 51 | const CHANNEL: u8 = 0; | 53 | const CHANNEL: u8 = 0; |
| 52 | } | 54 | } |
| 53 | #[cfg(stm32u5)] | 55 | #[cfg(stm32u5)] |
| 54 | impl<T: Instance> super::SealedSpecialConverter<super::Temperature> for T { | 56 | impl<T: DefaultInstance> super::SealedSpecialConverter<super::Temperature> for T { |
| 55 | const CHANNEL: u8 = 19; | 57 | const CHANNEL: u8 = 19; |
| 56 | } | 58 | } |
| 57 | #[cfg(stm32u5)] | 59 | #[cfg(stm32u5)] |
| 58 | impl<T: Instance> super::SealedSpecialConverter<super::Vbat> for T { | 60 | impl<T: DefaultInstance> super::SealedSpecialConverter<super::Vbat> for T { |
| 59 | const CHANNEL: u8 = 18; | 61 | const CHANNEL: u8 = 18; |
| 60 | } | 62 | } |
| 61 | 63 | ||
