Struct embedded_hal_sync_pins::pins::InputPin [−][src]
pub struct InputPin { /* fields omitted */ }Expand description
A mutable input pin that can be safely shared between threads.
This pin implements embedded_hal::InputPin and can be used
to share an AtomicPinState with an embedded_hal implementation.
Examples
use embedded_hal_sync_pins::pins::{AtomicPinState, InputPin, PinState};
use embedded_hal::digital::blocking::InputPin as HalInputPin;
use std::sync::{Arc, atomic::Ordering};
let state = Arc::new(AtomicPinState::new_with_state(PinState::Low));
let pin = InputPin::new(state.clone());
assert_eq!(Ok(true), pin.is_low());
state.store(PinState::High, Ordering::SeqCst);
assert_eq!(Ok(true), pin.is_high());Implementations
Creates a new input pin with a given PinState.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for InputPin
impl UnwindSafe for InputPin
Blanket Implementations
Mutably borrows from an owned value. Read more
