aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorDario Nieuwenhuis <[email protected]>2020-09-25 23:42:49 +0200
committerDario Nieuwenhuis <[email protected]>2020-09-25 23:42:49 +0200
commitf88f233e39f1edef04a51b888a47b9e231fc228f (patch)
treeccac7bf5f4934053ab37c9e70f14879405bf950c /examples
parent19a89b5c143205cc2a2d05b07cc4bffd15246e98 (diff)
Remove executor model (it's not a nice enough abstraction).
Diffstat (limited to 'examples')
-rw-r--r--examples/src/bin/rtc_async.rs11
1 files changed, 7 insertions, 4 deletions
diff --git a/examples/src/bin/rtc_async.rs b/examples/src/bin/rtc_async.rs
index a4149ef1e..30b181a93 100644
--- a/examples/src/bin/rtc_async.rs
+++ b/examples/src/bin/rtc_async.rs
@@ -8,7 +8,7 @@ use example_common::*;
8 8
9use core::mem::MaybeUninit; 9use core::mem::MaybeUninit;
10use cortex_m_rt::entry; 10use cortex_m_rt::entry;
11use embassy::executor::{task, Executor, WfeModel}; 11use embassy::executor::{task, Executor};
12use embassy::time::{Clock, Duration, Timer}; 12use embassy::time::{Clock, Duration, Timer};
13use embassy_nrf::pac; 13use embassy_nrf::pac;
14use embassy_nrf::rtc; 14use embassy_nrf::rtc;
@@ -31,7 +31,7 @@ async fn run2() {
31} 31}
32 32
33static mut RTC: MaybeUninit<rtc::RTC<pac::RTC1>> = MaybeUninit::uninit(); 33static mut RTC: MaybeUninit<rtc::RTC<pac::RTC1>> = MaybeUninit::uninit();
34static mut EXECUTOR: MaybeUninit<Executor<WfeModel, rtc::Alarm<pac::RTC1>>> = MaybeUninit::uninit(); 34static mut EXECUTOR: MaybeUninit<Executor<rtc::Alarm<pac::RTC1>>> = MaybeUninit::uninit();
35 35
36#[entry] 36#[entry]
37fn main() -> ! { 37fn main() -> ! {
@@ -55,7 +55,7 @@ fn main() -> ! {
55 55
56 let executor: &'static _ = unsafe { 56 let executor: &'static _ = unsafe {
57 let ptr = EXECUTOR.as_mut_ptr(); 57 let ptr = EXECUTOR.as_mut_ptr();
58 ptr.write(Executor::new(rtc.alarm0())); 58 ptr.write(Executor::new(rtc.alarm0(), cortex_m::asm::sev));
59 &*ptr 59 &*ptr
60 }; 60 };
61 61
@@ -63,6 +63,9 @@ fn main() -> ! {
63 executor.spawn(run1()).dewrap(); 63 executor.spawn(run1()).dewrap();
64 executor.spawn(run2()).dewrap(); 64 executor.spawn(run2()).dewrap();
65 65
66 executor.run() 66 loop {
67 executor.run();
68 cortex_m::asm::wfe();
69 }
67 } 70 }
68} 71}