@@ -719,8 +719,7 @@ where
719
719
}
720
720
}
721
721
722
- impl < SPI , PINS , TRANSFER_MODE > embedded_hal:: blocking:: spi:: Write < u8 >
723
- for Spi < SPI , PINS , TRANSFER_MODE >
722
+ impl < SPI , PINS > embedded_hal:: blocking:: spi:: Write < u8 > for Spi < SPI , PINS , TransferModeNormal >
724
723
where
725
724
Self : spi:: FullDuplex < u8 > ,
726
725
SPI : Instance ,
@@ -738,8 +737,24 @@ where
738
737
}
739
738
}
740
739
741
- impl < SPI , PINS , TRANSFER_MODE > embedded_hal:: blocking:: spi:: WriteIter < u8 >
742
- for Spi < SPI , PINS , TRANSFER_MODE >
740
+ impl < SPI , PINS > embedded_hal:: blocking:: spi:: Write < u8 > for Spi < SPI , PINS , TransferModeBidi >
741
+ where
742
+ Self : spi:: FullDuplex < u8 > ,
743
+ SPI : Instance ,
744
+ {
745
+ type Error = <Self as spi:: FullDuplex < u8 > >:: Error ;
746
+
747
+ fn write ( & mut self , words : & [ u8 ] ) -> Result < ( ) , Self :: Error > {
748
+ use spi:: FullDuplex ;
749
+ for word in words {
750
+ nb:: block!( self . send( * word) ) ?;
751
+ }
752
+
753
+ Ok ( ( ) )
754
+ }
755
+ }
756
+
757
+ impl < SPI , PINS > embedded_hal:: blocking:: spi:: WriteIter < u8 > for Spi < SPI , PINS , TransferModeNormal >
743
758
where
744
759
Self : spi:: FullDuplex < u8 > ,
745
760
SPI : Instance ,
@@ -759,3 +774,23 @@ where
759
774
Ok ( ( ) )
760
775
}
761
776
}
777
+
778
+ impl < SPI , PINS > embedded_hal:: blocking:: spi:: WriteIter < u8 > for Spi < SPI , PINS , TransferModeBidi >
779
+ where
780
+ Self : spi:: FullDuplex < u8 > ,
781
+ SPI : Instance ,
782
+ {
783
+ type Error = <Self as spi:: FullDuplex < u8 > >:: Error ;
784
+
785
+ fn write_iter < WI > ( & mut self , words : WI ) -> Result < ( ) , Self :: Error >
786
+ where
787
+ WI : IntoIterator < Item = u8 > ,
788
+ {
789
+ use spi:: FullDuplex ;
790
+ for word in words. into_iter ( ) {
791
+ nb:: block!( self . send( word) ) ?;
792
+ }
793
+
794
+ Ok ( ( ) )
795
+ }
796
+ }
0 commit comments