BeRTOS
Data Structures | Defines | Functions | Variables
timer.h File Reference
#include <cfg/os.h>
#include <cfg/macros.h>
#include <cpu/attr.h>
#include <cpu/irq.h>
#include <PP_STRINGIZE(drv/PP_CAT3(timer, _, CPU_ID).h)>
#include "cfg/cfg_timer.h"
#include <cfg/debug.h>
#include <cfg/compiler.h>
#include <struct/list.h>
#include <mware/event.h>

Go to the source code of this file.

Data Structures

struct  Timer
 The timer driver supports multiple synchronous timers that can trigger an event when they expire. More...

Defines

#define synctimer_abort(t)   timer_abort(t)

Functions

ticks_t timer_clock (void)
 Return the system tick counter (expressed in ticks)
ticks_t timer_clock_unlocked (void)
 Faster version of timer_clock(), to be called only when the timer interrupt is disabled (DISABLE_INTS) or overridden by a higher-priority or non-nesting interrupt.
ticks_t ms_to_ticks (mtime_t ms)
 Convert ms [ms] to ticks.
ticks_t us_to_ticks (utime_t us)
 Convert us [us] to ticks.
mtime_t ticks_to_ms (ticks_t ticks)
 Convert ticks [ticks] to ms.
utime_t ticks_to_us (ticks_t ticks)
 Convert ticks [ticks] to us.
hptime_t us_to_hptime (utime_t us)
 Convert us [us] to hpticks.
utime_t hptime_to_us (hptime_t hpticks)
 Convert hpticks [hptime] to usec.
void timer_delayTicks (ticks_t delay)
 Wait for the specified amount of timer ticks.
void timer_delay (mtime_t delay)
 Wait some time [ms].
void timer_busyWait (hptime_t delay)
 Busy wait until the specified amount of high-precision ticks have elapsed.
void timer_delayHp (hptime_t delay)
 Wait for the specified amount of time (expressed in microseconds).
void timer_add (Timer *timer)
 Add the specified timer to the software timer service queue.
Timertimer_abort (Timer *timer)
 Remove a timer from the timers queue before it has expired.
void timer_setSoftint (Timer *timer, Hook func, iptr_t user_data)
 Set the timer so that it calls an user hook when it expires.
void timer_setDelay (Timer *timer, ticks_t delay)
 Set the timer delay (the time before the event will be triggered)
void synctimer_add (Timer *timer, List *q)
 Add timer to queue.
void synctimer_poll (List *q)
 Simple synchronous timer based scheduler polling routine.
void timer_setEvent (Timer *timer)
 Set the timer so that it sends a event notification when it expires.
void timer_waitEvent (Timer *timer)
 Wait until the timer expires.
void timer_setSignal (Timer *timer, struct Process *proc, sigmask_t sigs)
 Set the timer so that it sends a signal when it expires.

Variables

volatile ticks_t _clock
 Master system clock (1 tick accuracy)

Detailed Description

Definition in file timer.h.