pub trait I2CTransfer<'a> {
type Error: Error;
type Message: I2CMessage<'a>;
// Required method
fn transfer(
&mut self,
msgs: &'a mut [Self::Message],
) -> Result<u32, Self::Error>;
}
Expand description
Interface to an I2C Bus from an I2C Master
This is used when the client wants to interact directly with the bus without specifying an I2C slave address up-front, either because it needs to communicate with multiple addresses without creatings separate I2CDevice objects, or because it wants to make used of the I2C_RDWR ioctl which allows the client to send and transmit multiple sets I2C data in a single operation, potentially to different I2C slave addresses.
Typical implementations will store state with references to the bus in use. The trait is based on the Linux i2cdev interface.
Required Associated Types§
Sourcetype Message: I2CMessage<'a>
type Message: I2CMessage<'a>
I2C transfer message type