Another st7789 display driver, but probably not the one you need. #16198
easytarget
started this conversation in
Show and tell
Replies: 1 comment
-
Great work, pure software drivers are really good for testing and in some case the only solution without custom firmware, thanks for share |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I'm posting this because I've done all the work and it seems a shame not to.. And it's maybe a nice educational or casual use driver.
https://github.com/easytarget/st7789-framebuffer
As everybody knows RGB displays and Framebuffers do not (usually) mix. At any good resolution you run out of memory, and bigger displays take longer to refresh over the bus. Excellent non framebuffer firmware drivers already exist for these displays.
However.. for ... reasons .. I ended up creating a 'pure' framebuffer driver for ST7789 displays, it does not provide any additional drawing methods. I made it to be 'dropped in' to a project originally based on ssd1306 monochrome displays.
Subsequently I wanted to use this on a T-Display Touch; which has a i8080 parallel bus (and fast QSPI memory), In order to do this I had to work around the lack of a built in micropython i80 bus driver. Fortunately MPDisplay has a pure micropython i80 driver that @bdbarnett worked out; integrating the two was not difficult.
I ended up adapting a driver that originated with @russhughes into a simple and compact framebuffer driver with both I80 and SPI classes. It also has PWM brightness control, support for LSB or MSB colour word order and is acceptably fast.
This might be useful for adapting existing code to a new display (my use case) or just as a test / example for hardware before switching to something more competent. For the T-display I particularly like st7789s3 which can take full advantage f the fast bus.
Beta Was this translation helpful? Give feedback.
All reactions