diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 10 |
1 files changed, 6 insertions, 4 deletions
| @@ -16,7 +16,7 @@ Rust's <a href="https://rust-lang.github.io/async-book/">async/await</a> allows | |||
| 16 | - <a href="https://docs.embassy.dev/embassy-nrf/">embassy-nrf</a>, for the Nordic Semiconductor nRF52, nRF53, nRF91 series. | 16 | - <a href="https://docs.embassy.dev/embassy-nrf/">embassy-nrf</a>, for the Nordic Semiconductor nRF52, nRF53, nRF91 series. |
| 17 | 17 | ||
| 18 | - **Time that Just Works** - | 18 | - **Time that Just Works** - |
| 19 | No more messing with hardware timers. <a href="https://docs.embassy.dev/embassy/git/thumbv7em-none-eabihf/time/index.html">embassy_executor::time</a> provides Instant, Duration and Timer types that are globally available and never overflow. | 19 | No more messing with hardware timers. <a href="https://docs.embassy.dev/embassy-time">embassy_time</a> provides Instant, Duration and Timer types that are globally available and never overflow. |
| 20 | 20 | ||
| 21 | - **Real-time ready** - | 21 | - **Real-time ready** - |
| 22 | Tasks on the same async executor run cooperatively, but you can create multiple executors with different priorities, so that higher priority tasks preempt lower priority ones. See the <a href="https://github.com/embassy-rs/embassy/blob/master/examples/nrf/src/bin/multiprio.rs">example</a>. | 22 | Tasks on the same async executor run cooperatively, but you can create multiple executors with different priorities, so that higher priority tasks preempt lower priority ones. See the <a href="https://github.com/embassy-rs/embassy/blob/master/examples/nrf/src/bin/multiprio.rs">example</a>. |
| @@ -44,8 +44,8 @@ The <a href="https://github.com/embassy-rs/nrf-softdevice">nrf-softdevice</a> cr | |||
| 44 | 44 | ||
| 45 | ```rust,ignore | 45 | ```rust,ignore |
| 46 | use defmt::info; | 46 | use defmt::info; |
| 47 | use embassy_executor::executor::Spawner; | 47 | use embassy_executor::Spawner; |
| 48 | use embassy_executor::time::{Duration, Timer}; | 48 | use embassy_time::{Duration, Timer}; |
| 49 | use embassy_nrf::gpio::{AnyPin, Input, Level, Output, OutputDrive, Pin, Pull}; | 49 | use embassy_nrf::gpio::{AnyPin, Input, Level, Output, OutputDrive, Pin, Pull}; |
| 50 | use embassy_nrf::Peripherals; | 50 | use embassy_nrf::Peripherals; |
| 51 | 51 | ||
| @@ -65,7 +65,9 @@ async fn blink(pin: AnyPin) { | |||
| 65 | 65 | ||
| 66 | // Main is itself an async task as well. | 66 | // Main is itself an async task as well. |
| 67 | #[embassy_executor::main] | 67 | #[embassy_executor::main] |
| 68 | async fn main(spawner: Spawner, p: Peripherals) { | 68 | async fn main(spawner: Spawner) { |
| 69 | let p = embassy_nrf::init(Default::default()); | ||
| 70 | |||
| 69 | // Spawned tasks run in the background, concurrently. | 71 | // Spawned tasks run in the background, concurrently. |
| 70 | spawner.spawn(blink(p.P0_13.degrade())).unwrap(); | 72 | spawner.spawn(blink(p.P0_13.degrade())).unwrap(); |
| 71 | 73 | ||
