I’m creating a timer like this:
Timer = xTimerCreate ( “Timer
1second”, TIMESECONDS(1), pdTRUE, (void*)0, Callback
The callback function creates a message that is sent to the task that created the timer:
static void CallbackTimer ( TimerHandle
t xTimer )
Timer_Message.type = Timer_1second;
if ( xQueueSend ( xQueue_Callback, (void*) &Timer_Message, 0 ) != pdPASS )
/* In case there is no space in the Queue we wait for better days */
In the main task a switch case is used upon receiving the message:
if ( xQueueReceive ( xQueueCallback, &Callback
Message, portMAXDELAY ) != pdTRUE )
Printfh ( “ERROR – task
IPreceiver – xQueueReceive failed” );
switch ( Callback_Message.type )
At the moment the case statement is never hit! However it was working before… I’ve been changing some options in FreeRTOSConfig.h but I believe I put everything back to as it was, but…
Any ideas about this?
Would there be any option in FreeRTOSConfig.h that some how makes the timer not work?
In fact this may be the one:
/* Software timer definitions. */
define configUSE_TIMERS 1
But it is 1.