Struct linux_embedded_hal::I2cdev
source · pub struct I2cdev { /* private fields */ }
Expand description
Newtype around i2cdev::linux::LinuxI2CDevice
that implements the embedded-hal
traits
Implementations§
source§impl I2cdev
impl I2cdev
sourcepub fn new<P>(path: P) -> Result<Self, LinuxI2CError>
pub fn new<P>(path: P) -> Result<Self, LinuxI2CError>
See i2cdev::linux::LinuxI2CDevice::new
for details.
Methods from Deref<Target = LinuxI2CDevice>§
sourcepub fn set_slave_address(
&mut self,
slave_address: u16
) -> Result<(), LinuxI2CError>
pub fn set_slave_address( &mut self, slave_address: u16 ) -> Result<(), LinuxI2CError>
Set the slave address for this device
Typically the address is expected to be 7-bits but 10-bit addresses may be supported by the kernel driver in some cases. Little validation is done in Rust as the kernel is good at making sure things are valid.
Note that if you have created a device using
I2Device::new(...)
it is not necesasry to call this method
(it is done internally). Calling this method is only
necessary if you need to change the slave device and you do
not want to create a new device.
sourcepub fn set_smbus_pec(&mut self, enable: bool) -> Result<(), LinuxI2CError>
pub fn set_smbus_pec(&mut self, enable: bool) -> Result<(), LinuxI2CError>
Enable/Disable PEC support for this device
Used only for SMBus transactions. This request only has an effect if the the adapter has I2C_FUNC_SMBUS_PEC; it is still safe if not, it just doesn’t have any effect.