硬汉嵌入式论坛

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

将STemwin移植至STM32F429调用GUI_Init()进入HardFault handler

[复制链接]

7

主题

38

回帖

59

积分

初级会员

积分
59
发表于 2015-10-21 09:07:13 | 显示全部楼层 |阅读模式


将STemwin移植在F429上面后开启CRC校验,然后调用GUI_Init(),发现程序在进入该函数后便进入了HardFault handler函数,
1、我第一感觉是内存分配小了,于是将10*1024的内存分给emwin,结果还是进入HardFault handler,之前移植分配的内存比这小的多都没有导致这个问题,说明不是内存分配太小的问题
2、于是查看emwin手册,在emwin手册上面说GUI_Init()函数按顺序调用了GUI_X_Config()、LCD_X_Config()、LCD_X_DisplayDriver()这三个函数,我想如果把这三个函数中的内容都屏蔽掉使其成为空函数,那么虽然GUI_Init()此时已经没有任何用了,但是至少不会进入HardFault handler,于是将三个函数的内容都屏蔽了,结果还是进入了HardFault handler
3、会不会是因为硬件FPU上面错了,STemwin里面针对M4做了一些优化,一个就是浮点机制的加入,如是加入了硬件浮点机制,结果,唉

昨天弄了一天,实在不知道原因了,各位亲提供一些思考的思路吧
回复

使用道具 举报

680

主题

3479

回帖

5544

积分

论坛元老

积分
5544
发表于 2015-10-21 15:47:19 | 显示全部楼层
建议吧内存搞大一点
, 在就是吧keil 的系统优化设置为0 试试看
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-9 22:13 , Processed in 0.228735 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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