EFM32 Gecko Software Documentation
efm32g-doc-5.1.2
|
RTCDRV timer API definition.
(C) Copyright 2014 Silicon Labs, http://www.silabs.com
This file is licensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.
Definition in file rtcdriver.h.
Go to the source code of this file.
Macros | |
#define | ECODE_EMDRV_RTCDRV_ALL_TIMERS_USED ( ECODE_EMDRV_RTCDRV_BASE | 0x00000001 ) |
No timers available. | |
#define | ECODE_EMDRV_RTCDRV_ILLEGAL_TIMER_ID ( ECODE_EMDRV_RTCDRV_BASE | 0x00000002 ) |
Illegal timer id. | |
#define | ECODE_EMDRV_RTCDRV_OK ( ECODE_OK ) |
Success return value. | |
#define | ECODE_EMDRV_RTCDRV_PARAM_ERROR ( ECODE_EMDRV_RTCDRV_BASE | 0x00000004 ) |
Illegal input parameter. | |
#define | ECODE_EMDRV_RTCDRV_TIMER_NOT_ALLOCATED ( ECODE_EMDRV_RTCDRV_BASE | 0x00000003 ) |
Timer is not allocated. | |
#define | ECODE_EMDRV_RTCDRV_TIMER_NOT_RUNNING ( ECODE_EMDRV_RTCDRV_BASE | 0x00000005 ) |
Timer is not running. | |
Typedefs | |
typedef void(* | RTCDRV_Callback_t) (RTCDRV_TimerID_t id, void *user) |
Typedef for the user supplied callback function which is called when a timer elapse. More... | |
typedef uint32_t | RTCDRV_TimerID_t |
Timer ID. | |
Enumerations | |
enum | RTCDRV_TimerType_t { rtcdrvTimerTypeOneshot =0, rtcdrvTimerTypePeriodic =1 } |
Timer type enumerator. More... | |
Functions | |
Ecode_t | RTCDRV_AllocateTimer (RTCDRV_TimerID_t *id) |
Allocate timer. More... | |
Ecode_t | RTCDRV_DeInit (void) |
Deinitialize RTCDRV driver. More... | |
Ecode_t | RTCDRV_Delay (uint32_t ms) |
Millisecond delay function. More... | |
Ecode_t | RTCDRV_FreeTimer (RTCDRV_TimerID_t id) |
Free timer. More... | |
uint32_t | RTCDRV_GetWallClock (void) |
Get wallclock time. More... | |
uint32_t | RTCDRV_GetWallClockTicks32 (void) |
Get wallclock tick count as a 32bit value. At 4 ticks per millisecond, overflow occurs after approximately 12.5 days. More... | |
uint64_t | RTCDRV_GetWallClockTicks64 (void) |
Get wallclock tick count as a 64 bit value. This will never overflow. More... | |
Ecode_t | RTCDRV_Init (void) |
Initialize RTCDRV driver. More... | |
Ecode_t | RTCDRV_IsRunning (RTCDRV_TimerID_t id, bool *isRunning) |
Check if a given timer is running. More... | |
uint64_t | RTCDRV_MsecsToTicks (uint32_t ms) |
Convert from milliseconds to RTC/RTCC ticks. More... | |
uint64_t | RTCDRV_SecsToTicks (uint32_t secs) |
Convert from seconds to RTC/RTCC ticks. More... | |
Ecode_t | RTCDRV_SetWallClock (uint32_t secs) |
Set wallclock time. More... | |
Ecode_t | RTCDRV_StartTimer (RTCDRV_TimerID_t id, RTCDRV_TimerType_t type, uint32_t timeout, RTCDRV_Callback_t callback, void *user) |
Start a timer. More... | |
Ecode_t | RTCDRV_StopTimer (RTCDRV_TimerID_t id) |
Stop a given timer. More... | |
uint32_t | RTCDRV_TicksToMsec (uint64_t ticks) |
Convert from RTC/RTCC ticks to milliseconds. More... | |
uint32_t | RTCDRV_TicksToSec (uint64_t ticks) |
Convert from RTC/RTCC ticks to seconds. More... | |
Ecode_t | RTCDRV_TimeRemaining (RTCDRV_TimerID_t id, uint32_t *timeRemaining) |
Get time left before a given timer expires. More... | |