PXx

Struct PXx 

Source
pub struct PXx<MODE> { /* private fields */ }
Expand description

Fully erased pin

This moves the pin type information to be known at runtime, and erases the specific compile time type of the GPIO. It does only matter, that it is a GPIO pin with a specific MODE.

See examples/gpio_erased.rs as an example.

Trait Implementations§

Source§

impl<MODE> InputPin for PXx<Input<MODE>>

Source§

type Error = Infallible

Error type
Source§

fn is_high(&self) -> Result<bool, Self::Error>

Is the input pin high?
Source§

fn is_low(&self) -> Result<bool, Self::Error>

Is the input pin low?
Source§

impl InputPin for PXx<Output<OpenDrain>>

Source§

type Error = Infallible

Error type
Source§

fn is_high(&self) -> Result<bool, Self::Error>

Is the input pin high?
Source§

fn is_low(&self) -> Result<bool, Self::Error>

Is the input pin low?
Source§

impl<MODE> OutputPin for PXx<Output<MODE>>

Source§

type Error = Infallible

Error type
Source§

fn set_high(&mut self) -> Result<(), Self::Error>

Drives the pin high Read more
Source§

fn set_low(&mut self) -> Result<(), Self::Error>

Drives the pin low Read more
Source§

impl<MODE> StatefulOutputPin for PXx<Output<MODE>>

Source§

fn is_set_high(&self) -> Result<bool, Self::Error>

Is the pin in drive high mode? Read more
Source§

fn is_set_low(&self) -> Result<bool, Self::Error>

Is the pin in drive low mode? Read more
Source§

impl<MODE> Default for PXx<Output<MODE>>

Auto Trait Implementations§

§

impl<MODE> Freeze for PXx<MODE>

§

impl<MODE> RefUnwindSafe for PXx<MODE>
where MODE: RefUnwindSafe,

§

impl<MODE> Send for PXx<MODE>
where MODE: Send,

§

impl<MODE> Sync for PXx<MODE>
where MODE: Sync,

§

impl<MODE> Unpin for PXx<MODE>
where MODE: Unpin,

§

impl<MODE> UnwindSafe for PXx<MODE>
where MODE: UnwindSafe,

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where 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 T
where 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> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<P> ToggleableOutputPin for P
where P: Default,

Source§

fn toggle(&mut self) -> Result<(), <P as ToggleableOutputPin>::Error>

Toggle pin output

Source§

type Error = <P as OutputPin>::Error

Error type
Source§

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

Source§

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 T
where U: TryFrom<T>,

Source§

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.