硬汉嵌入式论坛

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

[emWin] emwin内使用函数WM_SendMessageNoPara发送自定义消息类型出现了较大延时响应

[复制链接]

16

主题

34

回帖

82

积分

初级会员

积分
82
发表于 2021-12-1 15:44:03 | 显示全部楼层 |阅读模式
请教下硬汉哥,我在按键扫描事件中添加了发送自定义消息类型的功能,例如我按下某个实体按键,会用WM_SendMessageNoPara这个函数给我的父窗口发送自定义的消息类型,来达到屏幕背景色转换的功能(实际就是您教程里面关于自定义消息的按键实现),但是屏幕会延时大概五秒才变背景颜色,是invalidwindow这句再到重绘窗口这里会占用较长时间吗?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115831
QQ
发表于 2021-12-1 15:47:26 | 显示全部楼层
方便的话,发点你的实现代码看下。
回复

使用道具 举报

16

主题

34

回帖

82

积分

初级会员

积分
82
 楼主| 发表于 2021-12-1 20:17:16 | 显示全部楼层
eric2013 发表于 2021-12-1 15:47
方便的话,发点你的实现代码看下。

我用的是freertos的操作系统,建立了几个任务,按键,灯还有触摸和emwin的这几个任务。我觉得这个应该和我移植emwin的底层驱动没什么关系嘛,会不会有可能和我GUI_Conf.c里面分配的动态内存的大小有关呢,麻烦硬汉哥指点一下,多谢

key.c

207 Bytes, 下载次数: 4

emwindemo.c

1.78 KB, 下载次数: 5

回复

使用道具 举报

13

主题

40

回帖

79

积分

初级会员

积分
79
发表于 2021-12-2 08:33:47 | 显示全部楼层
iuuiangela 发表于 2021-12-1 20:17
我用的是freertos的操作系统,建立了几个任务,按键,灯还有触摸和emwin的这几个任务。我觉得这个应该和 ...

你可以在设置背景色函数的后面添加GUI_Clear();试一试
回复

使用道具 举报

16

主题

34

回帖

82

积分

初级会员

积分
82
 楼主| 发表于 2021-12-2 09:11:11 | 显示全部楼层
ygrong_2008 发表于 2021-12-2 08:33
你可以在设置背景色函数的后面添加GUI_Clear();试一试

谢谢回复,这里我是加上的,代码把这句漏下了
回复

使用道具 举报

16

主题

34

回帖

82

积分

初级会员

积分
82
 楼主| 发表于 2021-12-2 10:13:42 | 显示全部楼层
刚刚我又调试了下,发现我按下按键发出自定义消息到在对话框内自定义消息这个case里面接收到消息这个时间都很快,就是WM_InvalidateWindow再到WM_PAINT中间有个六秒延时,再麻烦硬汉哥帮我找找问题,多谢
回复

使用道具 举报

16

主题

34

回帖

82

积分

初级会员

积分
82
 楼主| 发表于 2021-12-2 17:02:34 | 显示全部楼层
问题找到了,是我分配给emwin任务的优先级比较低,和别的任务一样,把优先级调高后速度快了很多
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115831
QQ
发表于 2021-12-2 17:50:58 | 显示全部楼层
iuuiangela 发表于 2021-12-2 17:02
问题找到了,是我分配给emwin任务的优先级比较低,和别的任务一样,把优先级调高后速度快了很多

谢谢告知最终原因。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-21 12:20 , Processed in 0.311791 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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