Run time options can be entered from the "Build" menu of the main window. Run-time options must be defined BEFORE the application is built.
Cycle time
You must specify in this box how the cycles must be triggered at run-time:
- not triggered: the target does not wait between two cycles.
The target simply runs as fast as possible
- triggered: you must specify the duration of a cycle, expressed as
a number of micro-seconds. Refer to OEM instructions for
explanations of the supported accuracy for the cycle timing of your
target system.
Program scheduling
You can define various sampling periods for programs of the application. Default period is "1": the program is executed on each cycle. Giving slower period to some programs is an easy way to give higher priority to some other programs.
To change the scheduling of programs, select them in the left side list and press ">" or drag them to the grid where you can change for each selected program:
- its period (how many cycles between two executions of the
program)
- its phase (an offset that enables to dispatch slow programs among
few cycles)
The diagram on the top shows the loading of target cycles. On each sample, the diagram shows how many programs are run. You can highlight the scheduling of a program in the diagram by checking it in the grid.
The following example illustrates the scheduling of an application with three programs. In order to give higher priority to program P3, a period of 2 is given to programs P1 and P2. P2 as an offset "1" so that it is not executed on the same cycle as P1:
Period | Phase | |
P1 | 2 | 0 |
P2 | 2 | 1 |
P3 | 1 | 0 |
The diagram below shows which program is executed on each cycle according to this configuration:
P1 | P2 | P1 | P2 | P1 | P2 | P1 | P2 | P1 |
P3 | P3 | P3 | P3 | P3 | P3 | P3 | P3 | P3 |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | ... |