Enter a brief description of your changes
(Required)
Minor changes are by default collapsed in the page history.
No changes
The page does not exist yet.
Failed to load changes
Version by on
Leave Collaboration
Are you sure you want to leave the realtime collaboration and continue editing alone? The changes you save while editing alone will lead to merge conflicts with the changes auto-saved by the realtime editing session.
Step 1: Cooperative Scheduler
Last modified by Microchip on 2026/06/26 07:40
Understanding Scheduler
A scheduler is a software component in an embedded system that determines when and in what order tasks run on the CPU.
The scheduler enables multiple functions to share the CPU in a structured and predictable manner without allowing tasks to preempt one another.
The scheduler uses a timing source (such as SysTick) to determine when tasks run, rather than allowing them to execute continuously.
The scheduler runs in software and requires tasks to cooperate by completing quickly and returning control, whereas hardware timers operate independently.
The scheduler allows the CPU to perform coordinated operations such as General Purpose Input/Output (GPIO) control, Analog-to-Digital Converter (ADC) sampling and Universal Asynchronous Receiver Transmitter (UART) communication within a single unified framework.
Schedulers are used to manage periodic tasks, organize program flow and maintain consistent system behavior in embedded applications.
Menu
Microchip Support
Query Microchip Forums and get your questions answered by our community:
If you need to work with Microchip Support staff directly, you can submit a technical support case. Keep in mind that many questions can be answered through our self-help resources, so this may not be your speediest option.