aboutsummaryrefslogtreecommitdiff
path: root/docs/modules/ROOT/examples
diff options
context:
space:
mode:
authorUlf Lilleengen <[email protected]>2021-12-10 12:46:41 +0100
committerUlf Lilleengen <[email protected]>2021-12-10 12:46:41 +0100
commite5d4d0952b78ef343f14205f5ebd3f1d7804f9e8 (patch)
tree2286467ce8c28f8eb7858d4fd33863ac52b81f65 /docs/modules/ROOT/examples
parent9b01eed1956421dd7c0ad644f77e14a05ab92923 (diff)
Add doc-specific example and add it to CI
Diffstat (limited to 'docs/modules/ROOT/examples')
-rw-r--r--docs/modules/ROOT/examples/basic/.cargo/config.toml6
-rw-r--r--docs/modules/ROOT/examples/basic/Cargo.toml18
-rw-r--r--docs/modules/ROOT/examples/basic/src/main.rs30
3 files changed, 54 insertions, 0 deletions
diff --git a/docs/modules/ROOT/examples/basic/.cargo/config.toml b/docs/modules/ROOT/examples/basic/.cargo/config.toml
new file mode 100644
index 000000000..c75b5c539
--- /dev/null
+++ b/docs/modules/ROOT/examples/basic/.cargo/config.toml
@@ -0,0 +1,6 @@
1[target.'cfg(all(target_arch = "arm", target_os = "none"))']
2# replace nRF82840_xxAA with your chip as listed in `probe-run --list-chips`
3runner = "probe-run --chip nRF52840_xxAA"
4
5[build]
6target = "thumbv7em-none-eabi"
diff --git a/docs/modules/ROOT/examples/basic/Cargo.toml b/docs/modules/ROOT/examples/basic/Cargo.toml
new file mode 100644
index 000000000..a683a28bf
--- /dev/null
+++ b/docs/modules/ROOT/examples/basic/Cargo.toml
@@ -0,0 +1,18 @@
1[package]
2authors = ["Dario Nieuwenhuis <[email protected]>"]
3edition = "2018"
4name = "embassy-basic-example"
5version = "0.1.0"
6
7[dependencies]
8embassy = { version = "0.1.0", path = "../../../../embassy", features = ["defmt"] }
9embassy-traits = { version = "0.1.0", path = "../../../../embassy-traits", features = ["defmt"] }
10embassy-nrf = { version = "0.1.0", path = "../../../../embassy-nrf", features = ["defmt", "nrf52840", "time-driver-rtc1", "gpiote"] }
11
12defmt = "0.3"
13defmt-rtt = "0.3"
14
15cortex-m = "0.7.3"
16cortex-m-rt = "0.7.0"
17embedded-hal = "0.2.6"
18panic-probe = { version = "0.3", features = ["print-defmt"] }
diff --git a/docs/modules/ROOT/examples/basic/src/main.rs b/docs/modules/ROOT/examples/basic/src/main.rs
new file mode 100644
index 000000000..0152b40bb
--- /dev/null
+++ b/docs/modules/ROOT/examples/basic/src/main.rs
@@ -0,0 +1,30 @@
1#![no_std]
2#![no_main]
3#![feature(type_alias_impl_trait)]
4
5use defmt_rtt as _; // global logger
6use panic_probe as _;
7
8use defmt::*;
9
10use embassy::executor::Spawner;
11use embassy::time::{Duration, Timer};
12use embassy_nrf::gpio::{Level, Output, OutputDrive};
13use embassy_nrf::Peripherals;
14use embedded_hal::digital::v2::OutputPin;
15
16#[embassy::task]
17async fn blinker(mut led: Output<'static, P0_13>, interval: Duration) {
18 loop {
19 unwrap!(led.set_high());
20 Timer::after(interval).await;
21 unwrap!(led.set_low());
22 Timer::after(interval).await;
23 }
24}
25
26#[embassy::main]
27async fn main(spawner: Spawner, p: Peripherals) {
28 let led = Output::new(p.P0_13, Level::Low, OutputDrive::Standard);
29 unwrap!(spawner.spawn(blinker(led, Duration::from_millis(300))));
30}