Skip to main content
A.W.
Associate
August 22, 2022
Question

Hi, I have a problem with communication between STM32F76ZGT and tft LCD using FMC.

  • August 22, 2022
  • 8 replies
  • 7326 views

 All connections are correct but only the backlight is turned on. On another processor, the following code works fine. I attach the entire project and the display connection diagram. Thank you in advance for your help.

This topic has been closed for replies.

8 replies

waclawek.jan
Super User
August 22, 2022
A.W.
A.W.Author
Associate
August 22, 2022

STM32F429ZIT

waclawek.jan
Super User
August 22, 2022

Then it may be the same case.

Remap the static bank of FMC, and modify software accordingly.

JW

A.W.
A.W.Author
Associate
August 23, 2022

So in the main function I called the HAL_EnableFMCMemorySwapping () function;

and I changed the addresses from 0x60000000 to 0xC0000000 and unfortunately it did not change anything.

A.W.
A.W.Author
Associate
August 23, 2022

So in the main function I called the HAL_EnableFMCMemorySwapping () function;

and I changed the addresses from 0x60000000 to 0xC0000000 and unfortunately it did not change anything.

waclawek.jan
Super User
August 23, 2022

It's then the case of observing the bus, and other usual debugging steps.

Maybe you want to try to start a new project on the 'F7. I don't use TouchGFX nor Cube.

JW

A.W.
A.W.Author
Associate
August 24, 2022

I started a new project, wrote new code and it's still doesn't work. maybe addresess are wrong for my fmc configuration. I tried 0x60000000/0xC0000000 for command and 0x60200000/0xC0200000 for data. LCD Register Select pin is connected to A20 pin. I attached fmc config file.

I don't have any idea, what can be wrong.

HAndr.1
Associate
August 29, 2022

It didn't work for me when I tried to use a single framebuffer strategy. When I started using a partial framebuffer strategy everything worked. I still can't quite figure out why it doesn't work with the single framebuffer strategy, maybe because commands are also sent to the display over the FMC interface, requiring manual data transfer. Otherwise, the remap is mandatory. Let those in the know tell.

A.W.
A.W.Author
Associate
September 2, 2022

0693W00000SuNSCQA3.jpg0693W00000SuNS7QAN.jpgWhen remap is the default so base address is 0x6000000, it only wrote data to the first memory group when I called HAL_EnableFMCMemorySwapping ();

and changed the address to 0xC0000000 Nothing is typed into the cells. I have no idea why that is

waclawek.jan
Super User
September 2, 2022

Read out and check content of relevant register, SYSCFG_MEMRMP.

Are you sure the connected LCD controller works as a static memory, i.e. that you can simply read back what you've written to it?

JW