cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F429I-Discovery STemWim Helloworld example : how to rotate screen

Professional
Senior
Posted on June 01, 2018 at 14:34

Hello

i try to rotate the LCD of the STM32F429I-Discovery : print hello world rotated of 90� can can't do it.

i change the setting in LCDConf_stm32f429i_disco_MB1075.c without success :

//&sharpdefine LCD_SWAP_XY  1

//&sharpdefine LCD_MIRROR_Y 1

&sharpdefine XSIZE_PHYS 240

&sharpdefine YSIZE_PHYS 320

Has anyone a solution ?

thanks

#helloworld #rotate-90� #stm32f429i-discovery #stemwim
3 REPLIES 3
john doe
Lead
Posted on June 01, 2018 at 14:49

Look in LCDConf_CmdMode_TE.c and search it for 'LCD_ORIENTATION_LANDSCAPE' and change it to _PORTRAIT

Posted on June 04, 2018 at 09:48

Hello,

thank you very much for your reply, but there is no such file for STM32F429I-Discovery under STM32Cube_FW_F4_V1.18.0 repository folder.

It seems that LANDSCAPE/PORTRAIT can be configured for STM32F469 disco or eval (call to  OTM8009A_Init(OTM8009A_FORMAT_RBG565, LCD_ORIENTATION_LANDSCAPE);) but can't find the same call for STM32F429 Disco.

Have you any idea ?

Thanks

best regards

Posted on June 07, 2018 at 15:23

Hello

c.trichet

,

In fact, for the DSI displays (OTM8009A) their hardware supports a rotation of 90 ° to have a picture LANDSCAPE or PORTRAIT (case of

STM32F469

). But,the ILIxxxx that is in the board STM32429 (

DPI interface

) does not support this feature.

Software rotation using STemWin's rotating LCD drivers for example will consume time and memory.

As known,the DPI is used to interface with a display without a framebuffer. The pixel data must be streamed real time to the display whichrequire to be configured using serial communication interfaces such as I2C or SPI.

You can monitor the framebuffer and

sending the display buffer to it over SPI

interface

as well.

so, to

rotate the screen on the STM32F429-Disco, try setting the

Layer0 Display Driver to GUIDRV_LIN.

#define DISPLAY_DRIVER_0 GUIDRV_LIN_OSX_16

The 'GUIDRV_Lin' section in the emWin user manual listed th

e according macros and configuration

which should be used for selecting the desired driver orientation.

Another possibility to set up the display orientation is to call GUI_SetOrientation(). Using this function is recommended if the display driver can not be used. Y

oumay refer to the section'5.1.2 Compile-time configuration'

in the emWin user manual

for more details onthepossible display orientations.

Hope this bring you some helps.

With Regards,

Imen

When your question is answered, please close this topic by clicking "Accept as Solution".
Thanks
Imen