野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10594|回复: 12

[emWin] 野火emWin例程的一些Bug

[复制链接]
发表于 2014-7-27 15:59:25 | 显示全部楼层 |阅读模式
发现野火的emWin例程做得真的是bug多多,而且这些都不是无伤大雅的bug。
1.经常导致死机,无缘无故,特别是在点图标的时候
2.星期换算不对,我把2014/7/27输入他居然跟我说今天是星期四
3.图标点击不灵,有时候很不灵。
4.在调整时间的界面,你再去点击右上方的那个时间,肯定死机。
欢迎大家补充,不知道什么时候火哥可以传个没有这些bug的程序上来。
回复

使用道具 举报

 楼主| 发表于 2014-7-27 16:09:18 | 显示全部楼层
发现可能是双向链表的问题,干脆自己现在来把双向链表给换了。
回复 支持 反对

使用道具 举报

发表于 2014-7-28 11:14:43 | 显示全部楼层
关于那个星期换算问题,早上我测试了一下,确实不正常,现在测试却没有问题了,不知道为什么,你下载这个链接里的程序重新测试一下,我特地下载了测试也没问题:http://git.oschina.net/wildfireteam/wildfire_stm32_emWin

图标点击不灵估计是你点击的时候有滑动的倾向,如果滑动了它会禁用点击图标,而改成换页。

点击图标的时候我这边很少死机,把具体的情况说明一下。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-28 14:44:41 | 显示全部楼层
flyleaf 发表于 2014-7-28 11:14
关于那个星期换算问题,早上我测试了一下,确实不正常,现在测试却没有问题了,不知道为什么,你下载这个链 ...

谢谢火哥回复,
1.星期我今天也是没事了。
2.图标点击不灵的现象我发现去掉那段屏蔽图标的代码后,发现灵多了,都是滑动的时候却会不小心按到图标,这个矛盾我不知道怎么解决。
3.死机就是随机的,也说不出什么规律。
回复 支持 反对

使用道具 举报

发表于 2014-7-28 14:47:27 | 显示全部楼层
12ycli 发表于 2014-7-28 14:44
谢谢火哥回复,
1.星期我今天也是没事了。
2.图标点击不灵的现象我发现去掉那段屏蔽图标的代码后,发现 ...

嗯,那时调这个程序也是找不到解决办法才这样搞的,不然每次都会误触发。

那个在调整时间界面再次点击状态栏的时间框是不会死机的,它只是再弹出一个调整时间的窗口。

大家一起来找bug
回复 支持 反对

使用道具 举报

发表于 2014-7-28 15:01:47 | 显示全部楼层
flyleaf 发表于 2014-7-28 11:14
关于那个星期换算问题,早上我测试了一下,确实不正常,现在测试却没有问题了,不知道为什么,你下载这个链 ...

死机情况是经常出现的,只要对这些应用图标来回多点几次,大概十多二十次这样就会死机,
每次死机都会进入这个中断。void HardFault_Handler(void)
{
       
        printf("\r\n hardfalut err  \r\n");
  /* Go to infinite loop when Hard Fault exception occurs */
  while (1)
  {
  }
}
回复 支持 反对

使用道具 举报

发表于 2014-7-28 15:09:24 | 显示全部楼层
VISA 发表于 2014-7-28 15:01
死机情况是经常出现的,只要对这些应用图标来回多点几次,大概十多二十次这样就会死机,
每次死机都会进 ...

可能是打开了太多窗口内存不够了?
回复 支持 反对

使用道具 举报

发表于 2017-11-4 12:50:39 | 显示全部楼层
在桌面窗口的空白出点击一下,窗口最上方的时间不走了
回复 支持 反对

使用道具 举报

发表于 2017-11-4 13:53:06 | 显示全部楼层
回复

使用道具 举报

发表于 2017-11-4 14:19:31 | 显示全部楼层
:):):):)
回复

使用道具 举报

发表于 2017-11-4 17:48:43 | 显示全部楼层
本帖最后由 阳道爷 于 2017-11-4 17:51 编辑

已解决,其实很简单
C:\Users\Administrator\Pictures\几个小时.png
回复 支持 反对

使用道具 举报

发表于 2017-11-4 17:53:18 | 显示全部楼层
阳道爷 发表于 2017-11-4 17:48
已解决,其实很简单

是UserApp_Flag的问题,图片上传不了,就是在中间窗口switch 里 有个 default:break; ,在中间加上一句  UserApp_Flag = 0; 。
回复 支持 反对

使用道具 举报

发表于 2017-12-8 10:17:49 | 显示全部楼层
可以设个标志位,当点击时间新建窗口后,标志位置1,这样建立窗口在初始化时判断如果是0就创建,是1就退出,避免多次创建窗口导致堆溢出
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-16 16:52 , Processed in 0.037033 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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