Add a timer-driven task

This commit is contained in:
Dániel Buga 2024-11-27 00:15:07 +01:00
parent 05303d1e37
commit fff6bcb917
No known key found for this signature in database
3 changed files with 16 additions and 0 deletions

View File

@ -90,6 +90,9 @@ This will use software-interrupt 3 which isn't available for anything else to wa
Priority::min(),
));
unsafe {
self.inner.initialize();
}
init(self.inner.spawner());
#[cfg(low_power_wait)]

View File

@ -35,3 +35,8 @@ debug = 2
debug-assertions = true
lto = "fat"
codegen-units = 1
[patch.crates-io]
embassy-executor = { path = "C:/_Hobby/CardIo/embassy/embassy-executor" }
embassy-time = { path = "C:/_Hobby/CardIo/embassy/embassy-time" }
embassy-time-driver = { path = "C:/_Hobby/CardIo/embassy/embassy-time-driver" }

View File

@ -54,6 +54,13 @@ impl Future for Task1 {
static TASK1: TaskStorage<Task1> = TaskStorage::new();
#[embassy_executor::task]
async fn task2() {
loop {
embassy_time::Timer::after(embassy_time::Duration::from_millis(1)).await;
}
}
#[esp_hal_embassy::main]
async fn main(spawner: Spawner) {
let config = esp_hal::Config::default().with_cpu_clock(CpuClock::max());
@ -63,6 +70,7 @@ async fn main(spawner: Spawner) {
println!("Embassy initialized!");
spawner.spawn(TASK1.spawn(|| Task1 {})).unwrap();
spawner.spawn(task2()).unwrap();
println!("Starting test");