diff options
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/stm32f4/src/bin/sdmmc.rs | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/examples/stm32f4/src/bin/sdmmc.rs b/examples/stm32f4/src/bin/sdmmc.rs index ebdfdb22d..eeecbd321 100644 --- a/examples/stm32f4/src/bin/sdmmc.rs +++ b/examples/stm32f4/src/bin/sdmmc.rs | |||
| @@ -39,7 +39,18 @@ async fn main(_spawner: Spawner) { | |||
| 39 | // Should print 400kHz for initialization | 39 | // Should print 400kHz for initialization |
| 40 | info!("Configured clock: {}", sdmmc.clock().0); | 40 | info!("Configured clock: {}", sdmmc.clock().0); |
| 41 | 41 | ||
| 42 | unwrap!(sdmmc.init_card(mhz(48)).await); | 42 | let mut err = None; |
| 43 | loop { | ||
| 44 | match sdmmc.init_card(mhz(24)).await { | ||
| 45 | Ok(_) => break, | ||
| 46 | Err(e) => { | ||
| 47 | if err != Some(e) { | ||
| 48 | info!("waiting for card error, retrying: {:?}", e); | ||
| 49 | err = Some(e); | ||
| 50 | } | ||
| 51 | } | ||
| 52 | } | ||
| 53 | } | ||
| 43 | 54 | ||
| 44 | let card = unwrap!(sdmmc.card()); | 55 | let card = unwrap!(sdmmc.card()); |
| 45 | 56 | ||
