Jump to content
M3Michi

optimizing gdisp_lld_ILI9341 for STM32 SPI DMA

Recommended Posts

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.

Share this post


Link to post
Share on other sites

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)

 

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×