Change configTICK_RATE_HZ in real-time
Posted by
simointe on October 31, 2016
(TMS570LC4)
Is there a way to change at run-time the rtos tick ? I know of course you can change a task frequency, but I have a high frequency application which requires also to sweep a frequency. In order to have more precision between steps, without at compile time increase the configTICKRATEHZ too much.
Change configTICK_RATE_HZ in real-time
Posted by
edwards3 on October 31, 2016
No dynamic tick frequency changing really because blocked tasks have a stored wake time, and changing the time base will result in them waking at the wrong time, but you can do tricks like halve the tick frequency then call the RTOS increment tick function twice per tick.
Change configTICK_RATE_HZ in real-time
Posted by
simointe on November 1, 2016
Thanks.
« then call the RTOS increment tick function twice per tick…»
Do you talk about the vTaskStepTick( TickType_t xTicksToJump ) function or another api call ?
Change configTICK_RATE_HZ in real-time
Posted by
rtel on November 1, 2016
The function that increments the tick is called xTaskIncrementTick (). The step tick function you refer to is only used in tickless idle mode.