diff options
| author | Dario Nieuwenhuis <[email protected]> | 2023-03-05 02:56:15 +0100 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-03-05 02:56:15 +0100 |
| commit | d91efe3e6252336a6e226700ca72afef2e13abc0 (patch) | |
| tree | a940edf957ef7facb29d9881351abafd3f802747 /examples/nrf52840/src/bin | |
| parent | bef559307c2b63540e73539e3ba906f4c370a131 (diff) | |
| parent | 7650fea5f2bed1c39a0ff6c5934709d316547a23 (diff) | |
Merge pull request #1208 from embassy-rs/nrf-uarte-lockfree
nrf/buffered_uarte: make it work without rts/cts, and lock-free.
Diffstat (limited to 'examples/nrf52840/src/bin')
| -rw-r--r-- | examples/nrf52840/src/bin/buffered_uart.rs | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/examples/nrf52840/src/bin/buffered_uart.rs b/examples/nrf52840/src/bin/buffered_uart.rs index ea566f4b2..5b934b7d6 100644 --- a/examples/nrf52840/src/bin/buffered_uart.rs +++ b/examples/nrf52840/src/bin/buffered_uart.rs | |||
| @@ -4,10 +4,9 @@ | |||
| 4 | 4 | ||
| 5 | use defmt::*; | 5 | use defmt::*; |
| 6 | use embassy_executor::Spawner; | 6 | use embassy_executor::Spawner; |
| 7 | use embassy_nrf::buffered_uarte::{BufferedUarte, State}; | 7 | use embassy_nrf::buffered_uarte::BufferedUarte; |
| 8 | use embassy_nrf::{interrupt, uarte}; | 8 | use embassy_nrf::{interrupt, uarte}; |
| 9 | use embedded_io::asynch::{BufRead, Write}; | 9 | use embedded_io::asynch::Write; |
| 10 | use futures::pin_mut; | ||
| 11 | use {defmt_rtt as _, panic_probe as _}; | 10 | use {defmt_rtt as _, panic_probe as _}; |
| 12 | 11 | ||
| 13 | #[embassy_executor::main] | 12 | #[embassy_executor::main] |
| @@ -21,24 +20,19 @@ async fn main(_spawner: Spawner) { | |||
| 21 | let mut rx_buffer = [0u8; 4096]; | 20 | let mut rx_buffer = [0u8; 4096]; |
| 22 | 21 | ||
| 23 | let irq = interrupt::take!(UARTE0_UART0); | 22 | let irq = interrupt::take!(UARTE0_UART0); |
| 24 | let mut state = State::new(); | 23 | let mut u = BufferedUarte::new( |
| 25 | // Please note - important to have hardware flow control (https://github.com/embassy-rs/embassy/issues/536) | ||
| 26 | let u = BufferedUarte::new( | ||
| 27 | &mut state, | ||
| 28 | p.UARTE0, | 24 | p.UARTE0, |
| 29 | p.TIMER0, | 25 | p.TIMER0, |
| 30 | p.PPI_CH0, | 26 | p.PPI_CH0, |
| 31 | p.PPI_CH1, | 27 | p.PPI_CH1, |
| 28 | p.PPI_GROUP0, | ||
| 32 | irq, | 29 | irq, |
| 33 | p.P0_08, | 30 | p.P0_08, |
| 34 | p.P0_06, | 31 | p.P0_06, |
| 35 | p.P0_07, | ||
| 36 | p.P0_05, | ||
| 37 | config, | 32 | config, |
| 38 | &mut rx_buffer, | 33 | &mut rx_buffer, |
| 39 | &mut tx_buffer, | 34 | &mut tx_buffer, |
| 40 | ); | 35 | ); |
| 41 | pin_mut!(u); | ||
| 42 | 36 | ||
| 43 | info!("uarte initialized!"); | 37 | info!("uarte initialized!"); |
| 44 | 38 | ||
