TouchGFX function stay blocked in a function of dma.c (dma.o code). So model tick is no more executed. Previously blocked in OSWrappers::takeFrameBufferSemaphore().
Previously I had a problem of semaphore, touchgfx was waiting for a semaphore that never come ( in function takeFrameBufferSemaphore osSemaphoreAcquire(frame_buffer_sem, osWaitForever))
We use touchGFX with a LPC mcu and we still use version 4.9.10 - non ST.
Could you help us to solve this problem.
We see that version 4.9.10 had a problem and we added as suggested
void NXP43XXHAL::endFrame()
{
while(dma.isDMARunning())
{
OSWrappers::tryTakeFrameBufferSemaphore();
}
HAL::endFrame();
}
But the problem wasn't solve.
We tryed to replace the osWaitForever with a delay of 400 but the problem now is that the code stay in a infinite loop in LockFreeDMA_QueueE in dma.c and I don't know how to solve this problem. The code works fine but the problem appear sometimes.
We works with touchgfx for years and we could not change our mcu. Please support us although we do not us a ST product.
Thank you !