I am using FreeRTOS Zynq port for software development on ZedBoard. I have a periodic task, which I need to call after a specified interval. For periodic delay, I am using vTaskDelayUntil freertos method for absolute delay. Below is my setting for the tick timer.
XScuTimer_LoadTimer(&Timer, XSCUTIMER_CLOCK_HZ / configTICK_RATE_HZ);
XSCUTIMER_CLOCK_HZ = 666666687/2;
configTICK_RATE_HZ =100
So, Timer reloads value after every interrupt is 3333333.435
According to this setting, after every 10 us [2.99ns (time period for timer clock) * 3333333.435 (count value)], timer interrupt will be called. But when I call vTaskDelayUntil( &prevValue, 10), it took so much time, roughly around 30~40 seconds. However, in actual, it should take 100 us delay [10 (tick count)*10 us (tick time) =100 us]. I tried many things and would not be succeeded. If anybody can help me, I would be very grateful.
Regards
Fayyaz