请选择 进入手机版 | 继续访问电脑版

硬汉嵌入式论坛

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

[emWin] emwin设置100ms在WM->PAINT消息里实现图案绘画,过一段时间后死机

[复制链接]

1

主题

3

回帖

6

积分

新手上路

积分
6
发表于 2021-10-21 12:49:16 | 显示全部楼层 |阅读模式
各位老兄们。。请教一个emwin的问题。就是在窗口wm->paint消息里面实现一些图案绘画,100ms执行一次WM_Paint(pMsg->hWin); 短时间都正常的,跑个1到2个小时整个就死机了。。不知道哪里出问题了。下面图片是WM->PAINT消息里的代码。。。老兄们帮忙看看。感谢。
FEAMV%[9~BZQ_)OHH%N4HVO.png B~25T`QC6%C)25OUYW9A}5E.png
回复

使用道具 举报

3

主题

328

回帖

337

积分

高级会员

积分
337
发表于 2021-10-21 14:07:39 | 显示全部楼层
楼主自己实现一个抗锯齿的画线函数看看?emwin自带的画线函数满足不了你吗?
回复

使用道具 举报

1

主题

3

回帖

6

积分

新手上路

积分
6
 楼主| 发表于 2021-10-21 15:37:53 | 显示全部楼层
glory 发表于 2021-10-21 14:07
楼主自己实现一个抗锯齿的画线函数看看?emwin自带的画线函数满足不了你吗?

主要是要有显示范围限定,就自己写了一个
回复

使用道具 举报

330

主题

2022

回帖

3017

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3017
发表于 2021-10-21 16:15:46 | 显示全部楼层
本帖最后由 caicaptain2 于 2021-10-21 16:16 编辑

你这个思路比较奇怪,emwin一般使用GUI_Exec()来执行窗口的管理和绘制,WM_Paint不是定时执行的。 最多也是使用invalide这个函数来触发消息,但是WM_Paint的执行时刻也是窗口管理器自己处理。
回复

使用道具 举报

0

主题

213

回帖

213

积分

高级会员

积分
213
发表于 2021-10-21 22:14:48 | 显示全部楼层
最好是接上调试器,看看死机的时候是死在什么地方了,是光GUI死了还是整个程序死掉了
回复

使用道具 举报

1

主题

3

回帖

6

积分

新手上路

积分
6
 楼主| 发表于 2021-10-23 12:50:03 | 显示全部楼层
caicaptain2 发表于 2021-10-21 16:15
你这个思路比较奇怪,emwin一般使用GUI_Exec()来执行窗口的管理和绘制,WM_Paint不是定时执行的。 最多也是 ...

因为这个图案是根据数据变的,我是100ms刷新一下数据,老兄,不然有啥方法可以定时刷新一下界面的吗?一般emwin都怎么实现啊
回复

使用道具 举报

1

主题

3

回帖

6

积分

新手上路

积分
6
 楼主| 发表于 2021-10-23 12:51:23 | 显示全部楼层
regbbs 发表于 2021-10-21 22:14
最好是接上调试器,看看死机的时候是死在什么地方了,是光GUI死了还是整个程序死掉了

跑个1  2小时才会死机,应该是GUI死了。
回复

使用道具 举报

0

主题

213

回帖

213

积分

高级会员

积分
213
发表于 2021-10-23 19:45:17 | 显示全部楼层
hutuxiaojie 发表于 2021-10-23 12:50
因为这个图案是根据数据变的,我是100ms刷新一下数据,老兄,不然有啥方法可以定时刷新一下界面的吗?一般 ...

还是,想办法定位到底是哪里死了,不然你这样根本没办法分析呃。
用segger的ozone吧,等界面死掉了,用这个连接上去看看死哪里了
回复

使用道具 举报

18

主题

114

回帖

168

积分

初级会员

积分
168
发表于 2022-9-12 22:25:21 | 显示全部楼层
我现在的和你的情况有点类似,屏幕上弄了个状态栏,定时器两秒一次,在case WM_PAINT:中显示时间,电量图片这些。时间不定,有几分钟就出了的,也有几十天才出,具体就是定时器不能进了,GUI本身也没挂掉,可以切换窗口这些的。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 10:39 , Processed in 0.263319 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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