M3Michi Posted November 22, 2018 Report Posted November 22, 2018 I tried uGfx but its to slow. I started to optimize the ili9341 lld. i switched spi to 16bit, wrote functions for Hardware clear, fill & bitfills with DMA. Speed is fine now. Had a hard time to initialize the lcd with 16bit spi. Now i init the lcd with 8bit spi and switch to 16bit after init is done. Now i want to try to read back from display, how can i test? What else could be done to speed things up? Thanks for your uGFX.
M3Michi Posted November 24, 2018 Author Report Posted November 24, 2018 I can read from the display, AA is working fine. Reading requires 3x8bit transfer per pixel. This is weired because when you write you need to write 16bit per pixel. Reading happends in the slowest possible way. Pixel by pixel using gdisp_lld_get_pixel_color. gdisp_lld_read_start, gdisp_lld_read_color and gdisp_lld_read_stop is never been used. Is this to be expected? I have GDISP_HARDWARE_STREAM_READ defined TRUE. How to use streaming for reading ? I will try to change the setting for the ILI (RIM). Quote RIM: Specify the RGB interface mode when the RGB interface is used. Quote 1 101 (65K color) 6- bit RGB interface (3 transfer/pixel) Quote 0 101 (65K color) 16- bit RGB interface (1 transfer/pixel)
M3Michi Posted November 25, 2018 Author Report Posted November 25, 2018 My CUBEMX generated Makefile project using spi dma ili9341. I use Visual Studio Code, you may want to edit the path to make,gcc and stcubeprogrammer in settings.json. uGFX_STM32f103.7z
Joel Bodenmann Posted December 7, 2018 Report Posted December 7, 2018 Thank you for sharing this - much appreciated!
VsTimf Posted December 12 Report Posted December 12 Hello! Sorry for using an old thread, but I'm running into the same performance issue as M3Michi. I would like to use SPI DMA in my project with STM32F4 and ili9341. I can imagine the architecture of the solution, but having an example of implementation from M3Michi I would do it much faster. Could you please update the link to M3Michi's project or publish his implementation of the "gdisp_lld_ILI9341" driver? I sure this example would be very useful for everyone who want to use combination of DMA and ili9341 in STM32. Thanks for your uGFX!
Joel Bodenmann Posted December 13 Report Posted December 13 Hello & Welcome to the µGFX community! On 12/12/2024 at 10:10, VsTimf said: Could you please update the link to M3Michi's project or publish his implementation of the "gdisp_lld_ILI9341" driver? Have you checked out the attached archive in @M3Michi 's last post?
VsTimf Posted December 13 Report Posted December 13 Yes, thank you (and of course M3Michi) very much! I ported M3Michi's code to STM32F4 and now everything works much faster!
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now