#![no_std]
#![no_main]

use esp_backtrace as _;
use esp_hal::clock::CpuClock;
use esp_hal::gpio::{Level, Output};
use esp_hal::main;
use esp_hal::timer::timg::TimerGroup;
use esp_hal::timer::Timer;

#[main]
fn main() -> ! {
    esp_println::logger::init_logger_from_env();
    let config = esp_hal::Config::default().with_cpu_clock(CpuClock::max());
    let peripherals = esp_hal::init(config);

    let mut led = Output::new(peripherals.GPIO0, Level::Low);
    let timer_group = TimerGroup::new(peripherals.TIMG0);
    let timer_0 = timer_group.timer0;
    let mut start = timer_0.now();

    timer_0.start();

    loop {
        if timer_0.now().checked_duration_since(start).unwrap().to_secs() >= 1 {
            led.toggle();
            start = timer_0.now();
        }
    }
}
Loading
esp32-c3-devkitm-1