[][src]Struct trellis_m4::sercom::SPIMaster1

pub struct SPIMaster1<MISO, MOSI, SCK> { /* fields omitted */ }

SPIMasterX represents the corresponding SERCOMX instance configured to act in the role of an SPI Master. Objects of this type implement the HAL FullDuplex and blocking SPI traits.

This type is generic over any valid pad mapping where there is a defined "data in pin out data out pin out" implementation.

Implementations

impl<MISO, MOSI, SCK> SPIMaster1<MISO, MOSI, SCK>[src]

pub fn new<F, T>(
    clock: &Sercom1CoreClock,
    freq: F,
    mode: Mode,
    sercom: SERCOM1,
    mclk: &mut MCLK,
    padout: T
) -> SPIMaster1<MISO, MOSI, SCK> where
    F: Into<Hertz>,
    T: Into<SPIMaster1Padout<MISO, MOSI, SCK>>,
    SPIMaster1Padout<MISO, MOSI, SCK>: DipoDopo
[src]

Power on and configure SERCOMX to work as an SPI Master operating with the specified frequency and SPI Mode. The pinout specifies which pins are bound to the MISO, MOSI, SCK functions.

pub fn set_baud<F>(&mut self, freq: F, clock: &Sercom1CoreClock) where
    F: Into<Hertz>, 
[src]

Set the baud rate

pub fn free(self) -> (SPIMaster1Padout<MISO, MOSI, SCK>, SERCOM1)[src]

Tear down the SPI instance and yield the constituent pins and SERCOM instance. No explicit de-initialization is performed.

Trait Implementations

impl<MISO, MOSI, SCK> CommonSpi for SPIMaster1<MISO, MOSI, SCK>[src]

pub fn spi(&self) -> &SPIM[src]

Helper for accessing the spi member of the sercom instance

pub fn spi_mut(&mut self) -> &SPIM[src]

Helper for accessing the spi member of the sercom instance

impl<MISO, MOSI, SCK> Default<u8> for SPIMaster1<MISO, MOSI, SCK>[src]

impl<MISO, MOSI, SCK> Default<u8> for SPIMaster1<MISO, MOSI, SCK>[src]

impl<MISO, MOSI, SCK> Default<u8> for SPIMaster1<MISO, MOSI, SCK>[src]

impl<MISO, MOSI, SCK> FullDuplex<u8> for SPIMaster1<MISO, MOSI, SCK>[src]

type Error = Error

An enumeration of SPI errors

Auto Trait Implementations

impl<MISO, MOSI, SCK> Send for SPIMaster1<MISO, MOSI, SCK> where
    MISO: Send,
    MOSI: Send,
    SCK: Send
[src]

impl<MISO, MOSI, SCK> !Sync for SPIMaster1<MISO, MOSI, SCK>[src]

impl<MISO, MOSI, SCK> Unpin for SPIMaster1<MISO, MOSI, SCK> where
    MISO: Unpin,
    MOSI: Unpin,
    SCK: Unpin
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<W, S> Transfer<W> for S where
    W: Clone,
    S: Default<W>, 
[src]

type Error = <S as FullDuplex<W>>::Error

Error type

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<W, S> Write<W> for S where
    W: Clone,
    S: Default<W>, 
[src]

type Error = <S as FullDuplex<W>>::Error

Error type

impl<W, S> WriteIter<W> for S where
    W: Clone,
    S: Default<W>, 
[src]

type Error = <S as FullDuplex<W>>::Error

Error type