Hello all, Being a newbee to freeRTOS, i made myself aware that we could reset the message queue in the FreeRTOS, but is it also possible to reset the software timer queue before starting a new software timer module. I could not find any document relating to Timer queues. I see that its possible to stop the timer using xTimerstop() function but will this reset the queue too ??
I’m not sure what you mean by the timer queue. When you stop a software timer the only effect it has it to stop the timer – not queues are effected.
So in a project with FreeRTOS on STM32F103, i had issues of cloging the message Queue. I run like 6 different tasks and push data messages to the Queue from atleast 3 tasks. with all taks running in same priority level. I saw that after receiving the queue data from two taks the queue gets full (with queue size set too 128). So i had to reset the Queue to populate the data messages of task three on the Queue. Contrary in an other instance i start a software timer from a state machine running in one of the task. When i start the timer i get a “true” return value, meaning the software timer was pushed to the timer queue with out any problem. But when i wait for this timer to time out after 40sec which is the period set during the start it does not time out at all and this callback function is never executed !!! So i tried to increase the “#define configTIMERQUEUELENGTH 50″ but this seems to not help me as well. Hope this gives more detail about what i am facing. Looking forward for your kind response.
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.