Crate esp_radio_rtos_driver

Crate esp_radio_rtos_driver 

Source
Expand description

§esp-radio task scheduler interface.

esp-radio requires a task scheduler to operate. This crate allows the task scheduler to be tailored to specific software platforms (such as ArielOS). Trying to use multiple scheduler crates in a firmware project will not build.

If you want to use esp-radio without any OS, you can use the esp-rtos crate as the task scheduler.

§Implementing a scheduler driver

This crate abstracts the capabilities of FreeRTOS. The scheduler must implement the following capabilities:

Modules§

queue
Queues
semaphore
Semaphores
timer
Timers (callbacks scheduled to run in the future)

Macros§

register_queue_implementation
register_semaphore_implementation
register_timer_implementation
scheduler_impl
Set the Scheduler implementation.

Traits§

Scheduler
The scheduler interface.

Functions§

current_task
Returns a pointer to the current task.
current_task_thread_semaphore
Returns a pointer to the current thread’s semaphore.
initialized
Returns whether the task scheduler has been initialized.
max_task_priority
Returns the maximum priority a task can have.
now
Returns the current timestamp, in microseconds.
schedule_task_deletion
Schedules the given task for deletion.
task_create
Creates a new task with the given initial parameter and stack size.
usleep
Puts the current task to sleep for the specified number of microseconds.
yield_task
Yields control to another task.
yield_task_from_isr
Yields control to another task for an interrupt.