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

pub trait FullDuplex<Word = u8> {
    type Error: Error;
    fn read(&mut self) -> Result<Word, Self::Error>;
fn write(&mut self, word: Word) -> Result<(), Self::Error>; }
Expand description

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 read call must be preceded by a write call.

  • read calls only return the data received with the last write call. Previously received data is discarded

  • Data is only guaranteed to be clocked out when the 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

An enumeration of SPI errors

Required methods

Reads the word stored in the shift register

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

Writes a word to the slave

Implementations on Foreign Types

Implementors