Processing overhead of 565 colour format vs 888

I’m working on a project using a display driver that allows for either 24bit (888) or 16bit (565) colour (the ST7789 LCD driver). I was just wondering if anyone knows if the use of 565 colour format adds much processing overhead or not?

It’s something that I’d like to use within the MCU if possible, but if it adds a significant overhead then it’s something that can be done outside of the microcontroller (using an FPGA instead).

This is something that I’d like to try myself if I get the time, to quantify any differences, but it’d be good to hear if anyone has any insight into the matter.


RGB565 should be faster for 2 reasons:

  1. E.g. if you have a white background LVGL needs to set the color on fewer bytes. I.e. it mean less write operations.
  2. The rendered image is fewer bytes so it’s faster to send to the display controller. (Unless you use a parallel port to send one pixel in one transmission)

Very interesting, thanks!