aboutsummaryrefslogtreecommitdiff
path: root/examples/stm32wl/src
diff options
context:
space:
mode:
authorDion Dokter <[email protected]>2024-08-05 14:43:57 +0200
committerDion Dokter <[email protected]>2024-08-05 14:43:57 +0200
commit5884576b88e7ec7e26ec1c9b9f61e253cb0e5ea6 (patch)
tree72bb005130582742bc10f26e7eedbf635436831b /examples/stm32wl/src
parent705a8fc38c0e5ef9cbd6bfaf95bca70fac5d9f81 (diff)
Updated WL examples to use new API
Diffstat (limited to 'examples/stm32wl/src')
-rw-r--r--examples/stm32wl/src/bin/blinky.rs12
-rw-r--r--examples/stm32wl/src/bin/button.rs9
-rw-r--r--examples/stm32wl/src/bin/button_exti.rs9
-rw-r--r--examples/stm32wl/src/bin/flash.rs9
-rw-r--r--examples/stm32wl/src/bin/random.rs9
-rw-r--r--examples/stm32wl/src/bin/rtc.rs9
-rw-r--r--examples/stm32wl/src/bin/uart_async.rs9
7 files changed, 52 insertions, 14 deletions
diff --git a/examples/stm32wl/src/bin/blinky.rs b/examples/stm32wl/src/bin/blinky.rs
index 347bd093f..048ce9175 100644
--- a/examples/stm32wl/src/bin/blinky.rs
+++ b/examples/stm32wl/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 = ".shared_data"]
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_primary(Default::default(), &SHARED_DATA);
13 info!("Hello World!"); 21 info!("Hello World!");
14 22
15 let mut led = Output::new(p.PB15, Level::High, Speed::Low); 23 let mut led = Output::new(p.PB15, Level::High, Speed::Low);
diff --git a/examples/stm32wl/src/bin/button.rs b/examples/stm32wl/src/bin/button.rs
index eccd211e2..92884da1f 100644
--- a/examples/stm32wl/src/bin/button.rs
+++ b/examples/stm32wl/src/bin/button.rs
@@ -1,16 +1,21 @@
1#![no_std] 1#![no_std]
2#![no_main] 2#![no_main]
3 3
4use core::mem::MaybeUninit;
5
4use cortex_m_rt::entry; 6use cortex_m_rt::entry;
5use defmt::*; 7use defmt::*;
6use embassy_stm32::gpio::{Input, Level, Output, Pull, Speed}; 8use embassy_stm32::{gpio::{Input, Level, Output, Pull, Speed}, SharedData};
7use {defmt_rtt as _, panic_probe as _}; 9use {defmt_rtt as _, panic_probe as _};
8 10
11#[link_section = ".shared_data"]
12static SHARED_DATA: MaybeUninit<SharedData> = MaybeUninit::uninit();
13
9#[entry] 14#[entry]
10fn main() -> ! { 15fn main() -> ! {
11 info!("Hello World!"); 16 info!("Hello World!");
12 17
13 let p = embassy_stm32::init(Default::default()); 18 let p = embassy_stm32::init_primary(Default::default(), &SHARED_DATA);
14 19
15 let button = Input::new(p.PA0, Pull::Up); 20 let button = Input::new(p.PA0, Pull::Up);
16 let mut led1 = Output::new(p.PB15, Level::High, Speed::Low); 21 let mut led1 = Output::new(p.PB15, Level::High, Speed::Low);
diff --git a/examples/stm32wl/src/bin/button_exti.rs b/examples/stm32wl/src/bin/button_exti.rs
index 27d5330bd..d1e443bf8 100644
--- a/examples/stm32wl/src/bin/button_exti.rs
+++ b/examples/stm32wl/src/bin/button_exti.rs
@@ -1,15 +1,20 @@
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::exti::ExtiInput;
7use embassy_stm32::gpio::Pull; 8use embassy_stm32::gpio::Pull;
9use embassy_stm32::{exti::ExtiInput, SharedData};
8use {defmt_rtt as _, panic_probe as _}; 10use {defmt_rtt as _, panic_probe as _};
9 11
12#[link_section = ".shared_data"]
13static SHARED_DATA: MaybeUninit<SharedData> = MaybeUninit::uninit();
14
10#[embassy_executor::main] 15#[embassy_executor::main]
11async fn main(_spawner: Spawner) { 16async fn main(_spawner: Spawner) {
12 let p = embassy_stm32::init(Default::default()); 17 let p = embassy_stm32::init_primary(Default::default(), &SHARED_DATA);
13 info!("Hello World!"); 18 info!("Hello World!");
14 19
15 let mut button = ExtiInput::new(p.PA0, p.EXTI0, Pull::Up); 20 let mut button = ExtiInput::new(p.PA0, p.EXTI0, Pull::Up);
diff --git a/examples/stm32wl/src/bin/flash.rs b/examples/stm32wl/src/bin/flash.rs
index 0b7417c01..e7d90dc19 100644
--- a/examples/stm32wl/src/bin/flash.rs
+++ b/examples/stm32wl/src/bin/flash.rs
@@ -1,14 +1,19 @@
1#![no_std] 1#![no_std]
2#![no_main] 2#![no_main]
3 3
4use core::mem::MaybeUninit;
5
4use defmt::{info, unwrap}; 6use defmt::{info, unwrap};
5use embassy_executor::Spawner; 7use embassy_executor::Spawner;
6use embassy_stm32::flash::Flash; 8use embassy_stm32::{flash::Flash, SharedData};
7use {defmt_rtt as _, panic_probe as _}; 9use {defmt_rtt as _, panic_probe as _};
8 10
11#[link_section = ".shared_data"]
12static SHARED_DATA: MaybeUninit<SharedData> = MaybeUninit::uninit();
13
9#[embassy_executor::main] 14#[embassy_executor::main]
10async fn main(_spawner: Spawner) { 15async fn main(_spawner: Spawner) {
11 let p = embassy_stm32::init(Default::default()); 16 let p = embassy_stm32::init_primary(Default::default(), &SHARED_DATA);
12 info!("Hello Flash!"); 17 info!("Hello Flash!");
13 18
14 const ADDR: u32 = 0x36000; 19 const ADDR: u32 = 0x36000;
diff --git a/examples/stm32wl/src/bin/random.rs b/examples/stm32wl/src/bin/random.rs
index 8e9fe02b2..df2ed0054 100644
--- a/examples/stm32wl/src/bin/random.rs
+++ b/examples/stm32wl/src/bin/random.rs
@@ -1,17 +1,22 @@
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::rng::{self, Rng}; 8use embassy_stm32::rng::{self, Rng};
7use embassy_stm32::time::Hertz; 9use embassy_stm32::time::Hertz;
8use embassy_stm32::{bind_interrupts, peripherals}; 10use embassy_stm32::{bind_interrupts, peripherals, SharedData};
9use {defmt_rtt as _, panic_probe as _}; 11use {defmt_rtt as _, panic_probe as _};
10 12
11bind_interrupts!(struct Irqs{ 13bind_interrupts!(struct Irqs{
12 RNG => rng::InterruptHandler<peripherals::RNG>; 14 RNG => rng::InterruptHandler<peripherals::RNG>;
13}); 15});
14 16
17#[link_section = ".shared_data"]
18static SHARED_DATA: MaybeUninit<SharedData> = MaybeUninit::uninit();
19
15#[embassy_executor::main] 20#[embassy_executor::main]
16async fn main(_spawner: Spawner) { 21async fn main(_spawner: Spawner) {
17 let mut config = embassy_stm32::Config::default(); 22 let mut config = embassy_stm32::Config::default();
@@ -32,7 +37,7 @@ async fn main(_spawner: Spawner) {
32 divr: Some(PllRDiv::DIV2), // sysclk 48Mhz clock (32 / 2 * 6 / 2) 37 divr: Some(PllRDiv::DIV2), // sysclk 48Mhz clock (32 / 2 * 6 / 2)
33 }); 38 });
34 } 39 }
35 let p = embassy_stm32::init(config); 40 let p = embassy_stm32::init_primary(config, &SHARED_DATA);
36 41
37 info!("Hello World!"); 42 info!("Hello World!");
38 43
diff --git a/examples/stm32wl/src/bin/rtc.rs b/examples/stm32wl/src/bin/rtc.rs
index cf7d6d220..69a9ddc4c 100644
--- a/examples/stm32wl/src/bin/rtc.rs
+++ b/examples/stm32wl/src/bin/rtc.rs
@@ -1,15 +1,20 @@
1#![no_std] 1#![no_std]
2#![no_main] 2#![no_main]
3 3
4use core::mem::MaybeUninit;
5
4use chrono::{NaiveDate, NaiveDateTime}; 6use chrono::{NaiveDate, NaiveDateTime};
5use defmt::*; 7use defmt::*;
6use embassy_executor::Spawner; 8use embassy_executor::Spawner;
7use embassy_stm32::rtc::{Rtc, RtcConfig}; 9use embassy_stm32::rtc::{Rtc, RtcConfig};
8use embassy_stm32::time::Hertz; 10use embassy_stm32::time::Hertz;
9use embassy_stm32::Config; 11use embassy_stm32::{Config, SharedData};
10use embassy_time::Timer; 12use embassy_time::Timer;
11use {defmt_rtt as _, panic_probe as _}; 13use {defmt_rtt as _, panic_probe as _};
12 14
15#[link_section = ".shared_data"]
16static SHARED_DATA: MaybeUninit<SharedData> = MaybeUninit::uninit();
17
13#[embassy_executor::main] 18#[embassy_executor::main]
14async fn main(_spawner: Spawner) { 19async fn main(_spawner: Spawner) {
15 let mut config = Config::default(); 20 let mut config = Config::default();
@@ -31,7 +36,7 @@ async fn main(_spawner: Spawner) {
31 divr: Some(PllRDiv::DIV2), // sysclk 48Mhz clock (32 / 2 * 6 / 2) 36 divr: Some(PllRDiv::DIV2), // sysclk 48Mhz clock (32 / 2 * 6 / 2)
32 }); 37 });
33 } 38 }
34 let p = embassy_stm32::init(config); 39 let p = embassy_stm32::init_primary(config, &SHARED_DATA);
35 info!("Hello World!"); 40 info!("Hello World!");
36 41
37 let now = NaiveDate::from_ymd_opt(2020, 5, 15) 42 let now = NaiveDate::from_ymd_opt(2020, 5, 15)
diff --git a/examples/stm32wl/src/bin/uart_async.rs b/examples/stm32wl/src/bin/uart_async.rs
index 3637243a0..ece9b9201 100644
--- a/examples/stm32wl/src/bin/uart_async.rs
+++ b/examples/stm32wl/src/bin/uart_async.rs
@@ -1,10 +1,12 @@
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::usart::{Config, InterruptHandler, Uart}; 8use embassy_stm32::usart::{Config, InterruptHandler, Uart};
7use embassy_stm32::{bind_interrupts, peripherals}; 9use embassy_stm32::{bind_interrupts, peripherals, SharedData};
8use {defmt_rtt as _, panic_probe as _}; 10use {defmt_rtt as _, panic_probe as _};
9 11
10bind_interrupts!(struct Irqs{ 12bind_interrupts!(struct Irqs{
@@ -12,6 +14,9 @@ bind_interrupts!(struct Irqs{
12 LPUART1 => InterruptHandler<peripherals::LPUART1>; 14 LPUART1 => InterruptHandler<peripherals::LPUART1>;
13}); 15});
14 16
17#[link_section = ".shared_data"]
18static SHARED_DATA: MaybeUninit<SharedData> = MaybeUninit::uninit();
19
15/* 20/*
16Pass Incoming data from LPUART1 to USART1 21Pass Incoming data from LPUART1 to USART1
17Example is written for the LoRa-E5 mini v1.0, 22Example is written for the LoRa-E5 mini v1.0,
@@ -21,7 +26,7 @@ but can be surely changed for your needs.
21async fn main(_spawner: Spawner) { 26async fn main(_spawner: Spawner) {
22 let mut config = embassy_stm32::Config::default(); 27 let mut config = embassy_stm32::Config::default();
23 config.rcc.sys = embassy_stm32::rcc::Sysclk::HSE; 28 config.rcc.sys = embassy_stm32::rcc::Sysclk::HSE;
24 let p = embassy_stm32::init(config); 29 let p = embassy_stm32::init_primary(config, &SHARED_DATA);
25 30
26 defmt::info!("Starting system"); 31 defmt::info!("Starting system");
27 32