Bar Logo Dual Active Bridge Development Board (Part-No. )
 
Content
     
Loading...
Searching...
No Matches
Task Scheduler Layer

Contain functions and properties necessary to schedule a task. More...

Functions

void Tasks_Realtime_1ms (void)
 Tasks_Realtime_1ms gets called directly from the timer interrupt every millisecond.
 
void Tasks_1ms (void)
 Tasks_1ms gets called every millisecond, put your things in it that need to be called regularly.
 
void Tasks_10ms (void)
 Tasks_10ms gets called every 10ms, put your things in it that need to be called regularly.
 
void Tasks_100ms (void)
 Tasks_100ms gets called every 100 ms, put your things in it that need to be called regularly.
 
void Tasks_1s (void)
 Tasks_1s gets called every second, put your things in it that need to be called regularly.
 
void Tasks_Background (void)
 Tasks_Background gets called all the time when no other of the above tasks are being called.
 

Detailed Description

A firmware task scheduler with a 100 microsecond (µs) execution interval is a critical component in real-time embedded systems, where precise timing and deterministic behavior are paramount. This scheduler is designed to manage and execute a series of tasks or operations at a highly granular time resolution, ensuring that each task is initiated every 100 µs. Such a high-frequency task scheduler is typically implemented using a hardware timer or interrupt service routine (ISR) to maintain strict timing accuracy. The scheduler must be optimized for minimal overhead to ensure that the majority of the 100 µs window is available for task execution rather than administrative functions.

Function Documentation

◆ Tasks_100ms()

void Tasks_100ms ( void  )
Note
there could be some jitter here because it is not called directly by a timer interrupt

Definition at line 141 of file main_tasks.c.

+ Here is the call graph for this function:

◆ Tasks_10ms()

void Tasks_10ms ( void  )
Note
there could be some jitter here because it is not called directly by a timer interrupt

Definition at line 127 of file main_tasks.c.

+ Here is the call graph for this function:

◆ Tasks_1ms()

void Tasks_1ms ( void  )
Note
there could be some jitter here because it is not called directly by a timer interrupt

Definition at line 115 of file main_tasks.c.

◆ Tasks_1s()

void Tasks_1s ( void  )
Note
there could be some jitter here because it is not called directly by a timer interrupt

Definition at line 155 of file main_tasks.c.

+ Here is the call graph for this function:

◆ Tasks_Background()

void Tasks_Background ( void  )
Note
call this function when you want to implement your own timing or get code called as often as possible. You can also put your timing variables into Tasks_Realtime_100us or Tasks_Realtime_1ms. This way you get accurate timing variables that you can use here.

Definition at line 170 of file main_tasks.c.

◆ Tasks_Realtime_1ms()

void Tasks_Realtime_1ms ( void  )
Note
keep this routine as short as possible

Definition at line 90 of file main_tasks.c.