tsandmann / freertos-teensy

FreeRTOS port with C++ std::thread support for ARM boards Teensy 3.5, 3.6, 4.0 and 4.1 (cortex-m4f and cortex-m7f)
95 stars 16 forks source link

ILI9341_T4 freezes at _waitUpdateAsyncComplete #28

Closed birdboat00 closed 2 months ago

birdboat00 commented 4 months ago

Hello,

i was using the library https://github.com/vindar/ILI9341_T4 with this freertos port.

The problem is, it freezes at https://github.com/vindar/ILI9341_T4/blob/d9bea487d0fa38fc52ffb2bf9e8efc7b827a1cbc/src/ILI9341Driver.h#L1433 for some time and then continues, even the SPI clock freezes (atleast the LED stops blinking).

I suspect the problem is the yield(); function. It works without FreeRTOS.

Does this FreeRTOS port support yield, or should I replace it with taskYIELD() or something else?

Best regards

tsandmann commented 3 months ago

Hello,

I've never used that library, so I can't really tell if it's compatible with FreeRTOS.

yield() should work in general, but it probably isn't what you want to have there if running on an RTOS. The issue sounds more like an incompatibility of some low-level drivers of that library with the FreeRTOS port.

You could try to replace yield(); with vTaskDelay(1);.

Best regards, Timo