From a5c99f403710097a90015c8c7ecdb9c76c656a35 Mon Sep 17 00:00:00 2001 From: cscherr Date: Wed, 30 Apr 2025 14:52:53 +0200 Subject: [PATCH] feat: blinky external --- examples/blinky-external.rs | 46 +++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100755 examples/blinky-external.rs diff --git a/examples/blinky-external.rs b/examples/blinky-external.rs new file mode 100755 index 0000000..f76ced6 --- /dev/null +++ b/examples/blinky-external.rs @@ -0,0 +1,46 @@ +#![no_main] +#![no_std] + +use defmt_rtt as _; // global logger +// +use panic_probe as _; +use cortex_m_rt::entry; +use hal::{pac, prelude::*, rcc::Config}; + +#[entry] +fn main() -> ! { + let dp = pac::Peripherals::take().unwrap(); + let cp = cortex_m::Peripherals::take().unwrap(); + + let mut rcc = dp.RCC.freeze(Config::hsi16()); + + let gpioa = dp.GPIOA.split(&mut rcc); + let gpiob = dp.GPIOB.split(&mut rcc); + + let mut builtin_led = gpioa.pa5.into_push_pull_output(); + let mut led0 = gpiob.pb5.into_push_pull_output(); // D4 + let mut led1 = gpiob.pb4.into_push_pull_output(); // D5 + + let mut delay = cp.SYST.delay(rcc.clocks); + + builtin_led.set_high().unwrap(); + led0.set_high().unwrap(); + led1.set_high().unwrap(); + + loop { + builtin_led.set_high().unwrap(); + led0.set_low().unwrap(); + led1.set_low().unwrap(); + delay.delay_ms(100_u16); + + led0.set_high().unwrap(); + delay.delay_ms(100_u16); + + builtin_led.set_low().unwrap(); + delay.delay_ms(100_u16); + + led0.set_low().unwrap(); + led1.set_high().unwrap(); + delay.delay_ms(100_u16); + } +}