cancel
Showing results for 
Search instead for 
Did you mean: 

The screen is white. Please help me.

newbiee
Associate II

Hello, I am a beginner developer who is new to STM32 with TouchGFX.

I am currently trying to display the GUI configured in TouchGFX Designer on a custom board consisting of an STM32F429IGT6 MCU and IS42S16400J - 7TL SDRAM.

I have completed all GPIO settings while reviewing the circuit diagram, and also completed settings for FMC and LTDC in CubeMX. I have also written the SDRAM initialization code in the main.c file based on the example.

The issue is that the screen remains blank.

After reviewing various materials, I believe the settings are correct, and I have also completed the PCB power-on test.

It seems like the SDRAM is not initializing properly. Please let me know if there is anything I might have missed.

6 REPLIES 6
newbiee
Associate II

For reference, TouchGFX Designer version 4.25.0, CubeIDE version 1.18.1, and CubeMX version 6.14.0 are currently in use. The attached photo is a screenshot of the memory view taken during debugging. It appears that the values are not being read correctly.
I set the start address to 0xD0000000 using SDRAM bank 2. Is this correct?
Thank you.

memoryView.png

GaetanGodart
ST Employee

Hello @newbiee and welcome to the community!

 

Have you seen this guide : https://support.touchgfx.com/docs/development/board-bring-up/how-to/04-enable-external-ram

If you say that SDRAM is not initialized properly, you should try to fix it.

One more thing you could do it to not use it at all in your project to check if it was the issue.

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)
newbiee
Associate II

Hello Gaetan Godart, I watched your TouchGFX Designer lecture, and it was very helpful. Thank you!

I have checked the link you shared and also reviewed the FMC_SDRAM example code provided by ST for the STM32F429I.

I set the values based on the SDRAM and LTDC data sheets, but I'm not sure if I did something wrong or if I missed something in the SDRAM initialization code...

It's been two weeks and the screen still isn't working, which is really frustrating...

Oh, and I tried to modify the value in the memory view, but an error occurred as shown in the attached photo.

error.png

Hello @newbiee ,

 

Have you been able to isolate the memory usage to check that it works?
Have you tried a project that doesn't use external memory?

Are you trying to use TouchGFX yet or are you just trying to control the screen and get it solid red?

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)

Write test code independently of TouchGFX

Test the SDRAM, perhaps make a "MEMTEST" type application walking patterns in the memory to prove it all works, retains, and is addressable.

Test the LTDC on internal memory, I think it just loops in a circular fashion, so you should be able to test with a smaller frame buffer, and solid colour patterns. FLASH might also be a viable source, you've got 2MB of that, it'll give you a colourful hash/tartan type pattern, but will be non-white if the timing is reasonably solid.

White is indicative of the display not being initialized, or timing is way off. Bright white, that at least the back-light is ON.

Get a logic analyzer or scope on the timing / sync signals. Compare those to the display datasheets.

Check LCD's controller setup/initialization to other MCU examples, or those provided by the display vendor.

Perhaps engage with contractors with bring-up experience if that's something you lack.

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