NXP emWin multilayer issue

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

NXP emWin multilayer issue

Jump to solution
1,304 Views
claudio_legena
Contributor I

Hello I've tried to configure the NXP emWin example for the i.mxrt1170 evaluation board as  multilayer, 

the following steps have been done:

1) in GUIConf.h set the  GUI_NUM_LAYERS 2

2) emWin_support.c configured in LCD_X_Config(void) :

 

pPointer = GUI_DEVICE_CreateAndLink(DISPLAY_DRIVER, COLOR_CONVERSION, 0, 1);
#ifdef ORIGINAL_FIRMWARE // modified by C.L.
LCD_SetSizeEx(0, LCD_WIDTH, LCD_HEIGHT);
LCD_SetVSizeEx(0, LCD_WIDTH, LCD_HEIGHT);
#endif
if (LCD_GetSwapXY()) {
LCD_SetSizeEx (0, LCD_HEIGHT, LCD_WIDTH);
LCD_SetVSizeEx(0, LCD_HEIGHT, LCD_WIDTH);
} else {
LCD_SetSizeEx (0, LCD_WIDTH, LCD_HEIGHT);
LCD_SetVSizeEx(0, LCD_WIDTH, LCD_HEIGHT);
}
LCD_SetVRAMAddrEx(0, (void *)VRAM_ADDR);
LCD_SetVisEx(0,1);
// set the layer 1
pPoint = GUI_DEVICE_CreateAndLink(DISPLAY_DRIVER, COLOR_CONVERSION, 0, 1);
if (LCD_GetSwapXY()) {
LCD_SetSizeEx (1, LCD_HEIGHT, LCD_WIDTH);
LCD_SetVSizeEx(1, LCD_HEIGHT, LCD_WIDTH);
} else {
LCD_SetSizeEx (1, LCD_WIDTH, LCD_HEIGHT);
LCD_SetVSizeEx(1, LCD_WIDTH, LCD_HEIGHT);
}
LCD_SetVRAMAddrEx(1, (void *)VRAM_ADDR);
LCD_SetVisEx(1,1);

but the layer 1 has never been created and the pointer returns weird data.... Has someone same issues? Is there  a specific library libemWin_M7.a configured just for one layer?

In the attached pictures the returns value for the Layer0 correctly created and Layer1 that doesn't work.


Thanks

 

Tags (1)
0 Kudos
1 Solution
1,297 Views
jeremyzhou
NXP Employee
NXP Employee

Hi,
Thank you for your interest in NXP Semiconductor products and for the opportunity to serve you.
NXP has provided the emWin library which supports the Multi-layer and multi-display, however, there are no similar demos that utilize the above feature in the SDK library.
After having a brief review of your code, I don't think it works since LCD_X_DisplayDriver is only able to handle layer 0.
The LCDIFv2 module supports up 8 layers, so the emWin is able to use the Multi-layer feature based on the LCDIFv2 module, however, to be honest, it'll cost time to implement the modification of the emwin_gui_demo_cm7 demo.
And I'll report the software demand to the SDK team later.
Have a great day,
TIC

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

 

View solution in original post

2 Replies
1,290 Views
claudio_legena
Contributor I

hi Tic thanks for your reply, of course we'll check for others solution, in order to use the multilayer features

0 Kudos
1,298 Views
jeremyzhou
NXP Employee
NXP Employee

Hi,
Thank you for your interest in NXP Semiconductor products and for the opportunity to serve you.
NXP has provided the emWin library which supports the Multi-layer and multi-display, however, there are no similar demos that utilize the above feature in the SDK library.
After having a brief review of your code, I don't think it works since LCD_X_DisplayDriver is only able to handle layer 0.
The LCDIFv2 module supports up 8 layers, so the emWin is able to use the Multi-layer feature based on the LCDIFv2 module, however, to be honest, it'll cost time to implement the modification of the emwin_gui_demo_cm7 demo.
And I'll report the software demand to the SDK team later.
Have a great day,
TIC

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------