]> patrickod personal git archive - tincan.git/blob - rs-lorachat/src/main.rs
wip on getting this thing to do USB
[tincan.git] / rs-lorachat / src / main.rs
1 #![no_std]
2 #![no_main]
3
4 use panic_halt as _;
5
6 use bsp::hal;
7 use feather_m0 as bsp;
8
9 use bsp::entry;
10 use hal::clock::{GenericClockController};
11 use hal::delay::Delay;
12 use hal::pac::{CorePeripherals, Peripherals};
13 use hal::prelude::*;
14
15 #[entry]
16 fn main() -> ! {
17     let mut peripherals = Peripherals::take().unwrap();
18     let core = CorePeripherals::take().unwrap();
19     let mut clocks = GenericClockController::with_external_32kosc(
20         peripherals.GCLK,
21         &mut peripherals.PM,
22         &mut peripherals.SYSCTRL,
23         &mut peripherals.NVMCTRL,
24     );
25     let pins = bsp::Pins::new(peripherals.PORT);
26     let mut delay = Delay::new(core.SYST, &mut clocks);
27     let mut red_led = pins.d13.into_push_pull_output();
28
29
30     red_led.set_high().unwrap();
31     delay.delay_ms(500_u32);
32     red_led.set_low().unwrap();
33     delay.delay_ms(500_u32);
34     red_led.set_high().unwrap();
35
36     red_led.set_low().unwrap();
37     delay.delay_ms(500_u32);
38
39
40     loop {
41         delay.delay_ms(1_000_u32);
42         red_led.set_high().unwrap();
43         delay.delay_ms(1_000_u32);
44         red_led.set_low().unwrap();
45     }
46 }