xtimer interface definitions More...
xtimer interface definitions
Definition in file xtimer.h.
#include <stdbool.h>#include <stdint.h>#include "modules.h"#include "timex.h"#include "mutex.h"#include "sched.h"#include "rmutex.h"#include "board.h"#include "periph_conf.h"#include "xtimer/tick_conversion.h"#include "xtimer/implementation.h" Include dependency graph for xtimer.h:
 Include dependency graph for xtimer.h: This graph shows which files directly or indirectly include this file:
 This graph shows which files directly or indirectly include this file:Go to the source code of this file.
| Data Structures | |
| struct | xtimer_ticks64_t | 
| xtimer timestamp (64 bit)  More... | |
| struct | xtimer_ticks32_t | 
| xtimer timestamp (32 bit)  More... | |
| struct | xtimer | 
| xtimer timer structure  More... | |
| Macros | |
| #define | XTIMER_H | 
| This macro is used to check whether internal headers have been included via the public header. | |
| #define | XTIMER_BACKOFF 30 | 
| xtimer backoff value | |
| #define | XTIMER_ISR_BACKOFF 20 | 
| xtimer IRQ backoff time, in hardware ticks | |
| #define | XTIMER_DEV TIMER_DEV(0) | 
| Underlying hardware timer device to assign to xtimer. | |
| #define | XTIMER_CHAN (0) | 
| Underlying hardware timer channel to assign to xtimer. | |
| #define | XTIMER_WIDTH (32) | 
| xtimer timer width | |
| #define | XTIMER_MASK ((0xffffffff >> XTIMER_WIDTH) << XTIMER_WIDTH) | 
| xtimer timer mask | |
| #define | XTIMER_HZ_BASE (1000000ul) | 
| Base frequency of xtimer is 1 MHz. | |
| #define | XTIMER_HZ XTIMER_HZ_BASE | 
| Frequency of the underlying hardware timer. | |
| #define | XTIMER_SHIFT (0) | 
| xtimer prescaler value | |
| Typedefs | |
| typedef void(* | xtimer_callback_t) (void *) | 
| xtimer callback type | |
| typedef struct xtimer | xtimer_t | 
| xtimer timer structure | |
| Functions | |
| static xtimer_ticks32_t | xtimer_now (void) | 
| get the current system time as 32bit time stamp value | |
| static xtimer_ticks64_t | xtimer_now64 (void) | 
| get the current system time as 64bit time stamp | |
| void | xtimer_now_timex (timex_t *out) | 
| get the current system time into a timex_t | |
| static uint32_t | xtimer_now_usec (void) | 
| get the current system time in microseconds since start | |
| static uint64_t | xtimer_now_usec64 (void) | 
| get the current system time in microseconds since start | |
| void | xtimer_init (void) | 
| xtimer initialization function | |
| static void | xtimer_sleep (uint32_t seconds) | 
| Pause the execution of a thread for some seconds. | |
| static void | xtimer_msleep (uint32_t milliseconds) | 
| Pause the execution of a thread for some milliseconds. | |
| static void | xtimer_usleep (uint32_t microseconds) | 
| Pause the execution of a thread for some microseconds. | |
| static void | xtimer_usleep64 (uint64_t microseconds) | 
| Pause the execution of a thread for some microseconds. | |
| static void | xtimer_nanosleep (uint32_t nanoseconds) | 
| Stop execution of a thread for some time. | |
| static void | xtimer_tsleep32 (xtimer_ticks32_t ticks) | 
| Stop execution of a thread for some time, 32bit version. | |
| static void | xtimer_tsleep64 (xtimer_ticks64_t ticks) | 
| Stop execution of a thread for some time, 64bit version. | |
| static void | xtimer_spin (xtimer_ticks32_t ticks) | 
| Stop execution of a thread for some time, blocking. | |
| static void | xtimer_periodic_wakeup (xtimer_ticks32_t *last_wakeup, uint32_t period) | 
| will cause the calling thread to be suspended until the absolute time ( last_wakeup+period). | |
| static void | xtimer_set_wakeup (xtimer_t *timer, uint32_t offset, kernel_pid_t pid) | 
| Set a timer that wakes up a thread. | |
| static void | xtimer_set_wakeup64 (xtimer_t *timer, uint64_t offset, kernel_pid_t pid) | 
| Set a timer that wakes up a thread, 64bit version. | |
| static void | xtimer_set (xtimer_t *timer, uint32_t offset) | 
| Set a timer to execute a callback at some time in the future. | |
| static void | xtimer_set64 (xtimer_t *timer, uint64_t offset_us) | 
| Set a timer to execute a callback at some time in the future, 64bit version. | |
| void | xtimer_remove (xtimer_t *timer) | 
| remove a timer | |
| static bool | xtimer_is_set (const xtimer_t *timer) | 
| state if an xtimer is currently set (waiting to be expired) | |
| static xtimer_ticks32_t | xtimer_ticks_from_usec (uint32_t usec) | 
| Convert microseconds to xtimer ticks. | |
| static xtimer_ticks64_t | xtimer_ticks_from_usec64 (uint64_t usec) | 
| Convert microseconds to xtimer ticks, 64 bit version. | |
| static uint32_t | xtimer_usec_from_ticks (xtimer_ticks32_t ticks) | 
| Convert xtimer ticks to microseconds. | |
| static uint64_t | xtimer_usec_from_ticks64 (xtimer_ticks64_t ticks) | 
| Convert xtimer ticks to microseconds, 64 bit version. | |
| static xtimer_ticks32_t | xtimer_ticks (uint32_t ticks) | 
| Create an xtimer time stamp. | |
| static xtimer_ticks64_t | xtimer_ticks64 (uint64_t ticks) | 
| Create an xtimer time stamp, 64 bit version. | |
| static xtimer_ticks32_t | xtimer_diff (xtimer_ticks32_t a, xtimer_ticks32_t b) | 
| Compute difference between two xtimer time stamps. | |
| static xtimer_ticks64_t | xtimer_diff64 (xtimer_ticks64_t a, xtimer_ticks64_t b) | 
| Compute difference between two xtimer time stamps, 64 bit version. | |
| static xtimer_ticks32_t | xtimer_diff32_64 (xtimer_ticks64_t a, xtimer_ticks64_t b) | 
| Compute 32 bit difference between two 64 bit xtimer time stamps. | |
| static bool | xtimer_less (xtimer_ticks32_t a, xtimer_ticks32_t b) | 
| Compare two xtimer time stamps. | |
| static bool | xtimer_less64 (xtimer_ticks64_t a, xtimer_ticks64_t b) | 
| Compare two xtimer time stamps, 64 bit version. | |
| int | xtimer_mutex_lock_timeout (mutex_t *mutex, uint64_t us) | 
| lock a mutex but with timeout | |
| int | xtimer_rmutex_lock_timeout (rmutex_t *rmutex, uint64_t us) | 
| lock a rmutex but with timeout | |
| void | xtimer_set_timeout_flag (xtimer_t *t, uint32_t timeout) | 
| Set timeout thread flag after timeout. | |
| void | xtimer_set_timeout_flag64 (xtimer_t *t, uint64_t timeout) | 
| Set timeout thread flag after timeout. | |
| uint64_t | xtimer_left_usec (const xtimer_t *timer) | 
| Get remaining time of timer. | |
| static void | xtimer_set_msg (xtimer_t *timer, uint32_t offset, msg_t *msg, kernel_pid_t target_pid) | 
| Set a timer that sends a message. | |
| static void | xtimer_set_msg64 (xtimer_t *timer, uint64_t offset, msg_t *msg, kernel_pid_t target_pid) | 
| Set a timer that sends a message, 64bit version. | |
| static int | xtimer_msg_receive_timeout (msg_t *msg, uint32_t timeout) | 
| receive a message blocking but with timeout | |
| static int | xtimer_msg_receive_timeout64 (msg_t *msg, uint64_t timeout) | 
| receive a message blocking but with timeout, 64bit version | |