Color depth incompatibility on esp_lcd

rubemjrx
Posts: 1
Joined: Sun Nov 20, 2022 3:55 pm

Color depth incompatibility on esp_lcd

Postby rubemjrx » Sun Nov 20, 2022 5:25 pm

Hello,
I'm developing a project where I need to control, among other things, an LCD display with a SSD1963 controller, and I can only spare 8 GPIO pins for it's parallel bus. With that established, using an 8 bit bus the controller will take RGB888 data (page 17 of the datasheet).
The problem is: the LVGL library, which I'm pretty set on using, is currently unable to provide a pixel buffer in RGB888, which makes sense as 24 bit data isn't ideal for memory alignment on a 32 bit system. It can provide the buffer in ARGB8888 or RGB565, though.

The most immediate solution would be to "translate" the buffer to the desired encoding, but that would take a lot of cpu cycles and memory, both of which I'm not sure I have to spare. If I'm doing that there is no point in using esp_lcd. (maybe I'm wrong and this IS a reasonable solution?)

Key question: is it possible for me to reconfigure the esp_lcd module to either skip the Alpha byte of ARGB8888 or "decode" RGB565? Maybe there is a better solution I'm not thinking of?
Thank you!
Rubem Bezerra.

Who is online

Users browsing this forum: pineapple678 and 128 guests