aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorDario Nieuwenhuis <[email protected]>2022-03-10 01:05:33 +0100
committerDario Nieuwenhuis <[email protected]>2022-04-06 05:38:11 +0200
commit0320500f0f14d03aecfe3ee7482a5cf76ec8844c (patch)
tree0e4fa8dd6f1b6bd84eb2232ea4b8ba86f5e1c80c /examples
parent77ceced036d574c7d67259b85e1d61b96e82d0d3 (diff)
Working CDC-ACM device->host
Diffstat (limited to 'examples')
-rw-r--r--examples/nrf/Cargo.toml2
-rw-r--r--examples/nrf/src/bin/usb/main.rs18
2 files changed, 15 insertions, 5 deletions
diff --git a/examples/nrf/Cargo.toml b/examples/nrf/Cargo.toml
index fb846b3a9..59e5de026 100644
--- a/examples/nrf/Cargo.toml
+++ b/examples/nrf/Cargo.toml
@@ -1,6 +1,6 @@
1[package] 1[package]
2authors = ["Dario Nieuwenhuis <[email protected]>"] 2authors = ["Dario Nieuwenhuis <[email protected]>"]
3edition = "2018" 3edition = "2021"
4name = "embassy-nrf-examples" 4name = "embassy-nrf-examples"
5version = "0.1.0" 5version = "0.1.0"
6 6
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}