aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenrik Berg <[email protected]>2023-06-22 22:37:24 +0200
committerHenrik Berg <[email protected]>2023-07-12 14:22:48 +0200
commit55a5e9b3a51b537b7de80221d501be423af43303 (patch)
tree2b2df2eb15f654f71126869988e6efe3af2613fc
parentd8c7c3fc4be377491f5073dff3f884d7af106c57 (diff)
RP: Add RTC example to rp2040.
-rw-r--r--examples/rp/src/bin/rtc.rs33
1 files changed, 33 insertions, 0 deletions
diff --git a/examples/rp/src/bin/rtc.rs b/examples/rp/src/bin/rtc.rs
new file mode 100644
index 000000000..a49c8f627
--- /dev/null
+++ b/examples/rp/src/bin/rtc.rs
@@ -0,0 +1,33 @@
1#![no_std]
2#![no_main]
3#![feature(type_alias_impl_trait)]
4
5use defmt::*;
6use embassy_executor::Spawner;
7use embassy_rp::rtc::{DateTime, DayOfWeek, RealTimeClock};
8use embassy_time::{Duration, Timer};
9use {defmt_rtt as _, panic_probe as _};
10
11#[embassy_executor::main]
12async fn main(_spawner: Spawner) {
13 let p = embassy_rp::init(Default::default());
14 info!("Hello World!");
15
16 let now = DateTime {
17 year: 2020,
18 month: 5,
19 day: 15,
20 day_of_week: DayOfWeek::Monday,
21 hour: 10,
22 minute: 30,
23 second: 50,
24 };
25
26 let rtc_result = RealTimeClock::new(p.RTC, now);
27 if let Ok(rtc) = rtc_result {
28 // In reality the delay would be much longer
29 Timer::after(Duration::from_millis(20000)).await;
30
31 let _then: DateTime = rtc.now().unwrap();
32 }
33}