cancel
Showing results for 
Search instead for 
Did you mean: 

LTDC support

b1aze
Associate II

Hi i am working with LTDC with STM32F429ZI Discovery -1 board with onboard LCD. I really want to drive a external LCD RGB display without An ic controller by utilising the Internal LTDC hardware inside the MCU . Can you please give some support on this

6 REPLIES 6
MM..1
Chief III

Yes doit.

What kind of support? It's basically a circular DMA of the frame buffer which would come out of the SDRAM. It outputs the the R G B parallel pin, so you'd have to remove the display and wire your own up.

Resolution up to about 1.3Mpixel

You just have to set the clocking and horizontal/ vertical line timings.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

my RGB display does not have a buck boost converter nor a controller iC , so to give power i am using DC adapter with 12 v to enable backlight , and for data and clock i am using LTDC hardware in 16 bit mode. connections are made with jumber cables from my dev board to LCD , and when i turn it on   i am getting a black screen , and when i power off it turns white so that means LTDC may be working .  but i also have a framebuffer stored in external ram and that address is passed to LTDC so i should see some colors on the display but right now i am only seeing black screen.

b1aze_0-1762678738727.png

LTDC timing and clock frequency are configured using this datasheet of my display .

b1aze_1-1762678819793.png  

b1aze_3-1762679076786.png

 

 also dma is too configured for this 

b1aze_2-1762678850775.png

but no matter what i do i am getting black screen , 

please tell me if it is a connection issue(i triple checked it), or grounding issue (because when i touch the display casing and touch the floor the display kinda flickers) , or framebuffer is  not  being stored in external ram or LTDC is not reading from external RAM.

 

DMA2D is here irelevant. Primary condition is external RAM is ok working. Better is make first testing in internal RAM. Use layer 0 windows 100x100 px and create framebuffer in internal ram... Set background colors not black for testing. Show here your layer config. For example RGB565 require setup right alpha nums.

now i changed to 100x100 resolution to match the internal RAM 

b1aze_0-1762699667990.png

b1aze_1-1762699688738.png

b1aze_2-1762699717127.png

   buffer start adddress set to internal RAM address also changed the alpha constant to 255 still not working

edit : probably issue with the external RAM , i tried with some GDB and with some breakpoints , if i store the framebuffer in external ram i get hardfault_hadler , if i change to internal ram gdb is running okay , so i think issue is with external RAM.

 

 

James_Walker
Associate II

Hi! Yes, the STM32F429ZI has an internal LTDC (LCD-TFT Display Controller) that can directly drive an external RGB interface display — you don’t necessarily need an external display controller IC, as long as your LCD supports parallel RGB signals