1#![no_main]
2#![no_std]
3
4use nrf52840_hal as hal;
5use rtt_target::{rprintln, rtt_init_print};
6use particle_argon::{ModeButton, Led};
7
8#[panic_handler] fn panic(_: &core::panic::PanicInfo) -> ! {
10 loop {
11 cortex_m::asm::bkpt();
12 }
13}
14
15#[cortex_m_rt::entry]
16fn main() -> ! {
17 rtt_init_print!();
18 let p = hal::pac::Peripherals::take().unwrap();
19 let port0 = hal::gpio::p0::Parts::new(p.P0);
20 let port1 = hal::gpio::p1::Parts::new(p.P1);
21 let button = ModeButton::new(port0.p0_11);
22 let mut led = Led::new(port1.p1_12);
23
24 rprintln!("Blinky button demo starting");
25 loop {
26 if button.is_held_down() {
27 led.on();
28 } else {
29 led.off();
30 }
31 }
32}