rcbench
Servo and ESC test bench: panel, IOmcu and shared C
Loading...
Searching...
No Matches
kst_prog_gate_t Struct Reference

The pass a START needs to be carried out. More...

#include <kst_prog.h>

Data Fields

_Atomic uint32_t pass

Detailed Description

The pass a START needs to be carried out.

The model's task and the task that owns the link module share one of these. kst_prog_take() offers the pass of each START it hands out; the link's task claims it when the command comes out of its queue and carries the command out only with the pass; the model revokes the pass of a START nobody answered. Each pass is taken once, by the one or by the other: a START whose pass the model revoked is never carried out, however late it leaves the queue.

The three calls are safe from two tasks without a lock: each is one atomic exchange of a 32-bit word.

Field Documentation

◆ pass

_Atomic uint32_t kst_prog_gate_t::pass

the id of the START offered; 0 none


The documentation for this struct was generated from the following file: