[−][src]Trait stm32g0xx_hal::prelude::_
ADCs that sample on single channels per request, and do so at the time of the request.
This trait is the interface to an ADC that is configured to read a specific channel at the time of the request (in contrast to continuous asynchronous sampling).
use embedded_hal::adc::{Channel, OneShot}; struct MyAdc; // 10-bit ADC, with 5 channels impl<WORD, PIN> OneShot<MyAdc, WORD, PIN> for MyAdc where WORD: From<u16>, PIN: Channel<MyAdc, ID=u8>, { type Error = (); fn read(&mut self, _pin: &mut PIN) -> nb::Result<WORD, Self::Error> { let chan = 1 << PIN::channel(); self.power_up(); let result = self.do_conversion(chan); self.power_down(); Ok(result.into()) } }
Associated Types
type Error
Error type returned by ADC methods
Required methods
fn read(&mut self, pin: &mut Pin) -> Result<Word, Error<Self::Error>>
Request that the ADC begin a conversion on the specified pin
This method takes a Pin
reference, as it is expected that the ADC will be able to sample
whatever channel underlies the pin.
Implementors
impl<WORD, PIN> OneShot<Adc, WORD, PIN> for Adc where
WORD: From<u16>,
PIN: Channel<Adc, ID = u8>,
[src]
WORD: From<u16>,
PIN: Channel<Adc, ID = u8>,