I have an embedded RTOS system driving a display with ST7789V over uC's RGB565 interface. To save RAM, it would be nice to avoid the typical double buffering by having only one framebuffer in the uC and use the one in ST7789V as second buffer, just like you would do in 8080 mode. But is this possible?

In 8080 mode, you have no other chance, because the bus is too slow to drive a QVGA display with a good framerate directly, but the data sheet doesn't restrict the usage of the internal framebuffer to that mode. Why shouldn't it work to transfer the updated uC framebuffer with a single-shot RGB transfer to the ST7789V framebuffer?

Do you know such a usage, amybe with a different driver IC?


1 Answer 1


According to the ST7789V datasheet, it is possible.

The various interfaces go straight into display RAM: enter image description here

And the description for getting data into that RAM:

Section 8.7: The module has three kinds color modes for transferring data to the display RAM. These are 12-bit color per pixel, 16-bit color per pixel and 18-bit color per pixel. The data format is described for each interface.

And then for each interfacing type there are timing diagrams, including this for 5-6-5 RGB:

enter image description here

  • \$\begingroup\$ Thank you, that's exactly my impression: In the data sheet, I find no reason against it, but I can't get it to work (yet), but I don't know why. \$\endgroup\$
    – Philippos
    Commented Apr 13, 2023 at 5:51
  • \$\begingroup\$ Cam I suggest you edit the question and add circuit diagram and perhaps initialisation code? \$\endgroup\$
    – jonathanjo
    Commented Apr 13, 2023 at 6:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.