完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
基于正点原子的阿波罗H743进行RTT的emwin移植。 屏幕是RGB屏幕,DMA控制,数据放在SDRAM,这部分单独测试没问题。 emwin数据也是存放在SDRAM。 基于正点原子的教程进行移植。 库是用的ST提供的libSTemWin_CM7_OS_wc16.a,非OS也测试过,也是不行。 执行过程中,执行到 GUI_Init(),在完成LDTC的初始化后,执行其他代码会出现系统崩溃的情况,调试信息如下。 请各位大神帮忙分析分析原因,谢谢! 因为emwin并非开源,所以我很难分析源代码进行原因排除。 |
|
相关推荐
6个回答
|
|
肯定是内存问题,不用去跟踪 emwin的源码,sdram 初始化到 heap 的部分内存和你分给 emwin 缓存的部分内存可能存在重复的。把你所有使用 sdram 分配的内存部分代码核查一遍,是不是有类似如下代码
#define LCD_LAYER0_FRAME_BUFFER EXT_SDRAM_BEGIN #define LCD_LAYER1_FRAME_BUFFER (LCD_LAYER0_FRAME_BUFFER + XSIZE_PHYS * YSIZE_PHYS * 2 * NUM_VSCREENS * NUM_BUFFERS) 这种直接定义一个内存地址的方式。或者其它使用 attribute 等指定内存分配方式。 这些都和内存堆冲突了 |
|
|
|
就当成普通 Hardfault 来查就行了。
|
|
|
|
这个错误貌似程序跑飞可能性比较多些,单步调试一下看看程序执行到哪里后跑飞的,然后再排查程序跑飞的问题。
|
|
|
|
emwin不是开源的库,而跑飞的原因正式执行了GUI_Init(),所以我才没办法具体分析哩!
|
|
|
|
加大给emwin的分配的内存,但是要根据你片子的大小定,别不改就拿来用,很容易挂掉的
|
|
|
|
不用去关心emwin内部,应该就是内存对接的时候出的问题,按照hardfault去排除问题,很快就出来了。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
798 浏览 0 评论
4836 浏览 0 评论
如何使用python调起UDE STK5.2进行下载自动化下载呢?
2622 浏览 0 评论
开启全新AI时代 智能嵌入式系统快速发展——“第六届国产嵌入式操作系统技术与产业发展论坛”圆满结束
2958 浏览 0 评论
获奖公布!2024 RT-Thread全球巡回线下培训火热来袭!报名提问有奖!
31763 浏览 11 评论
73100 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 22:02 , Processed in 0.717468 second(s), Total 82, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号