Struct port_expander::dev::pi4ioe5v6408::Pi4ioe5v6408

source ·
pub struct Pi4ioe5v6408<M>(/* private fields */);
Expand description

PI4IOE5V6408 “Low-voltage Translating 8-bit I2C-bus I/O Expander”

Implementations§

source§

impl<I2C> Pi4ioe5v6408<RefCell<Driver<I2C>>>
where I2C: I2cBus,

source

pub fn new(i2c: I2C, addr: bool) -> Result<Self, I2C::BusError>

Create a new driver for the PI4IOE5V6408 “Low-voltage Translating 8-bit I2C-bus I/O Expander” All pins will be configured as floating inputs

§Arguments
  • i2c - The I2C bus the device is connected to
  • addr - The address of the device. The address is 0x43 if addr is false and 0x44 if addr is true
source§

impl<I2C, M> Pi4ioe5v6408<M>
where I2C: I2cBus, M: PortMutex<Port = Driver<I2C>>,

source

pub fn with_mutex(i2c: I2C, addr: bool) -> Result<Self, I2C::BusError>

Create a new driver for the PI4IOE5V6408 “Low-voltage Translating 8-bit I2C-bus I/O Expander” with a mutex. All pins will be configured as floating inputs

§Arguments
  • i2c - The I2C bus the device is connected to
  • addr - The address of the device. The address is 0x43 if addr is false and 0x44 if addr is true
source

pub fn with_retained_pin_config( i2c: I2C, addr: bool ) -> Result<Self, I2C::BusError>

Create a new driver for the PI4IOE5V6408 “Low-voltage Translating 8-bit I2C-bus I/O Expander” retaining the previous (pullup/down and interrupt) configuration.

Warning: Only use this constructor to recreate the driver for a chip that has been properly initialized before.

§Arguments
  • i2c - The I2C bus the device is connected to
  • addr - The address of the device. The address is 0x43 if addr is false and 0x44 if addr is true
source

pub fn split<'a>(&'a mut self) -> Parts<'a, I2C, M>

Auto Trait Implementations§

§

impl<M> Freeze for Pi4ioe5v6408<M>
where M: Freeze,

§

impl<M> RefUnwindSafe for Pi4ioe5v6408<M>
where M: RefUnwindSafe,

§

impl<M> Send for Pi4ioe5v6408<M>
where M: Send,

§

impl<M> Sync for Pi4ioe5v6408<M>
where M: Sync,

§

impl<M> Unpin for Pi4ioe5v6408<M>
where M: Unpin,

§

impl<M> UnwindSafe for Pi4ioe5v6408<M>
where M: 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, U> TryFrom<U> for T
where U: Into<T>,

§

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>,

§

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.