[−][src]Struct stm32l0xx_hal::i2c::I2c
I2C abstraction
Methods
impl<I, SDA, SCL> I2c<I, SDA, SCL> where
I: Instance,
[src]
I: Instance,
pub fn new(i2c: I, sda: SDA, scl: SCL, freq: Hertz, rcc: &mut Rcc) -> Self where
I: Instance,
SDA: SDAPin<I>,
SCL: SCLPin<I>,
[src]
I: Instance,
SDA: SDAPin<I>,
SCL: SCLPin<I>,
pub fn release(self) -> (I, SDA, SCL)
[src]
pub fn write_all<Channel, Buffer>(
self,
dma: &mut Handle,
channel: Channel,
address: u8,
buffer: Pin<Buffer>
) -> Transfer<Self, Tx<I>, Channel, Buffer, Ready> where
Tx<I>: Target<Channel>,
Channel: Channel,
Buffer: Deref + 'static,
Buffer::Target: AsSlice<Element = u8>,
[src]
self,
dma: &mut Handle,
channel: Channel,
address: u8,
buffer: Pin<Buffer>
) -> Transfer<Self, Tx<I>, Channel, Buffer, Ready> where
Tx<I>: Target<Channel>,
Channel: Channel,
Buffer: Deref + 'static,
Buffer::Target: AsSlice<Element = u8>,
pub fn write_some<Channel, Buffer>(
self,
dma: &mut Handle,
channel: Channel,
address: u8,
buffer: Pin<Buffer>,
num_words: usize
) -> Transfer<Self, Tx<I>, Channel, Buffer, Ready> where
Tx<I>: Target<Channel>,
Channel: Channel,
Buffer: Deref + 'static,
Buffer::Target: AsSlice<Element = u8>,
[src]
self,
dma: &mut Handle,
channel: Channel,
address: u8,
buffer: Pin<Buffer>,
num_words: usize
) -> Transfer<Self, Tx<I>, Channel, Buffer, Ready> where
Tx<I>: Target<Channel>,
Channel: Channel,
Buffer: Deref + 'static,
Buffer::Target: AsSlice<Element = u8>,
pub fn read_all<Channel, Buffer>(
self,
dma: &mut Handle,
channel: Channel,
address: u8,
buffer: Pin<Buffer>
) -> Transfer<Self, Rx<I>, Channel, Buffer, Ready> where
Rx<I>: Target<Channel>,
Channel: Channel,
Buffer: DerefMut + 'static,
Buffer::Target: AsMutSlice<Element = u8>,
[src]
self,
dma: &mut Handle,
channel: Channel,
address: u8,
buffer: Pin<Buffer>
) -> Transfer<Self, Rx<I>, Channel, Buffer, Ready> where
Rx<I>: Target<Channel>,
Channel: Channel,
Buffer: DerefMut + 'static,
Buffer::Target: AsMutSlice<Element = u8>,
pub fn read_some<Channel, Buffer>(
self,
dma: &mut Handle,
channel: Channel,
address: u8,
buffer: Pin<Buffer>,
num_words: usize
) -> Transfer<Self, Rx<I>, Channel, Buffer, Ready> where
Rx<I>: Target<Channel>,
Channel: Channel,
Buffer: DerefMut + 'static,
Buffer::Target: AsMutSlice<Element = u8>,
[src]
self,
dma: &mut Handle,
channel: Channel,
address: u8,
buffer: Pin<Buffer>,
num_words: usize
) -> Transfer<Self, Rx<I>, Channel, Buffer, Ready> where
Rx<I>: Target<Channel>,
Channel: Channel,
Buffer: DerefMut + 'static,
Buffer::Target: AsMutSlice<Element = u8>,
Trait Implementations
impl<I, SDA, SCL> Read for I2c<I, SDA, SCL> where
I: Instance,
[src]
I: Instance,
type Error = Error
Error type
fn read(&mut self, addr: u8, buffer: &mut [u8]) -> Result<(), Self::Error>
[src]
impl<I, SDA, SCL> Write for I2c<I, SDA, SCL> where
I: Instance,
[src]
I: Instance,
type Error = Error
Error type
fn write(&mut self, addr: u8, bytes: &[u8]) -> Result<(), Self::Error>
[src]
impl<I, SDA, SCL> WriteRead for I2c<I, SDA, SCL> where
I: Instance,
[src]
I: Instance,
Auto Trait Implementations
impl<I2C, SDA, SCL> Unpin for I2c<I2C, SDA, SCL> where
I2C: Unpin,
SCL: Unpin,
SDA: Unpin,
I2C: Unpin,
SCL: Unpin,
SDA: Unpin,
impl<I2C, SDA, SCL> Send for I2c<I2C, SDA, SCL> where
I2C: Send,
SCL: Send,
SDA: Send,
I2C: Send,
SCL: Send,
SDA: Send,
impl<I2C, SDA, SCL> Sync for I2c<I2C, SDA, SCL> where
I2C: Sync,
SCL: Sync,
SDA: Sync,
I2C: Sync,
SCL: Sync,
SDA: Sync,
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = !
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Same<T> for T
type Output = T
Should always be Self