Add SPI v3, fix up v2's af_num and remove extraneous Error enums.

This commit is contained in:
Bob McWhirter
2021-05-17 13:56:13 -04:00
parent a4fd1282e9
commit 1872824d56
3 changed files with 305 additions and 10 deletions

View File

@ -4,7 +4,7 @@ use crate::gpio::{AnyPin, Pin};
use crate::pac::gpio::vals::{Afr, Moder};
use crate::pac::gpio::Gpio;
use crate::pac::spi;
use crate::spi::{ByteOrder, Config, Instance, MisoPin, MosiPin, SckPin, WordSize};
use crate::spi::{ByteOrder, Config, Instance, MisoPin, MosiPin, SckPin, WordSize, Error};
use crate::time::Hertz;
use core::marker::PhantomData;
use embassy::util::Unborrow;
@ -52,9 +52,9 @@ impl<'d, T: Instance> Spi<'d, T> {
unborrow!(sck, mosi, miso);
unsafe {
Self::configure_pin(sck.block(), sck.pin() as _, sck.af());
Self::configure_pin(mosi.block(), mosi.pin() as _, mosi.af());
Self::configure_pin(miso.block(), miso.pin() as _, miso.af());
Self::configure_pin(sck.block(), sck.pin() as _, sck.af_num());
Self::configure_pin(mosi.block(), mosi.pin() as _, mosi.af_num());
Self::configure_pin(miso.block(), miso.pin() as _, miso.af_num());
}
let sck = sck.degrade();
@ -149,12 +149,6 @@ impl<'d, T: Instance> Drop for Spi<'d, T> {
}
}
pub enum Error {
Framing,
Crc,
Overrun,
}
impl<'d, T: Instance> embedded_hal::blocking::spi::Write<u8> for Spi<'d, T> {
type Error = Error;