#![no_std]
#![no_main]
mod gpio;
mod lock;
mod timer;
use timer::Smartdelay;
use esp_hal::{
clock::CpuClock,
main,
};
use esp_backtrace as _;
use log::info;
#[main]
fn main() -> ! {
// let clocks = esp_hal::Config::default().with_cpu_clock(CpuClock::max());
// let peripherals = esp_hal::init(clocks);
// let io = Io::new(peripherals.IO_MUX);
let delay = Smartdelay::setup_delay();
let mut Smart_delay = Smartdelay::new(delay);
let mut led_pins = gpio::setup_display_pins();
let mut button_pins = gpio::setup_Unlock_Button();
esp_println::logger::init_logger_from_env();
let mut lock = lock::Smartlock::new(&mut led_pins, &mut button_pins);
info!("Lock is online");
loop {
lock.lock(&mut Smart_delay);
}
}