ILI9341: Speeding up printing

 Printing stuff  with the ILI9341 over SPI is a bit slow.

After looking into it, the main culprit is the SPI+DMA setup/teardown time, which takes about the same time as the transfer itself for small chunks.

So let's add a little cache to buffer writing for a given glyph and do a lot less transactions over SPI.

With a 512 bytes cache the result are pretty good :



This is the time take to print "0123456789" on the screen in milliseconds, using a GD32F303 @ 72 Mhz.

- No spi means we compute the bitmaps , but don't send it over SPI

- Spi is the regular code, without cache

- Spi/cache is the regular cache with a writing cache


Nb: Size 18 font is compressed, size 32 is not, that's why it may seem inconsistent.






Comments

Popular posts from this blog

Component tester with STM32 : Part 1 ADC, Resistor

Fixing the INA3221

INA3221, weird wiring