Hello Freescale,
I am using MQX 4.0.2. I was using the _time_delay() function to loosely schedule tasks to perform their duties in a periodic way.
I encountered an infrequent bug where _time_delay() would block for a much longer time than specified, perhaps a hundred times as long or longer. I have not found the cause of the bug, but I can confirm that using MQX's _timer_start_oneshot_after() + _taskq_suspend() + _taskq_resume() solves the issue for me. That means the same sort of timing error is not present in the timer module.
For reference, I have included my own delay_ms() function's source code, which seems to work properly.
Best regards,
Richard Donkin
Original Attachment has been moved to: Scheduler_Delay.hpp.txt.zip
Original Attachment has been moved to: Scheduler_Delay.cpp.txt.zip
Original Attachment has been moved to: Simple_Map.hpp.txt.zip
Solved! Go to Solution.
Thank you Carlos. I will submit it as a Service Request as well next time.
Best regards,
Richard
Thank you for sharing your solution (work around) in the community Richard,
Any time you think you find a bug I recommend to submit a Service Request at our web page www.freescale.com/support this way technical support team can evaluate the case and report it to development team. I will take a look to it and submit a report if necessary.
Regards,
Carlos
Thank you Carlos. I will submit it as a Service Request as well next time.
Best regards,
Richard