你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

求助!!stm32f100+STLINk调试老是出现HardFault

[复制链接]
山月知 提问时间:2016-3-7 17:39 /
求助各位,我刚接触STM32,利用keil+stlink实现led点灯功能,然后总是经常进入HardFault Handler中,
有时候是还在systeminit()时就进入,有时候是进入main函数后,这几天看了些文档以及网上一些相关资料,依旧没有办法解决。。
1.png
2.png
3.png
能不能麻烦各位抽空看看,多谢多谢!
收藏 评论10 发布时间:2016-3-7 17:39

举报

10个回答
liu553824989 回答时间:2016-3-9 08:43:49
之前我也出现这样的问题,可以先按照前辈们的想法先查找问题。不过我也说说我之前遇到的问题,是由于指针读地址出现跑死的。
山月知 回答时间:2016-3-9 09:37:41
liu553824989 发表于 2016-3-9 08:43
之前我也出现这样的问题,可以先按照前辈们的想法先查找问题。不过我也说说我之前遇到的问题,是由于指针 ...

谢谢~但是我每次遇到的问题都各种不同,给我的感觉就是 硬件方面不稳定之类的,而且基本上调用的都是库函数,实在不明白为什么出现这种情况。
xmshao 回答时间:2016-3-9 11:16:27
用户代码里没什么东西,就是空循环,不像你用户代码问题。

你把硬件线路连接好,应该不会频繁出HARDFAULT.

问题可能跟你的启动代码有关.尽量找个最新的库代码来玩。
richyhuang 回答时间:2016-3-9 11:21:45
用汇编写个简单的试试看行不行.
回答时间:2016-3-9 15:23:13
楼主把工程发上来,大家帮你测试一下。
山月知 回答时间:2016-3-9 16:21:39
多谢各位。

stm32f100.rar

下载

4.05 MB, 下载次数: 7, 下载积分: ST金币 -1

山月知 回答时间:2016-3-9 16:23:31
还有有时候在调试过程中会出现下面这种情况,不知道是为什么。
4.png
山月知 回答时间:2016-3-10 15:13:59
我发现启动文件选错了,我用的是STM32F100系列,启动文件选择是的startup_stm32f10x_md.s,应该用startup_stm32f10x_md_vl.s
但是重新选择启动文件了,发现现在完全不能进入main()了,新建工程试过了,还是不行,不知道为什么
山月知 回答时间:2016-3-10 16:53:25
最后仔细看了下启动代码,发现问题是进入SetSysClock()函数中执行完SetSysClockTo24()后不能正常返回_main,所以我直接把SetSysClock()注释掉了,就可以执行到main函数了,并且LED点灯功能也能工作了。
所以有点不太明白SetSysClock()为什么会导致不能返回_main。有朋友知道这个么,能否告知下?
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版