aboutsummaryrefslogtreecommitdiff
path: root/examples/nrf/src
diff options
context:
space:
mode:
Diffstat (limited to 'examples/nrf/src')
-rw-r--r--examples/nrf/src/bin/usb/main.rs18
1 files changed, 14 insertions, 4 deletions
diff --git a/examples/nrf/src/bin/usb/main.rs b/examples/nrf/src/bin/usb/main.rs
index d175766bb..014ad5c6e 100644
--- a/examples/nrf/src/bin/usb/main.rs
+++ b/examples/nrf/src/bin/usb/main.rs
@@ -10,13 +10,14 @@ mod cdc_acm;
10use core::mem; 10use core::mem;
11use defmt::*; 11use defmt::*;
12use embassy::executor::Spawner; 12use embassy::executor::Spawner;
13use embassy::time::{Duration, Timer};
13use embassy_nrf::interrupt; 14use embassy_nrf::interrupt;
14use embassy_nrf::pac; 15use embassy_nrf::pac;
15use embassy_nrf::usb::{self, Driver}; 16use embassy_nrf::usb::Driver;
16use embassy_nrf::Peripherals; 17use embassy_nrf::Peripherals;
17use embassy_usb::driver::EndpointOut; 18use embassy_usb::driver::{EndpointIn, EndpointOut};
18use embassy_usb::{Config, UsbDeviceBuilder}; 19use embassy_usb::{Config, UsbDeviceBuilder};
19use futures::future::{join, select}; 20use futures::future::join3;
20 21
21use crate::cdc_acm::CdcAcmClass; 22use crate::cdc_acm::CdcAcmClass;
22 23
@@ -61,6 +62,15 @@ async fn main(_spawner: Spawner, p: Peripherals) {
61 info!("data: {:x}", data); 62 info!("data: {:x}", data);
62 } 63 }
63 }; 64 };
65 let fut3 = async {
66 loop {
67 info!("writing...");
68 class.write_ep.write(b"Hello World!\r\n").await.unwrap();
69 info!("written");
70
71 Timer::after(Duration::from_secs(1)).await;
72 }
73 };
64 74
65 join(fut1, fut2).await; 75 join3(fut1, fut2, fut3).await;
66} 76}