Fix example

This commit is contained in:
datdenkikniet 2023-04-17 07:43:37 +02:00
parent 55083fb3cc
commit 76d2d27def

View file

@ -103,13 +103,23 @@ mod app {
#[task(local = [i2c, led])] #[task(local = [i2c, led])]
async fn heartbeat(ctx: heartbeat::Context) { async fn heartbeat(ctx: heartbeat::Context) {
// Flicker the built-in LED // Loop forever.
_ = ctx.local.led.toggle(); //
// It is important to remember that tasks that loop
// forever should have an `await` somewhere in that loop.
//
// Without the await, the task will never yield back to
// the async executor, which means that no other lower or
// equal priority task will be able to run.
loop {
// Flicker the built-in LED
_ = ctx.local.led.toggle();
// Congrats, you can use your i2c and have access to it here, // Congrats, you can use your i2c and have access to it here,
// now to do something with it! // now to do something with it!
// Re-spawn this task after 1 second // Delay for 1 second
Timer::delay(1000.millis()).await; Timer::delay(1000.millis()).await;
}
} }
} }