User`s manual

Dynamic C Users Manual digi.com 73
5.9.5.3 Example 3
This approach is more complicated, but will allow you to spend the idle time doing a low-priority back-
ground task.
main() {
int time_left;
long start_time;
for(;;) {
start_time = TICK_TIMER;
slice(500,20) { // slice_a
waitfor(IntervalTick(80));
...
}
slice(500,50) { // slice_b
waitfor(IntervalTick(105));
...
}
time_left = 75-(TICK_TIMER-start_time);
if(time_left>0) {
slice(500,75-(TICK_TIMER-start_time)) { // slice_c
...
}
}
}
}