Millisecond interval event timers¶
Provides timers for events up to $2^{32}$ milliseconds in the future.
Note
Experimental and likely to replaced with unified timer API
Compared to xtimer, evtimer offers:
- only relative 32-bit millisecond timer values Events can be scheduled with a relative offset of up to ~49.7 days in the future. **For time-critical stuff, use xtimer!**
- more flexible, “intrusive” timer type
evtimer.h::evtimer_event_tonly contains the necessary fields, which can be extended as needed, and handlers define actions taken on timer triggers. Check out evtimer_msg_event_t as example. - uses xtimer as backend
-
struct evtimer_event
evtimer_event_t¶ Generic event.
-
void(*
evtimer_callback_t()¶ Event timer callback type.
-
void
evtimer_init(evtimer_t * evtimer,evtimer.h::evtimer_callback_thandler)¶ Initializes an event timer.
Parameters
evtimer: An event timer handler: An event handler function
-
void
evtimer_add(evtimer_t * evtimer,evtimer.h::evtimer_event_t* event)¶ Adds event to an event timer.
Parameters
evtimer: An event timer event: An event
-
void
evtimer_del(evtimer_t * evtimer,evtimer.h::evtimer_event_t* event)¶ Removes an event from an event timer.
Parameters
evtimer: An event timer event: An event
-
void
evtimer_print(const evtimer_t * evtimer)¶ Print overview of current state of an event timer.
Parameters
evtimer: An event timer
-
void
evtimer_add_msg(evtimer_msg.h::evtimer_msg_t* evtimer, evtimer_msg_event_t * event,kernel_types.h::kernel_pid_ttarget_pid)¶ Adds event to an event timer that handles events via IPC.
Parameters
evtimer: An event timer event: An event target_pid: The PID of the thread that should receive the IPC message
-
void
_evtimer_msg_handler(evtimer.h::evtimer_event_t* event)¶ Event handler for IPC messages.
Parameters
event: The event to handle
-
void
evtimer_init_msg(evtimer_t * evtimer)¶ Initializes event timer to handle events via IPC.
Parameters
evtimer: An event timer
-
struct
evtimer_event¶ Generic event.
-
struct evtimer_event *
next¶ the next event in the queue
-
uint32_t
offset¶ offset in milliseconds from previous event
-
struct evtimer_event *
-
struct
evtimer_t¶ Event timer.
-
xtimer.h::xtimer_ttimer¶ Timer.
-
evtimer.h::evtimer_callback_tcallback¶ Handler function for this evtimer’s event type.
-
evtimer.h::evtimer_event_t*events¶ Event queue.
-
-
struct
evtimer_msg_event_t¶ IPC-message event.
-
evtimer.h::evtimer_event_tevent¶ base class
-