33 #error "include FreeRTOS.h must appear in source files before include timers.h"
54#define tmrCOMMAND_EXECUTE_CALLBACK_FROM_ISR ( ( int32_t ) -2 )
55#define tmrCOMMAND_EXECUTE_CALLBACK ( ( int32_t ) -1 )
56#define tmrCOMMAND_START_DONT_TRACE ( ( int32_t ) 0 )
57#define tmrCOMMAND_START ( ( int32_t ) 1 )
58#define tmrCOMMAND_RESET ( ( int32_t ) 2 )
59#define tmrCOMMAND_STOP ( ( int32_t ) 3 )
60#define tmrCOMMAND_CHANGE_PERIOD ( ( int32_t ) 4 )
61#define tmrCOMMAND_DELETE ( ( int32_t ) 5 )
63#define tmrFIRST_FROM_ISR_COMMAND ( ( int32_t ) 6 )
64#define tmrCOMMAND_START_FROM_ISR ( ( int32_t ) 6 )
65#define tmrCOMMAND_RESET_FROM_ISR ( ( int32_t ) 7 )
66#define tmrCOMMAND_STOP_FROM_ISR ( ( int32_t ) 8 )
67#define tmrCOMMAND_CHANGE_PERIOD_FROM_ISR ( ( int32_t ) 9 )
76typedef void * TimerHandle_t;
81typedef void (*TimerCallbackFunction_t)( TimerHandle_t xTimer );
87typedef void (*PendedFunction_t)(
void *, uint32_t );
226#if( configSUPPORT_DYNAMIC_ALLOCATION == 1 )
227 TimerHandle_t xTimerCreate(
const char *
const pcTimerName,
228 const uint32_t xTimerPeriodInTicks,
229 const uint32_t uxAutoReload,
230 void *
const pvTimerID,
231 TimerCallbackFunction_t pxCallbackFunction ) ;
356#if( configSUPPORT_STATIC_ALLOCATION == 1 )
357 TimerHandle_t xTimerCreateStatic(
const char *
const pcTimerName,
358 const uint32_t xTimerPeriodInTicks,
359 const uint32_t uxAutoReload,
360 void *
const pvTimerID,
361 TimerCallbackFunction_t pxCallbackFunction,
362 StaticTimer_t *pxTimerBuffer ) ;
385void *pvTimerGetTimerID(
const TimerHandle_t xTimer ) ;
406void vTimerSetTimerID( TimerHandle_t xTimer,
void *pvNewID ) ;
443int32_t xTimerIsTimerActive( TimerHandle_t xTimer ) ;
451task_t xTimerGetTimerDaemonTaskHandle(
void ) ;
503#define xTimerStart( xTimer, xTicksToWait ) xTimerGenericCommand( ( xTimer ), tmrCOMMAND_START, ( millis() ), NULL, ( xTicksToWait ) )
545#define xTimerStop( xTimer, xTicksToWait ) xTimerGenericCommand( ( xTimer ), tmrCOMMAND_STOP, 0U, NULL, ( xTicksToWait ) )
625 #define xTimerChangePeriod( xTimer, xNewPeriod, xTicksToWait ) xTimerGenericCommand( ( xTimer ), tmrCOMMAND_CHANGE_PERIOD, ( xNewPeriod ), NULL, ( xTicksToWait ) )
663#define xTimerDelete( xTimer, xTicksToWait ) xTimerGenericCommand( ( xTimer ), tmrCOMMAND_DELETE, 0U, NULL, ( xTicksToWait ) )
787#define xTimerReset( xTimer, xTicksToWait ) xTimerGenericCommand( ( xTimer ), tmrCOMMAND_RESET, ( millis() ), NULL, ( xTicksToWait ) )
873#define xTimerStartFromISR( xTimer, pxHigherPriorityTaskWoken ) xTimerGenericCommand( ( xTimer ), tmrCOMMAND_START_FROM_ISR, ( xTaskGetTickCountFromISR() ), ( pxHigherPriorityTaskWoken ), 0U )
936#define xTimerStopFromISR( xTimer, pxHigherPriorityTaskWoken ) xTimerGenericCommand( ( xTimer ), tmrCOMMAND_STOP_FROM_ISR, 0, ( pxHigherPriorityTaskWoken ), 0U )
1009#define xTimerChangePeriodFromISR( xTimer, xNewPeriod, pxHigherPriorityTaskWoken ) xTimerGenericCommand( ( xTimer ), tmrCOMMAND_CHANGE_PERIOD_FROM_ISR, ( xNewPeriod ), ( pxHigherPriorityTaskWoken ), 0U )
1095#define xTimerResetFromISR( xTimer, pxHigherPriorityTaskWoken ) xTimerGenericCommand( ( xTimer ), tmrCOMMAND_RESET_FROM_ISR, ( xTaskGetTickCountFromISR() ), ( pxHigherPriorityTaskWoken ), 0U )
1186int32_t xTimerPendFunctionCallFromISR( PendedFunction_t xFunctionToPend,
void *pvParameter1, uint32_t ulParameter2, int32_t *pxHigherPriorityTaskWoken ) ;
1220int32_t xTimerPendFunctionCall( PendedFunction_t xFunctionToPend,
void *pvParameter1, uint32_t ulParameter2, uint32_t xTicksToWait ) ;
1231const char * pcTimerGetName( TimerHandle_t xTimer ) ;
1242uint32_t xTimerGetPeriod( TimerHandle_t xTimer ) ;
1257uint32_t xTimerGetExpiryTime( TimerHandle_t xTimer ) ;
1263int32_t xTimerCreateTimerTask(
void ) ;
1264int32_t xTimerGenericCommand( TimerHandle_t xTimer,
const int32_t xCommandID,
const uint32_t xOptionalValue, int32_t *
const pxHigherPriorityTaskWoken,
const uint32_t xTicksToWait ) ;
1266#if( configUSE_TRACE_FACILITY == 1 )
1267 void vTimerSetTimerNumber( TimerHandle_t xTimer, uint32_t uxTimerNumber ) ;
1268 uint32_t uxTimerGetTimerNumber( TimerHandle_t xTimer ) ;
void * task_t
Definition rtos.h:100