cancel
Showing results for 
Search instead for 
Did you mean: 

[STM32f746-discovery]issue of useing different lcd screen

AAhar
Associate III

hi i am using the STM32f746-discovery development board and i want to connect a 800 x 800 screen. I haven't yet received the screen I ordered ,but i started to make the application on 800x800 resolution .

everything runing good on the 480x272 (half window), but when i tried to change the resolution in the cube to 800x800 in the ltdc tab and in the graphics tab , the application start to run with a low frame rate and everything became slowley.

i guess the cause is that now the mcu have many more pixels to fill ,

so i tried to rise the clock for the ltdc in the clock tabs ,it seems to be fine at the begining but after few windows the app crashed. 

so i tried a different way , my screen size is 3.4" and my pictures are not complexity , 

so my questions are:

1)can i work with a resolution of 400x400 on a screen of 800x800 and still to be able to see everything on the same size ?

2) there is other way to handle that issue?

3) does the hardware have the capebility to that ?

thanks 

Avi.

7 REPLIES 7
Martin KJELDSEN
Chief III

Hi,

Depending on the complexity of your application 800x800 is a lot for an F7 to handle. It's possible you won't get satisfactory behavior.

I don't fully understand your questions. Can you rephrase?

/Martin

hi Martin thank you for response,i am asking is there a way that the mcu will act like he have a 400X400 screen and the app will be at the same size but in low resolution (on the 800x800 screen).

or do you have some ideas how can i try to handle it 

thanks 

Hi @AAhar​,

I don't think there is a good way of handling that. You would need some additional code that transforms the default framebuffer format (x bpp * dimensions) to a new format to blow up the framebuffer from 400x400 to 800x800. That would be further costly unless it was something possible in hardware.

Can i see your application? How complex is it? Try reducing to 16-bpp if you're not running that. What kind of application are you trying to do? 8-bit is also an option for the next release.

/Martin

the application is a GUI for a driver amplifier using some gpio and uart,it have black background in all of the screens and white text, has 11 screens ,the most complex color is gold and a gradient of blue ,there are some swipeing action in some screens ,keyboard and circular progress.

the only animation is when you swipe list or change value at circular progress or move from screen to screen.

some questions:

1) if i did the application in 24bbp at simultor mode , can i change it to 16bbp easily?

(i saw the function just in creating new project)

2)can you recomend me of a development board that can run 800x800 and it work with touchgfx ?

2.1) Or hardware change that i can do when i am editing my circuit?

thanks a lot 

Okay, if you're using animated screen transitions i can definitely see this being a heavy load. You could try using a cover transition instead and see if you like it - It performs better than a slide transition (except until the very end where they are identical) since all the pixels are being moved).

You can change the configuration by changing the following :

1) in the .touchgfx file:   "SelectedColorDepth": 16

2) In the config/gcc/app.mk or config/msvs/Application.props change 24 to 16.

3) In your BoardConfiguration.cpp you must use LCD16bpp instead of LCD24bpp class

This will cause the designer to call the image converter with the correct parameters.

Let me know if you're having issues,.

/Martin

If you want to move that much data you could try going H7 for more processor power. The F7s struggle with achieving really high performance even with 800x480 displays.

/Martin

ok ,thank you very much and have a good weekend.