Attribute Macro embassy_executor::main

#[main]
Expand description

Creates a new executor instance and declares an application entry point for Cortex-M spawning the corresponding function body as an async task.

The following restrictions apply:

  • The function must accept exactly 1 parameter, an embassy_executor::Spawner handle that it can use to spawn additional tasks.
  • The function must be declared async.
  • The function must not use generics.
  • Only a single main task may be declared.

§Examples

Spawning a task:

#[embassy_executor::main]
async fn main(_s: embassy_executor::Spawner) {
    // Function body
}