A C++ template library for embedded applications
MIT licensed
Designed and
maintained by
John Wellbelove

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.

timer.h