# _embedded_hal_spi_FullDuplex in k210_hal::prelude - Rust
Full duplex (master mode)
Keywords: rust, rustlang, rust-lang, _embedded_hal_spi_FullDuplex

# Trait k210_hal::prelude::_embedded_hal_spi_FullDuplex

source · [−]

    pub trait _embedded_hal_spi_FullDuplex<Word> {
        type Error;
        fn try_read(&mut self) -> Result<Word, Error<Self::Error>>;
        fn try_send(&mut self, word: Word) -> Result<(), Error<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 `send` call.

- 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

source

#### type Error

An enumeration of SPI errors

## Required methods

source

#### fn try_read(&mut self) -> Result<Word, Error<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.

source

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

Sends a word to the slave

## Implementors

source

### impl FullDuplex<u8> for Spi<SPI0>

#### type Error = Infallible