cancel
Showing results for 
Search instead for 
Did you mean: 

Problems with custom touchscreen (STM32F746g-Discovery)

MWetter
Associate III

Hello everyone,

I encountered a problem while modifiying the STM32F746G-Discovery board.

I modified it like this:

  • switched the 4.3" display to a 5" display (24 bit RGB--> RGB888, 800x480)
    • modified the LTDC settings to match the new display (Can there be an error?)
    • set the LCD-TFT clock to 38.4 MHZ (according to the datasheet)
  • used the touch controller FT5446 instead of the FT5336
    • modified the driver code (it's really similar)

Everytime I touch the display, I get some noises, but the touchscreen itself works completely fine. After lifting my finger off the display, the screen looks like it should.

See the video I added.

Has anyone a hint for me, what could be wrong?

Thank you very much!

4 REPLIES 4
Romain DIELEMAN
ST Employee

Hi,

Something to check would be the content of the framebuffers. Are working from the TBS for the STM32F746G-Discovery available in TouchGFX Designer or did you start your project from scratch ? Are you using the single framebuffer strategy or the double framebuffer strategy ? In the TBS it is set to double buffer, with the start address for the first framebuffer set to 0xC0000000 and the start adress for the second set to 0xC003FC00. This correspond to the size of one framebuffer: Height * Width * bpp/8 = 480 * 272 * 16/8 = 3FC00. In your case it would be 800 * 480 *24/8 = 11 9400 (which is quite big :grinning_face_with_sweat:, so make sure you actually have space for 2 buffers).

I remember something about Write Through cached memory and the function SCB_CleanInvalidateDCache () in STM32TouchGFXGeneratedHAL.cpp causing issues. Is it your case ? If yes, either change the memory to Write Back instead, or use SCB_CleanDCache() (by over writing the functions in STM32TouchGFXHAL.cpp).

/Romain

MWetter
Associate III

Hi,

at first thank you for the quick response.

I started the project from scratch. At the moment I am using the single buffer strategy.

I'll check your tips about the the function SCB_CleanInvalidateDCache () tomorrow. I'll let you know if that worked.

I checked the function "SCB_CleanInvalidateDCache", it's no issue, I think. I noticed that the flickering is only happening, if the screen changes/reloads (If I touch the screen without any buttons etc, the screen looks fine). What could it be? I think the external SRAM works fine too...

PFlor.2
Senior

would you be able to share the modifed driver files you used for the FT5446? I'm using the same chip on a design for the STM32H743 and having problems.

Thanks!!