|
22 | 22 | //! # struct DummyUart;
|
23 | 23 | //! # struct DummyTimeSource;
|
24 | 24 | //! # struct DummyDelayer;
|
25 |
| -//! # impl embedded_hal::spi::SpiDevice<u8> for DummySpi { |
26 |
| -//! # type Error = (); |
27 |
| -//! # fn transfer<'w>(&mut self, data: &'w mut [u8]) -> Result<&'w [u8], Self::Error> { Ok(&[0]) } |
| 25 | +//! # use embedded_hal::spi::Operation; |
| 26 | +//! # use embedded_hal::spi::ErrorType; |
| 27 | +//! # impl ErrorType for DummySpi { |
| 28 | +//! # type Error = (); |
28 | 29 | //! # }
|
29 |
| -//! # impl embedded_hal::spi::SpiDevice<u8> for DummySpi { |
30 |
| -//! # type Error = (); |
31 |
| -//! # fn write(&mut self, data: &[u8]) -> Result<(), Self::Error> { Ok(()) } |
| 30 | +//! # impl embedded_hal::spi::SpiDevice<u8> for DummySpi { |
| 31 | +//! # |
| 32 | +//! # fn transaction(&mut self, operations: &mut [Operation<'_, u8>]) -> Result<(), Self::Error> { |
| 33 | +//! # Ok(()) |
| 34 | +//! # } |
| 35 | +//! # |
| 36 | +//! # fn read(&mut self, buf: &mut [u8]) -> Result<(), Self::Error> { |
| 37 | +//! # Ok(()) |
| 38 | +//! # } |
| 39 | +//! # |
| 40 | +//! # fn write(&mut self, buf: &[u8]) -> Result<(), Self::Error> { |
| 41 | +//! # Ok(()) |
| 42 | +//! # } |
| 43 | +//! # |
| 44 | +//! # fn transfer(&mut self, read: &mut [u8], write: &[u8]) -> Result<(), Self::Error> { |
| 45 | +//! # Ok(()) |
| 46 | +//! # } |
| 47 | +//! # |
| 48 | +//! # fn transfer_in_place(&mut self, buf: &mut [u8]) -> Result<(), Self::Error> { |
| 49 | +//! # Ok(()) |
| 50 | +//! # } |
| 51 | +//! # } |
| 52 | +//! # impl embedded_hal::digital::ErrorType for DummyCsPin { |
| 53 | +//! # type Error = (); |
32 | 54 | //! # }
|
33 | 55 | //! # impl embedded_hal::digital::OutputPin for DummyCsPin {
|
34 |
| -//! # type Error = (); |
35 | 56 | //! # fn set_low(&mut self) -> Result<(), ()> { Ok(()) }
|
36 | 57 | //! # fn set_high(&mut self) -> Result<(), ()> { Ok(()) }
|
37 | 58 | //! # }
|
|
41 | 62 | //! # impl embedded_hal::delay::DelayUs for DummyDelayer {
|
42 | 63 | //! # fn delay_us(&mut self, us: u8) {}
|
43 | 64 | //! # }
|
44 |
| -//! # impl std::fmt::Write for DummyUart { fn write_str(&mut self, s: &str) -> std::fmt::Result { Ok(()) } } |
| 65 | +//! # impl std::fmt::Write for DummyUart { |
| 66 | +//! # fn write_str(&mut self, s: &str) -> std::fmt::Result { Ok(()) } |
| 67 | +//! # } |
45 | 68 | //! # use std::fmt::Write;
|
46 | 69 | //! # use embedded_sdmmc::VolumeManager;
|
47 | 70 | //! # fn main() -> Result<(), embedded_sdmmc::Error<embedded_sdmmc::SdCardError>> {
|
48 | 71 | //! # let mut sdmmc_spi = DummySpi;
|
49 | 72 | //! # let mut sdmmc_cs = DummyCsPin;
|
50 | 73 | //! # let time_source = DummyTimeSource;
|
51 | 74 | //! # let delayer = DummyDelayer;
|
52 |
| -//! let sdcard = embedded_sdmmc::SdCard::new(sdmmc_spi, sdmmc_cs, delayer); |
53 |
| -//! println!("Card size is {} bytes", sdcard.num_bytes()?); |
54 |
| -//! let mut volume_mgr = embedded_sdmmc::VolumeManager::new(sdcard, time_source); |
55 |
| -//! let mut volume0 = volume_mgr.open_volume(embedded_sdmmc::VolumeIdx(0))?; |
56 |
| -//! println!("Volume 0: {:?}", volume0); |
57 |
| -//! let mut root_dir = volume0.open_root_dir()?; |
58 |
| -//! let mut my_file = root_dir.open_file_in_dir("MY_FILE.TXT", embedded_sdmmc::Mode::ReadOnly)?; |
59 |
| -//! while !my_file.is_eof() { |
60 |
| -//! let mut buffer = [0u8; 32]; |
61 |
| -//! let num_read = my_file.read(&mut buffer)?; |
62 |
| -//! for b in &buffer[0..num_read] { |
63 |
| -//! print!("{}", *b as char); |
64 |
| -//! } |
65 |
| -//! } |
| 75 | +//! # let sdcard = embedded_sdmmc::SdCard::new(sdmmc_spi, sdmmc_cs, delayer); |
| 76 | +//! # println!("Card size is {} bytes", sdcard.num_bytes()?); |
| 77 | +//! # let mut volume_mgr = embedded_sdmmc::VolumeManager::new(sdcard, time_source); |
| 78 | +//! # let mut volume0 = volume_mgr.open_volume(embedded_sdmmc::VolumeIdx(0))?; |
| 79 | +//! # println!("Volume 0: {:?}", volume0); |
| 80 | +//! # let mut root_dir = volume0.open_root_dir()?; |
| 81 | +//! # let mut my_file = root_dir.open_file_in_dir("MY_FILE.TXT", embedded_sdmmc::Mode::ReadOnly)?; |
| 82 | +//! # while !my_file.is_eof() { |
| 83 | +//! # let mut buffer = [0u8; 32]; |
| 84 | +//! # let num_read = my_file.read(&mut buffer)?; |
| 85 | +//! # for b in &buffer[0..num_read] { |
| 86 | +//! # print!("{}", *b as char); |
| 87 | +//! # } |
| 88 | +//! # } |
66 | 89 | //! # Ok(())
|
67 | 90 | //! # }
|
68 | 91 | //! ```
|
|
0 commit comments