Skip to content

Commit 24533f9

Browse files
committed
spi
1 parent 83e5b28 commit 24533f9

File tree

8 files changed

+77
-93
lines changed

8 files changed

+77
-93
lines changed

examples/comp_w_dac.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,7 @@ fn main() -> ! {
4040
let comp = comp1.comparator(
4141
gpioa.pa1,
4242
dac_token,
43-
comparator::Config::default()
44-
.hysteresis(comparator::Hysteresis::None)
45-
.output_inverted(),
43+
comparator::Config::default().hysteresis(comparator::Hysteresis::None),
4644
&rcc.clocks,
4745
);
4846

examples/spi-dma.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ fn main() -> ! {
3939
let mut delay_tim2 = DelayFromCountDownTimer::new(timer2.start_count_down(100.millis()));
4040

4141
let gpioa = dp.GPIOA.split(&mut rcc);
42-
let sclk = gpioa.pa5;
43-
let miso = gpioa.pa6;
44-
let mosi = gpioa.pa7;
42+
let sclk = Some(gpioa.pa5);
43+
let miso = Some(gpioa.pa6);
44+
let mosi = Some(gpioa.pa7);
4545

4646
let spi = dp
4747
.SPI1

examples/spi-example.rs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,12 @@ fn main() -> ! {
4141
let miso: PA6<AF5> = gpioa.pa6.into_alternate();
4242
let mosi: PA7<AF5> = gpioa.pa7.into_alternate();
4343

44-
let mut spi = dp
45-
.SPI1
46-
.spi((sclk, miso, mosi), spi::MODE_0, 400.kHz(), &mut rcc);
44+
let mut spi = dp.SPI1.spi(
45+
(Some(sclk), Some(miso), Some(mosi)),
46+
spi::MODE_0,
47+
400.kHz(),
48+
&mut rcc,
49+
);
4750
let mut cs = gpioa.pa8.into_push_pull_output();
4851
cs.set_high();
4952

examples/spi-sd.rs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,12 @@ fn main() -> ! {
4343
let miso: PB14<AF5> = gpiob.pb14.into_alternate();
4444
let mosi: PB15<AF5> = gpiob.pb15.into_alternate();
4545

46-
let spi = dp
47-
.SPI2
48-
.spi((sck, miso, mosi), spi::MODE_0, 400.kHz(), &mut rcc);
46+
let spi = dp.SPI2.spi(
47+
(Some(sck), Some(miso), Some(mosi)),
48+
spi::MODE_0,
49+
400.kHz(),
50+
&mut rcc,
51+
);
4952

5053
struct Clock;
5154

src/gpio.rs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -77,16 +77,6 @@ pub use embedded_hal_old::digital::v2::PinState;
7777

7878
use core::fmt;
7979

80-
/// A filler pin type
81-
#[derive(Debug, Default)]
82-
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
83-
pub struct NoPin<Otype = PushPull>(PhantomData<Otype>);
84-
impl<Otype> NoPin<Otype> {
85-
pub fn new() -> Self {
86-
Self(PhantomData)
87-
}
88-
}
89-
9080
/// Extension trait to split a GPIO peripheral in independent pins and registers
9181
pub trait GpioExt {
9282
/// The parts to split the GPIO into

src/gpio/alt.rs

Lines changed: 2 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -65,17 +65,13 @@ macro_rules! extipin {
6565
use extipin;
6666

6767
macro_rules! pin {
68-
( $($(#[$docs:meta])* <$name:ident, $Otype:ident> for $(no: $NoPin:ident,)? [$(
68+
( $($(#[$docs:meta])* <$name:ident, $Otype:ident> for [$(
6969
$(#[$attr:meta])* $PX:ident<$A:literal $(, Speed::$Speed:ident)?>,
7070
)*],)*) => {
7171
$(
7272
#[derive(Debug)]
7373
$(#[$docs])*
7474
pub enum $name {
75-
$(
76-
None($NoPin<$Otype>),
77-
)?
78-
7975
$(
8076
$(#[$attr])*
8177
$PX(gpio::$PX<$crate::gpio::Alternate<$A, $Otype>>),
@@ -128,14 +124,6 @@ macro_rules! pin {
128124
extipin! { $( $(#[$attr])* $PX, )* }
129125
}
130126

131-
$(
132-
impl From<$NoPin<$Otype>> for $name {
133-
fn from(p: $NoPin<$Otype>) -> Self {
134-
Self::None(p)
135-
}
136-
}
137-
)?
138-
139127
$(
140128
$(#[$attr])*
141129
impl<MODE> From<gpio::$PX<MODE>> for $name
@@ -175,17 +163,13 @@ macro_rules! pin {
175163
)*
176164
};
177165

178-
( $($(#[$docs:meta])* <$name:ident> default:$DefaultOtype:ident for $(no: $NoPin:ident,)? [$(
166+
( $($(#[$docs:meta])* <$name:ident> default:$DefaultOtype:ident for [$(
179167
$(#[$attr:meta])* $PX:ident<$A:literal>,
180168
)*],)*) => {
181169
$(
182170
#[derive(Debug)]
183171
$(#[$docs])*
184172
pub enum $name<Otype = $DefaultOtype> {
185-
$(
186-
None($NoPin<Otype>),
187-
)?
188-
189173
$(
190174
$(#[$attr])*
191175
$PX(gpio::$PX<$crate::gpio::Alternate<$A, Otype>>),
@@ -238,14 +222,6 @@ macro_rules! pin {
238222
extipin! { $( $(#[$attr])* $PX, )* }
239223
}
240224

241-
$(
242-
impl<Otype> From<$NoPin<Otype>> for $name<Otype> {
243-
fn from(p: $NoPin<Otype>) -> Self {
244-
Self::None(p)
245-
}
246-
}
247-
)?
248-
249225
$(
250226
$(#[$attr])*
251227
impl<MODE, Otype> From<gpio::$PX<MODE>> for $name<Otype>

src/gpio/alt/g4.rs

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use super::*;
2-
use crate::gpio::{self, NoPin, OpenDrain, PushPull};
2+
use crate::gpio::{self, OpenDrain, PushPull};
33

44
// auto-generated using codegen
55
// STM32CubeMX DB release: DB.6.0.130
@@ -137,12 +137,12 @@ pub mod fdcan1 {
137137
use super::*;
138138

139139
pin! {
140-
<Rx, PushPull> for no:NoPin, [
140+
<Rx, PushPull> for [
141141
PA11<9>,
142142
PB8<9>,
143143
PD0<9>,
144144
],
145-
<Tx, PushPull> for no:NoPin, [
145+
<Tx, PushPull> for [
146146
PA12<9>,
147147
PB9<9>,
148148
PD1<9>,
@@ -160,11 +160,11 @@ pub mod fdcan2 {
160160
use super::*;
161161

162162
pin! {
163-
<Rx, PushPull> for no:NoPin, [
163+
<Rx, PushPull> for [
164164
PB5<9>,
165165
PB12<9>,
166166
],
167-
<Tx, PushPull> for no:NoPin, [
167+
<Tx, PushPull> for [
168168
PB6<9>,
169169
PB13<9>,
170170
],
@@ -181,11 +181,11 @@ pub mod fdcan3 {
181181
use super::*;
182182

183183
pin! {
184-
<Rx, PushPull> for no:NoPin, [
184+
<Rx, PushPull> for [
185185
PA8<11>,
186186
PB3<11>,
187187
],
188-
<Tx, PushPull> for no:NoPin, [
188+
<Tx, PushPull> for [
189189
PA15<11>,
190190
PB4<11>,
191191
],
@@ -667,7 +667,7 @@ pub mod i2s2 {
667667
PB13<5>,
668668
PF1<5>,
669669
],
670-
<Mck, PushPull> for no:NoPin, [
670+
<Mck, PushPull> for [
671671
PA8<5>,
672672
PC6<6>,
673673
],
@@ -691,7 +691,7 @@ pub mod i2s3 {
691691
PB3<6>,
692692
PC10<6>,
693693
],
694-
<Mck, PushPull> for no:NoPin, [
694+
<Mck, PushPull> for [
695695
PA9<5>,
696696
PC7<6>,
697697
],
@@ -772,14 +772,14 @@ pub mod lpuart1 {
772772
}
773773

774774
pin! {
775-
<Rx> default:PushPull for no:NoPin, [
775+
<Rx> default:PushPull for [
776776
PA3<12>,
777777
PB10<8>,
778778
PC0<8>,
779779
#[cfg(feature = "gpio-g47x")]
780780
PG8<8>,
781781
],
782-
<Tx> default:PushPull for no:NoPin, [
782+
<Tx> default:PushPull for [
783783
PA2<12>,
784784
PB11<8>,
785785
PC1<8>,
@@ -987,13 +987,13 @@ pub mod spi1 {
987987
use super::*;
988988

989989
pin! {
990-
<Miso, PushPull> for no:NoPin, [
990+
<Miso, PushPull> for [
991991
PA6<5>,
992992
PB4<5>,
993993
#[cfg(feature = "gpio-g47x")]
994994
PG3<5>,
995995
],
996-
<Mosi, PushPull> for no:NoPin, [
996+
<Mosi, PushPull> for [
997997
PA7<5>,
998998
PB5<5>,
999999
#[cfg(feature = "gpio-g47x")]
@@ -1005,7 +1005,7 @@ pub mod spi1 {
10051005
#[cfg(feature = "gpio-g47x")]
10061006
PG5<5>,
10071007
],
1008-
<Sck, PushPull> for no:NoPin, [
1008+
<Sck, PushPull> for [
10091009
PA5<5>,
10101010
PB3<5>,
10111011
#[cfg(feature = "gpio-g47x")]
@@ -1025,11 +1025,11 @@ pub mod spi2 {
10251025
use super::*;
10261026

10271027
pin! {
1028-
<Miso, PushPull> for no:NoPin, [
1028+
<Miso, PushPull> for [
10291029
PA10<5>,
10301030
PB14<5>,
10311031
],
1032-
<Mosi, PushPull> for no:NoPin, [
1032+
<Mosi, PushPull> for [
10331033
PA11<5>,
10341034
PB15<5>,
10351035
],
@@ -1038,7 +1038,7 @@ pub mod spi2 {
10381038
PD15<6>,
10391039
PF0<5>,
10401040
],
1041-
<Sck, PushPull> for no:NoPin, [
1041+
<Sck, PushPull> for [
10421042
PB13<5>,
10431043
PF1<5>,
10441044
PF9<5>,
@@ -1058,19 +1058,19 @@ pub mod spi3 {
10581058
use super::*;
10591059

10601060
pin! {
1061-
<Miso, PushPull> for no:NoPin, [
1061+
<Miso, PushPull> for [
10621062
PB4<6>,
10631063
PC11<6>,
10641064
],
1065-
<Mosi, PushPull> for no:NoPin, [
1065+
<Mosi, PushPull> for [
10661066
PB5<6>,
10671067
PC12<6>,
10681068
],
10691069
<Nss, PushPull> for [
10701070
PA4<6>,
10711071
PA15<6>,
10721072
],
1073-
<Sck, PushPull> for no:NoPin, [
1073+
<Sck, PushPull> for [
10741074
PB3<6>,
10751075
PC10<6>,
10761076
#[cfg(feature = "gpio-g47x")]
@@ -1090,11 +1090,11 @@ pub mod spi4 {
10901090
use super::*;
10911091

10921092
pin! {
1093-
<Miso, PushPull> for no:NoPin, [
1093+
<Miso, PushPull> for [
10941094
PE5<5>,
10951095
PE13<5>,
10961096
],
1097-
<Mosi, PushPull> for no:NoPin, [
1097+
<Mosi, PushPull> for [
10981098
PE6<5>,
10991099
PE14<5>,
11001100
],
@@ -1103,7 +1103,7 @@ pub mod spi4 {
11031103
PE4<5>,
11041104
PE11<5>,
11051105
],
1106-
<Sck, PushPull> for no:NoPin, [
1106+
<Sck, PushPull> for [
11071107
PE2<5>,
11081108
PE12<5>,
11091109
],
@@ -1831,10 +1831,10 @@ pub mod uart4 {
18311831
}
18321832

18331833
pin! {
1834-
<Rx> default:PushPull for no:NoPin, [
1834+
<Rx> default:PushPull for [
18351835
PC11<5>,
18361836
],
1837-
<Tx> default:PushPull for no:NoPin, [
1837+
<Tx> default:PushPull for [
18381838
PC10<5>,
18391839
],
18401840
}
@@ -1867,10 +1867,10 @@ pub mod uart5 {
18671867
}
18681868

18691869
pin! {
1870-
<Rx> default:PushPull for no:NoPin, [
1870+
<Rx> default:PushPull for [
18711871
PD2<5>,
18721872
],
1873-
<Tx> default:PushPull for no:NoPin, [
1873+
<Tx> default:PushPull for [
18741874
PC12<5>,
18751875
],
18761876
}
@@ -1931,13 +1931,13 @@ pub mod usart1 {
19311931
}
19321932

19331933
pin! {
1934-
<Rx> default:PushPull for no:NoPin, [
1934+
<Rx> default:PushPull for [
19351935
PA10<7>,
19361936
PB7<7>,
19371937
PC5<7>,
19381938
PE1<7>,
19391939
],
1940-
<Tx> default:PushPull for no:NoPin, [
1940+
<Tx> default:PushPull for [
19411941
PA9<7>,
19421942
PB6<7>,
19431943
PC4<7>,
@@ -1990,13 +1990,13 @@ pub mod usart2 {
19901990
}
19911991

19921992
pin! {
1993-
<Rx> default:PushPull for no:NoPin, [
1993+
<Rx> default:PushPull for [
19941994
PA3<7>,
19951995
PA15<7>,
19961996
PB4<7>,
19971997
PD6<7>,
19981998
],
1999-
<Tx> default:PushPull for no:NoPin, [
1999+
<Tx> default:PushPull for [
20002000
PA2<7>,
20012001
PA14<7>,
20022002
PB3<7>,
@@ -2053,14 +2053,14 @@ pub mod usart3 {
20532053
}
20542054

20552055
pin! {
2056-
<Rx> default:PushPull for no:NoPin, [
2056+
<Rx> default:PushPull for [
20572057
PB8<7>,
20582058
PB11<7>,
20592059
PC11<7>,
20602060
PD9<7>,
20612061
PE15<7>,
20622062
],
2063-
<Tx> default:PushPull for no:NoPin, [
2063+
<Tx> default:PushPull for [
20642064
PB9<7>,
20652065
PB10<7>,
20662066
PC10<7>,

0 commit comments

Comments
 (0)