From 04189cc6844d7d43305a57464713defb5a46d85c Mon Sep 17 00:00:00 2001 From: John van der Koijk <33966414+jvanderk@users.noreply.github.com> Date: Sun, 20 Feb 2022 19:21:25 +0100 Subject: Mostly editorial review. --- book/en/src/by-example/app_task.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'book/en/src/by-example/app_task.md') diff --git a/book/en/src/by-example/app_task.md b/book/en/src/by-example/app_task.md index 9716004..d83f1ff 100644 --- a/book/en/src/by-example/app_task.md +++ b/book/en/src/by-example/app_task.md @@ -4,15 +4,18 @@ Tasks, defined with `#[task]`, are the main mechanism of getting work done in RT Tasks can -* Be spawned (now or in the future) -* Receive messages (message passing) -* Prioritized allowing preemptive multitasking +* Be spawned (now or in the future, also by themselves) +* Receive messages (passing messages between tasks) +* Be prioritized, allowing preemptive multitasking * Optionally bind to a hardware interrupt RTIC makes a distinction between “software tasks” and “hardware tasks”. -Hardware tasks are tasks that are bound to a specific interrupt vector in the MCU while software tasks are not. -This means that if a hardware task is bound to an UART RX interrupt the task will run every -time this interrupt triggers, usually when a character is received. +*Hardware tasks* are tasks that are bound to a specific interrupt vector in the MCU while software tasks are not. + +This means that if a hardware task is bound to, lets say, a UART RX interrupt, the task will be run every +time that interrupt triggers, usually when a character is received. + +*Software tasks* are explicitly spawned in a task, either immediately or using the Monotonic timer mechanism. In the coming pages we will explore both tasks and the different options available. -- cgit v1.2.3