emWin进入hardfault

2019-07-21 04:02发布

问题:
emwin往button或者Image控件加载图片后,会在调用GUI_Exec进行画面更新时进入hard fault.

1、背景
公司产品要用STM32H750做产品,UI用emwin来做。前期为了方便,在原子的H743开发板上研究emwin,并实现了几个画面和弹窗,没有什么问题。
2. 问题产生
750的板子打回来了,经过一段时间的调试,到我GUI这里了。花了3天时间踩了各种硬件的坑,终于把屏点亮,emwin也移植过来了。做了个简单的画面(单 {MOD}背景+1个button),可以刷出来,以为终于没有问题了。然后我把UI切过来的图标转换后,往button上加载,emwin就在下一次调用GUI_Exec进行刷新时,进入hard fault.(PS:其他功能更能貌似都没有什么问题,可以做子窗口那些。只要是加载图片,包括往image控件上加载,就会错误)
3.说明
显示屏是用的600*1024,LTDC控制。使用了外部SRAM,共16M,3M(显存)+12M(动态分配)+1M(动态分配管理表),12M的动态分配里面拿了8M分配给emwin,所以内存是足够的。

求原子个和大神指点啊,大概会是什么问题啊。内存分配已经仔细看过了。会不会跟SDRAM的FMC时序参数有关啊,还是说迁移emwin的过程中漏了什么地方。。。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
candylife9
1楼-- · 2019-07-21 04:50
问题找到了,memory type导致的。用原子的内存保护函数就可以了。
1208
2楼-- · 2019-07-21 06:03
帮顶!
candylife9
3楼-- · 2019-07-21 06:39
原子哥哥,原子哥,原子,原,NULL
Psheng
4楼-- · 2019-07-21 11:44
那估计是图片的那段内存出问题了,用内部sram给图片分配内存看看 不要用const

一周热门 更多>