Updated Apr 2025
vTimerSetTimerID
timers.h
1 void vTimerSetTimerID( TimerHandle_t xTimer, void *pvNewID );
An identifier (ID) is assigned to a software timer when the timer is created, and can be changed at any time using the
vTimerSetTimerID()
If the same callback function is assigned to multiple timers, the timer identifier can be inspected inside the callback function to determine which timer actually expired.
The timer identifier can also be used to store data in the timer between calls to the timer's callback function.
Parameters:
-
xTimer
The timer being updated.
-
pvNewID
The handle to which the timer's identifier will be set.
Example usage:
1/* A callback function assigned to a timer. */2void TimerCallbackFunction( TimerHandle_t pxExpiredTimer )3{4uint32_t ulCallCount;56 /* A count of the number of times this timer has expired7 and executed its callback function is stored in the8 timer's ID. Retrieve the count, increment it, then save9 it back into the timer's ID. */10 ulCallCount =11 ( uint32_t ) [pvTimerGetTimerID](/Documentation/02-Kernel/04-API-references/11-Software-timers/13-pvTimerGetTimerID)( pxExpiredTimer );12 ulCallCount++;13 vTimerSetTimerID( pxExpiredTimer, ( void * ) ulCallCount );14}