aboutsummaryrefslogtreecommitdiff
path: root/examples/stm32wl/src/bin/button.rs
diff options
context:
space:
mode:
Diffstat (limited to 'examples/stm32wl/src/bin/button.rs')
-rw-r--r--examples/stm32wl/src/bin/button.rs31
1 files changed, 31 insertions, 0 deletions
diff --git a/examples/stm32wl/src/bin/button.rs b/examples/stm32wl/src/bin/button.rs
new file mode 100644
index 000000000..f80b9ab4f
--- /dev/null
+++ b/examples/stm32wl/src/bin/button.rs
@@ -0,0 +1,31 @@
1#![no_std]
2#![no_main]
3#![feature(type_alias_impl_trait)]
4
5use defmt::*;
6use defmt_rtt as _; // global logger
7use embassy_stm32::gpio::{Input, Level, Output, Pull, Speed};
8use panic_probe as _;
9
10use cortex_m_rt::entry;
11
12#[entry]
13fn main() -> ! {
14 info!("Hello World!");
15
16 let p = embassy_stm32::init(Default::default());
17
18 let button = Input::new(p.PA0, Pull::Up);
19 let mut led1 = Output::new(p.PB15, Level::High, Speed::Low);
20 let mut led2 = Output::new(p.PB9, Level::High, Speed::Low);
21
22 loop {
23 if button.is_high() {
24 led1.set_high();
25 led2.set_low();
26 } else {
27 led1.set_low();
28 led2.set_high();
29 }
30 }
31}