[][src]Trait embedded_hal::spi::FullDuplex

pub trait FullDuplex<Word> {
    type Error;
    fn try_read(&mut self) -> Result<Word, Self::Error>;
fn try_send(&mut self, word: Word) -> Result<(), Self::Error>; }

Full duplex (master mode)

Notes

  • It's the task of the user of this interface to manage the slave select lines

  • Due to how full duplex SPI works each try_read call must be preceded by a try_send call.

  • try_read calls only return the data received with the last try_send call. Previously received data is discarded

  • Data is only guaranteed to be clocked out when the try_read call succeeds. The slave select line shouldn't be released before that.

  • Some SPIs can work with 8-bit and 16-bit words. You can overload this trait with different Word types to allow operation in both modes.

Associated Types

type Error

An enumeration of SPI errors

Loading content...

Required methods

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

Reads the word stored in the shift register

NOTE A word must be sent to the slave before attempting to call this method.

fn try_send(&mut self, word: Word) -> Result<(), Self::Error>

Sends a word to the slave

Loading content...

Implementors

Loading content...