White screen after checking "Generate peripheral initialization as a pair of '.c/.h' files per peripheral" in CubeMX
I have an issue with TouchGFX on H750B-DK board.
After I create a sample project in TouchGFX and import it into CubeIDE, I can then flash it to my board with no issues. But the project generated by TouchGFX is very messy (everything put into main.c), so I would like to check the below option in CubeMX:
But with this option enabled the project suddenly stops working (TouchGFX task doesn't enter the infinite for loop). Also, after I uncheck it and flash it again, it still doesn't work, which is interesting because in this state the project should be the same as at the beginning, which worked.
I debugged it and found out that the function backPorchExited() never returns. I can go as far as HAL::endFrame() in TouchGFXGeneratedHAL.cpp, but when I step into this function the debugger hangs (enters a state as if I pressed run with no breakpoints). When I pause it, I find myself in portTASK_FUNCTION() in tasks.c, running vApplicationIdleHook() perpetually. Concurrently the second task, which is created automatically by TouchGFX, enters infinite for loop without issues (it's an empty task though).
Could anyone please help me with this?