|
这几天在测试emWin的MultiLayer功能,模拟器上工作很正常,移植到硬件上就不行了,会卡在GUI_SOFTLAYER_Enable一行。
不加这行是可以正常工作的。
具体的初始化代码如下:
void LCD_X_Config(void) {
GUI_SOFTLAYER_CONFIG aConfig[] = {
{0, 0, 240, 240, 1}, {0, 0, 240, 240, 1},
};
GUI_MULTIBUF_ConfigEx(0, 2);
GUI_DEVICE_CreateAndLink(DISPLAY_DRIVER, COLOR_CONVERSION, 0, 0);
LCD_SetSizeEx (0, XSIZE_PHYS, YSIZE_PHYS); LCD_SetVSizeEx (0, XSIZE_PHYS, YSIZE_PHYS);
LCD_SetVRAMAddrEx(0, (void *)frameBuffer); GUI_SOFTLAYER_Enable(aConfig, GUI_COUNTOF(aConfig), GUI_DARKBLUE);
}
GUI_conf.h 也已经定义 #define GUI_NUM_LAYERS 2
已经对照过手册了,初始化流程一致。硬件是想不到问题出在哪里。
PS:emWin的库是用的MDK中带的5.36f版本,硬件平台是MT2523.
请求大家帮助,谢谢~~ |
|