aboutsummaryrefslogtreecommitdiff
path: root/examples/stm32f4/src
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2023-04-04 15:14:07 +0000
committerGitHub <[email protected]>2023-04-04 15:14:07 +0000
commit143105eeb66eef1012d8638212aa6894ffccf02f (patch)
tree3afd5281d13f91f921d1c255dad2e28f74ce6017 /examples/stm32f4/src
parent3ede5667d408272eee1c10ede17cfdf035a56ab5 (diff)
parent472dc6b7d16ea10b9512090acb1b74aa24ed189f (diff)
Merge #1313
1313: (embassy-stm32): rework bufferedUart to get rid of PeripheralMutex r=Dirbaio a=MathiasKoch New implementation is very similar to the implementation of embassy-nrf & embassy-rp. Also adds embedded-hal traits to bufferedUart. **NB**: Still needs testing on actual hardware Co-authored-by: Mathias <[email protected]>
Diffstat (limited to 'examples/stm32f4/src')
-rw-r--r--examples/stm32f4/src/bin/usart_buffered.rs14
1 files changed, 2 insertions, 12 deletions
diff --git a/examples/stm32f4/src/bin/usart_buffered.rs b/examples/stm32f4/src/bin/usart_buffered.rs
index dd171fe13..a93f8baeb 100644
--- a/examples/stm32f4/src/bin/usart_buffered.rs
+++ b/examples/stm32f4/src/bin/usart_buffered.rs
@@ -5,7 +5,7 @@
5use defmt::*; 5use defmt::*;
6use embassy_executor::Spawner; 6use embassy_executor::Spawner;
7use embassy_stm32::interrupt; 7use embassy_stm32::interrupt;
8use embassy_stm32::usart::{BufferedUart, Config, State}; 8use embassy_stm32::usart::{BufferedUart, Config};
9use embedded_io::asynch::BufRead; 9use embedded_io::asynch::BufRead;
10use {defmt_rtt as _, panic_probe as _}; 10use {defmt_rtt as _, panic_probe as _};
11 11
@@ -16,20 +16,10 @@ async fn main(_spawner: Spawner) {
16 16
17 let config = Config::default(); 17 let config = Config::default();
18 18
19 let mut state = State::new();
20 let irq = interrupt::take!(USART3); 19 let irq = interrupt::take!(USART3);
21 let mut tx_buf = [0u8; 32]; 20 let mut tx_buf = [0u8; 32];
22 let mut rx_buf = [0u8; 32]; 21 let mut rx_buf = [0u8; 32];
23 let mut buf_usart = BufferedUart::new( 22 let mut buf_usart = BufferedUart::new(p.USART3, irq, p.PD9, p.PD8, &mut tx_buf, &mut rx_buf, config);
24 &mut state,
25 p.USART3,
26 p.PD9,
27 p.PD8,
28 irq,
29 &mut tx_buf,
30 &mut rx_buf,
31 config,
32 );
33 23
34 loop { 24 loop {
35 let buf = buf_usart.fill_buf().await.unwrap(); 25 let buf = buf_usart.fill_buf().await.unwrap();