Saturday, April 21st 2018, 11:24pm UTC+2

You are not logged in.

  • Login
  • Register

NOS

Beginner

Date of registration: Mar 7th 2018

Posts: 2

1

Thursday, March 8th 2018, 6:05pm

Virtual Screen API on STM32469I-DISCO

Hello all,

I'am trying to use the virtual screen API on that board.
Extended LCDConf.c to use 2 virtual screens (but only 1 Buffer, 1 Layer). But there is no result on GUI_SetOrg(0, 480). The first screen keeps displayed!?

Harry

SEGGER - Schoenen

Super Moderator

Date of registration: Aug 13th 2015

Posts: 561

2

Friday, March 9th 2018, 2:07pm

Hi,

I'm not sure why it is not working.

Does the virtual screen gets initialized properly?

in LCD_X_Config() you should have a call like this:

C/C++ Source code

1
LCD_SetVSizeEx(0, XSIZE_0, YSIZE_0 * NUM_VSCREENS);


Further your framebuffer should be large enough, but I don't think that this is the cause of this issue.

Regards
Sven

NOS

Beginner

Date of registration: Mar 7th 2018

Posts: 2

3

Monday, March 12th 2018, 9:08pm

Hello again :-)

Looks like I'm the first one with this problem...

OK. I'm talking about this example:
STM32Cube_FW_F4_V1.19.0\Projects\STM32469I-Discovery\Applications\STemWin\STemWin_HelloWorld

...using the AC6-Toolchain (no changes...). LCD_X_Config is being called with the expected values!


- Changes in LCDConf_stm32469i_discovery.c:
------------------------------------------------------

#define NUM_BUFFERS 1 /* Number of multiple buffers to be used */
#define NUM_VSCREENS 2 /* Number of virtual screens to be used */


- Changes in BASIC_HelloWorld.c:
---------------------------------------
#define DISP_X 800
#define DISP_Y 480

volatile int hx;

void MainTask(void) {
GUI_Clear();
GUI_SetFont(&GUI_Font20_1);
GUI_DispStringAt("Virtual screen 1.4", DISP_X - 140, DISP_Y - 40);
GUI_DispStringAt("Virtual screen 2.3", 20, DISP_Y + 20);
GUI_SetOrg(0, DISP_Y);
while(1) {
hx++;
}
}

Compiles, links, debugs without problem, but: The first screen keeps displayed!?

Greetings Harry