aboutsummaryrefslogtreecommitdiff
path: root/examples/stm32h755cm4/src/bin
diff options
context:
space:
mode:
authorDion Dokter <[email protected]>2024-07-08 16:54:06 +0200
committerDion Dokter <[email protected]>2024-07-08 16:54:06 +0200
commit203297b56912c05d2dd6a009ffeb433fb2ffbea6 (patch)
treefa1708215925ad861d68dc8454069c11ae5c861c /examples/stm32h755cm4/src/bin
parentb1ea90a87e5ce6b16bbc155ad30d6d3473a998bb (diff)
Make clocks repr C.
Add shared data. Modify freq functions to use shared data. Modify examples to use new init/
Diffstat (limited to 'examples/stm32h755cm4/src/bin')
-rw-r--r--examples/stm32h755cm4/src/bin/blinky.rs16
1 files changed, 12 insertions, 4 deletions
diff --git a/examples/stm32h755cm4/src/bin/blinky.rs b/examples/stm32h755cm4/src/bin/blinky.rs
index 765be5ba1..52db326b0 100644
--- a/examples/stm32h755cm4/src/bin/blinky.rs
+++ b/examples/stm32h755cm4/src/bin/blinky.rs
@@ -1,15 +1,23 @@
1#![no_std] 1#![no_std]
2#![no_main] 2#![no_main]
3 3
4use core::mem::MaybeUninit;
5
4use defmt::*; 6use defmt::*;
5use embassy_executor::Spawner; 7use embassy_executor::Spawner;
6use embassy_stm32::gpio::{Level, Output, Speed}; 8use embassy_stm32::{
9 gpio::{Level, Output, Speed},
10 SharedData,
11};
7use embassy_time::Timer; 12use embassy_time::Timer;
8use {defmt_rtt as _, panic_probe as _}; 13use {defmt_rtt as _, panic_probe as _};
9 14
15#[link_section = ".ram_d3"]
16static SHARED_DATA: MaybeUninit<SharedData> = MaybeUninit::uninit();
17
10#[embassy_executor::main] 18#[embassy_executor::main]
11async fn main(_spawner: Spawner) { 19async fn main(_spawner: Spawner) {
12 let p = embassy_stm32::init(Default::default()); 20 let p = embassy_stm32::init_secondary(&SHARED_DATA);
13 info!("Hello World!"); 21 info!("Hello World!");
14 22
15 let mut led = Output::new(p.PE1, Level::High, Speed::Low); 23 let mut led = Output::new(p.PE1, Level::High, Speed::Low);
@@ -17,10 +25,10 @@ async fn main(_spawner: Spawner) {
17 loop { 25 loop {
18 info!("high"); 26 info!("high");
19 led.set_high(); 27 led.set_high();
20 Timer::after_millis(500).await; 28 Timer::after_millis(250).await;
21 29
22 info!("low"); 30 info!("low");
23 led.set_low(); 31 led.set_low();
24 Timer::after_millis(500).await; 32 Timer::after_millis(250).await;
25 } 33 }
26} 34}