mirror of
https://github.com/ETLCPP/etl.git
synced 2026-04-30 19:09:10 +08:00
91 lines
1.2 KiB
Plaintext
91 lines
1.2 KiB
Plaintext
Timer
|
|
Contains definitions common to timers.
|
|
|
|
struct timer
|
|
{
|
|
// Timer modes.
|
|
struct mode
|
|
{
|
|
enum
|
|
{
|
|
SINGLE_SHOT = false,
|
|
REPEATING = true
|
|
};
|
|
|
|
typedef bool type;
|
|
};
|
|
|
|
// Timer start status.
|
|
struct start
|
|
{
|
|
enum
|
|
{
|
|
DELAYED = false,
|
|
IMMEDIATE = true
|
|
};
|
|
|
|
typedef bool type;
|
|
};
|
|
|
|
// Timer id.
|
|
struct id
|
|
{
|
|
enum
|
|
{
|
|
NO_TIMER = 255
|
|
};
|
|
|
|
typedef uint_least8_t type;
|
|
};
|
|
|
|
// Timer state.
|
|
struct state
|
|
{
|
|
enum
|
|
{
|
|
INACTIVE = 0xFFFFFFFF
|
|
};
|
|
};
|
|
};
|
|
|
|
____________________________________________________________________________________________________
|
|
timer
|
|
mode
|
|
Types
|
|
type
|
|
The type for timer mode.
|
|
Defined as bool
|
|
|
|
Constants
|
|
SINGLE_SHOT
|
|
The timer expires once and then stops.
|
|
|
|
REPEATING
|
|
The timer is restarted after every timeout.
|
|
|
|
start
|
|
Types
|
|
type
|
|
The type for timer start mode.
|
|
Defined as bool
|
|
|
|
Constants
|
|
IMMEDIATE
|
|
Single Shot
|
|
The timer is triggered on the next tick. The normal timeout does not occur.
|
|
Repeating
|
|
The timer is triggered on the next tick and then on subsequent timeouts.
|
|
DELAYED
|
|
The timer is triggered on the timeout.
|
|
|
|
id
|
|
Types
|
|
type
|
|
The type for timer identifiers.
|
|
Defined as uint_least8_t
|
|
|
|
Constants
|
|
NO_TIMER
|
|
The id of an unregistered timer.
|
|
|