硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2168|回复: 3
收起左侧

[emWin] emWIN multiLayer在硬件上跑不起来

[复制链接]

9

主题

113

回帖

145

积分

初级会员

积分
145
发表于 2017-5-18 15:02:41 | 显示全部楼层 |阅读模式
这几天在测试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.
请求大家帮助,谢谢~~
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115737
QQ
发表于 2017-5-18 15:19:26 | 显示全部楼层
这个是软件方式的多层配置,别搞这些了,基本没有价值,即使是STM32F429这种硬件支持双图层的,性能也是很捉急,还没有单图层多窗口方便。
回复

使用道具 举报

9

主题

113

回帖

145

积分

初级会员

积分
145
 楼主| 发表于 2017-5-18 15:59:33 | 显示全部楼层

回 eric2013 的帖子

eric2013:这个是软件方式的多层配置,别搞这些了,基本没有价值,即使是STM32F429这种硬件支持双图层的,性能也是很捉急,还没有单图层多窗口方便。 (2017-05-18 15:19) 
因为UI上面有需要啊,不用多图层还真不知道怎么弄。比如有些需要悬浮在窗口上的元素,在窗口滑动的时候,这些元素不能跟着动。用多窗口咋整啊?窗口重叠?透明窗口在最上面?元素画在透明窗口上?窗口焦点怎么处理?触摸消息怎么响应呢?[s:130][s:130][s:130]
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115737
QQ
发表于 2017-5-18 16:02:30 | 显示全部楼层

回 yanchao7788 的帖子

yanchao7788:因为UI上面有需要啊,不用多图层还真不知道怎么弄。比如有些需要悬浮在窗口上的元素,在窗口滑动的时候,这些元素不能跟着动。用多窗口咋整啊?窗口重叠?透明窗口在最上面?元素画在透明窗口上?窗口焦点怎么处理?触摸消息怎么响应呢?[s:130][s:130][s:130] (2017-05-18 15:59) 
单图层搞你这些应用绰绰有余。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-15 07:21 , Processed in 0.236762 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表