43 #if (CH_CFG_ST_TIMEDELTA < 0) || (CH_CFG_ST_TIMEDELTA == 1)    44 #error "invalid CH_CFG_ST_TIMEDELTA specified, must "                       \    45        "be zero or greater than one"    48 #if (CH_CFG_ST_TIMEDELTA > 0) && (CH_CFG_TIME_QUANTUM > 0)    49 #error "CH_CFG_TIME_QUANTUM not supported in tickless mode"    52 #if (CH_CFG_ST_TIMEDELTA > 0) && (CH_DBG_THREADS_PROFILING == TRUE)    53 #error "CH_DBG_THREADS_PROFILING not supported in tickless mode"   117 #if CH_CFG_ST_TIMEDELTA == 0   120   return port_timer_get_time();
   218 #if CH_CFG_ST_TIMEDELTA == 0   243   return (
bool)(vtp->
func != NULL);
   372 #if CH_CFG_ST_TIMEDELTA == 0   407     if (nowdelta < vtp->delta) {
   417       nowdelta -= vtp->
delta;
   426         port_timer_stop_alarm();
   437     while (vtp->
delta <= nowdelta);
   455 #if CH_CFG_INTERVALS_SIZE > CH_CFG_ST_RESOLUTION static systime_t chVTGetSystemTimeX(void)
Current system time. 
 
void * par
Timer callback function parameter. 
 
#define chSysLock()
Enters the kernel lock state. 
 
uint64_t systime_t
Type of system time. 
 
uint64_t sysinterval_t
Type of time interval. 
 
sysinterval_t delta
Time delta before timeout. 
 
#define chTimeAddX(systime, interval)
Adds an interval to a system time returning a system time. 
 
virtual_timer_t * prev
Previous timer in the list. 
 
static void chVTReset(virtual_timer_t *vtp)
Disables a Virtual Timer. 
 
#define chTimeDiffX(start, end)
Subtracts two system times returning an interval. 
 
#define TIME_MAX_SYSTIME
Maximum system of system time before it wraps. 
 
systime_t lasttime
System time of the last tick event. 
 
static bool chVTIsSystemTimeWithin(systime_t start, systime_t end)
Checks if the current system time is within the specified time window. 
 
virtual_timers_list_t vtlist
Virtual timers delta list header. 
 
static void chVTSetI(virtual_timer_t *vtp, sysinterval_t delay, vtfunc_t vtfunc, void *par)
Enables a virtual timer. 
 
static void chVTObjectInit(virtual_timer_t *vtp)
Initializes a virtual_timer_t object. 
 
static void chVTSet(virtual_timer_t *vtp, sysinterval_t delay, vtfunc_t vtfunc, void *par)
Enables a virtual timer. 
 
static bool chVTGetTimersStateI(sysinterval_t *timep)
Returns the time interval until the next timer event. 
 
#define chSysUnlock()
Leaves the kernel lock state. 
 
void chVTDoSetI(virtual_timer_t *vtp, sysinterval_t delay, vtfunc_t vtfunc, void *par)
Enables a virtual timer. 
 
void(* vtfunc_t)(void *p)
Type of a Virtual Timer callback function. 
 
void chVTDoResetI(virtual_timer_t *vtp)
Disables a Virtual Timer. 
 
Virtual timers list header. 
 
#define chSysUnlockFromISR()
Leaves the kernel lock state from within an interrupt handler. 
 
static bool chVTIsSystemTimeWithinX(systime_t start, systime_t end)
Checks if the current system time is within the specified time window. 
 
void _vt_init(void)
Virtual Timers initialization. 
 
static systime_t chVTGetSystemTime(void)
Current system time. 
 
volatile systime_t systime
System Time counter. 
 
static bool chVTIsArmedI(const virtual_timer_t *vtp)
Returns true if the specified timer is armed. 
 
ch_system_t ch
System data structures. 
 
#define chSysLockFromISR()
Enters the kernel lock state from within an interrupt handler. 
 
Virtual Timer descriptor structure. 
 
static bool chVTIsArmed(const virtual_timer_t *vtp)
Returns true if the specified timer is armed. 
 
virtual_timer_t * next
Next timer in the delta list. 
 
static void chVTResetI(virtual_timer_t *vtp)
Disables a Virtual Timer. 
 
virtual_timer_t * next
Next timer in the list. 
 
#define chDbgAssert(c, r)
Condition assertion. 
 
static void chVTDoTickI(void)
Virtual timers ticker. 
 
static sysinterval_t chVTTimeElapsedSinceX(systime_t start)
Returns the elapsed time since the specified start time. 
 
#define chTimeIsInRangeX(time, start, end)
Checks if the specified time is within the specified time range. 
 
vtfunc_t func
Timer callback function pointer.