diff options
Diffstat (limited to 'examples/stm32h5/src/bin/stop.rs')
| -rw-r--r-- | examples/stm32h5/src/bin/stop.rs | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/examples/stm32h5/src/bin/stop.rs b/examples/stm32h5/src/bin/stop.rs index 3c4f49f64..8d5456b80 100644 --- a/examples/stm32h5/src/bin/stop.rs +++ b/examples/stm32h5/src/bin/stop.rs | |||
| @@ -7,22 +7,12 @@ | |||
| 7 | use defmt::*; | 7 | use defmt::*; |
| 8 | use embassy_executor::Spawner; | 8 | use embassy_executor::Spawner; |
| 9 | use embassy_stm32::gpio::{AnyPin, Level, Output, Speed}; | 9 | use embassy_stm32::gpio::{AnyPin, Level, Output, Speed}; |
| 10 | use embassy_stm32::low_power::Executor; | ||
| 11 | use embassy_stm32::rcc::{HSIPrescaler, LsConfig}; | 10 | use embassy_stm32::rcc::{HSIPrescaler, LsConfig}; |
| 12 | use embassy_stm32::rtc::{Rtc, RtcConfig}; | 11 | use embassy_stm32::{Config, Peri, low_power}; |
| 13 | use embassy_stm32::{Config, Peri}; | ||
| 14 | use embassy_time::Timer; | 12 | use embassy_time::Timer; |
| 15 | use static_cell::StaticCell; | ||
| 16 | use {defmt_rtt as _, panic_probe as _}; | 13 | use {defmt_rtt as _, panic_probe as _}; |
| 17 | 14 | ||
| 18 | #[cortex_m_rt::entry] | 15 | #[embassy_executor::main(executor = "low_power::Executor")] |
| 19 | fn main() -> ! { | ||
| 20 | Executor::take().run(|spawner| { | ||
| 21 | spawner.spawn(unwrap!(async_main(spawner))); | ||
| 22 | }) | ||
| 23 | } | ||
| 24 | |||
| 25 | #[embassy_executor::task] | ||
| 26 | async fn async_main(spawner: Spawner) { | 16 | async fn async_main(spawner: Spawner) { |
| 27 | defmt::info!("Program Start"); | 17 | defmt::info!("Program Start"); |
| 28 | 18 | ||
| @@ -37,12 +27,6 @@ async fn async_main(spawner: Spawner) { | |||
| 37 | // config.enable_debug_during_sleep = false; | 27 | // config.enable_debug_during_sleep = false; |
| 38 | let p = embassy_stm32::init(config); | 28 | let p = embassy_stm32::init(config); |
| 39 | 29 | ||
| 40 | // give the RTC to the executor... | ||
| 41 | let rtc = Rtc::new(p.RTC, RtcConfig::default()); | ||
| 42 | static RTC: StaticCell<Rtc> = StaticCell::new(); | ||
| 43 | let rtc = RTC.init(rtc); | ||
| 44 | embassy_stm32::low_power::stop_with_rtc(rtc); | ||
| 45 | |||
| 46 | spawner.spawn(unwrap!(blinky(p.PB4.into()))); | 30 | spawner.spawn(unwrap!(blinky(p.PB4.into()))); |
| 47 | spawner.spawn(unwrap!(timeout())); | 31 | spawner.spawn(unwrap!(timeout())); |
| 48 | } | 32 | } |
