diff options
| author | Dario Nieuwenhuis <[email protected]> | 2021-08-03 22:08:13 +0200 |
|---|---|---|
| committer | Dario Nieuwenhuis <[email protected]> | 2021-08-05 19:14:09 +0200 |
| commit | 0ea6a2d8905a146c8899239fe52e739404f13e7e (patch) | |
| tree | 0fdc47c7558a062787afea6d1f6a7d0ce5a2f660 /examples/nrf/src/bin/raw_spawn.rs | |
| parent | a4c0ee6df7cd54a3b31524e2c6aaf2b15b61a4d2 (diff) | |
time: replace dyn clock/alarm with a global Driver trait
Diffstat (limited to 'examples/nrf/src/bin/raw_spawn.rs')
| -rw-r--r-- | examples/nrf/src/bin/raw_spawn.rs | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/examples/nrf/src/bin/raw_spawn.rs b/examples/nrf/src/bin/raw_spawn.rs index 78de7b100..326dd9aac 100644 --- a/examples/nrf/src/bin/raw_spawn.rs +++ b/examples/nrf/src/bin/raw_spawn.rs | |||
| @@ -7,13 +7,11 @@ use example_common::*; | |||
| 7 | 7 | ||
| 8 | use core::mem; | 8 | use core::mem; |
| 9 | use cortex_m_rt::entry; | 9 | use cortex_m_rt::entry; |
| 10 | use defmt::panic; | 10 | |
| 11 | use embassy::executor::raw::Task; | 11 | use embassy::executor::raw::Task; |
| 12 | use embassy::executor::Executor; | 12 | use embassy::executor::Executor; |
| 13 | use embassy::time::{Duration, Timer}; | 13 | use embassy::time::{Duration, Timer}; |
| 14 | use embassy::util::Forever; | 14 | use embassy::util::Forever; |
| 15 | use embassy_nrf::peripherals; | ||
| 16 | use embassy_nrf::{interrupt, rtc}; | ||
| 17 | 15 | ||
| 18 | async fn run1() { | 16 | async fn run1() { |
| 19 | loop { | 17 | loop { |
| @@ -29,23 +27,14 @@ async fn run2() { | |||
| 29 | } | 27 | } |
| 30 | } | 28 | } |
| 31 | 29 | ||
| 32 | static RTC: Forever<rtc::RTC<peripherals::RTC1>> = Forever::new(); | ||
| 33 | static ALARM: Forever<rtc::Alarm<peripherals::RTC1>> = Forever::new(); | ||
| 34 | static EXECUTOR: Forever<Executor> = Forever::new(); | 30 | static EXECUTOR: Forever<Executor> = Forever::new(); |
| 35 | 31 | ||
| 36 | #[entry] | 32 | #[entry] |
| 37 | fn main() -> ! { | 33 | fn main() -> ! { |
| 38 | info!("Hello World!"); | 34 | info!("Hello World!"); |
| 39 | 35 | ||
| 40 | let p = embassy_nrf::init(Default::default()); | 36 | let _p = embassy_nrf::init(Default::default()); |
| 41 | |||
| 42 | let rtc = RTC.put(rtc::RTC::new(p.RTC1, interrupt::take!(RTC1))); | ||
| 43 | rtc.start(); | ||
| 44 | unsafe { embassy::time::set_clock(rtc) }; | ||
| 45 | |||
| 46 | let alarm = ALARM.put(rtc.alarm0()); | ||
| 47 | let executor = EXECUTOR.put(Executor::new()); | 37 | let executor = EXECUTOR.put(Executor::new()); |
| 48 | executor.set_alarm(alarm); | ||
| 49 | 38 | ||
| 50 | let run1_task = Task::new(); | 39 | let run1_task = Task::new(); |
| 51 | let run2_task = Task::new(); | 40 | let run2_task = Task::new(); |
