From d9ecb4ab057482cbe399d40a2ef9ad847d815c8d Mon Sep 17 00:00:00 2001 From: Joshua Salzedo Date: Thu, 1 Apr 2021 17:03:55 -0700 Subject: [PATCH 1/3] Reborrow serial and demonstrate using it twice. --- embassy-stm32-examples/src/bin/serial.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/embassy-stm32-examples/src/bin/serial.rs b/embassy-stm32-examples/src/bin/serial.rs index c10f74a3..fb8dec00 100644 --- a/embassy-stm32-examples/src/bin/serial.rs +++ b/embassy-stm32-examples/src/bin/serial.rs @@ -12,7 +12,7 @@ use example_common::{panic, *}; use cortex_m::singleton; use cortex_m_rt::entry; use embassy::executor::{Executor, Spawner}; -use embassy::traits::uart::{Read, Write}; +use embassy::traits::uart::{Read, Write, ReadUntilIdle}; use embassy::util::Forever; use embassy_stm32::interrupt; use embassy_stm32::serial; @@ -75,5 +75,6 @@ async fn main(spawner: Spawner) { let buf = singleton!(: [u8; 30] = [0; 30]).unwrap(); buf[5] = 0x01; - serial.write(buf).await.unwrap(); + serial.as_mut().write(buf).await.unwrap(); + serial.as_mut().read_until_idle(buf); } From d80e2eb0060ee7e120b7bc6065453ecfb4fc71a6 Mon Sep 17 00:00:00 2001 From: Joshua Salzedo Date: Thu, 1 Apr 2021 17:05:44 -0700 Subject: [PATCH 2/3] Satisfy rustfmt. --- embassy-stm32-examples/src/bin/serial.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/embassy-stm32-examples/src/bin/serial.rs b/embassy-stm32-examples/src/bin/serial.rs index fb8dec00..320f1ec8 100644 --- a/embassy-stm32-examples/src/bin/serial.rs +++ b/embassy-stm32-examples/src/bin/serial.rs @@ -12,7 +12,7 @@ use example_common::{panic, *}; use cortex_m::singleton; use cortex_m_rt::entry; use embassy::executor::{Executor, Spawner}; -use embassy::traits::uart::{Read, Write, ReadUntilIdle}; +use embassy::traits::uart::{Read, ReadUntilIdle, Write}; use embassy::util::Forever; use embassy_stm32::interrupt; use embassy_stm32::serial; From 25e8368290a977cd4c49e27302b976affe9e345c Mon Sep 17 00:00:00 2001 From: Joshua Salzedo Date: Thu, 1 Apr 2021 17:06:31 -0700 Subject: [PATCH 3/3] Actually await the read call --- embassy-stm32-examples/src/bin/serial.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/embassy-stm32-examples/src/bin/serial.rs b/embassy-stm32-examples/src/bin/serial.rs index 320f1ec8..78ad06ab 100644 --- a/embassy-stm32-examples/src/bin/serial.rs +++ b/embassy-stm32-examples/src/bin/serial.rs @@ -76,5 +76,5 @@ async fn main(spawner: Spawner) { buf[5] = 0x01; serial.as_mut().write(buf).await.unwrap(); - serial.as_mut().read_until_idle(buf); + serial.as_mut().read_until_idle(buf).await.unwrap(); }