We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 3d8d5f5 commit 2c75e09Copy full SHA for 2c75e09
examples/spi.rs
@@ -0,0 +1,30 @@
1
+use embedded_hal::spi::{SpiDevice, Operation};
2
+use linux_embedded_hal::SpidevDevice;
3
+
4
+struct Driver<SPI> {
5
+ spi: SPI,
6
+}
7
8
+impl<SPI> Driver<SPI>
9
+where
10
+ SPI: SpiDevice,
11
+{
12
+ pub fn new(spi: SPI) -> Self {
13
+ Driver { spi }
14
+ }
15
16
+ fn read_write(&mut self) -> Result<u8, SPI::Error> {
17
+ let mut buffer = [ 1, 2, 3 ];
18
+ let mut ops = [
19
+ Operation::TransferInPlace(&mut buffer)
20
+ ];
21
+ self.spi.transaction(&mut ops).and(Ok(buffer[0]))
22
23
24
25
+fn main() {
26
+ let dev = SpidevDevice::open("/dev/spidev0.0").unwrap();
27
+ let mut driver = Driver::new(dev);
28
+ let value = driver.read_write().unwrap();
29
+ println!("Read value: {}", value);
30
0 commit comments