OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4249|回复: 4

STM32F429 进入HardFault_Handler问题

[复制链接]

1

主题

3

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2017-11-27
在线时间
1 小时
发表于 2017-11-27 17:50:35 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 xuehuiai 于 2017-11-28 16:24 编辑

        进行串口数据通信时发现了这个问题,以一定的频率(如10ms、100ms、1000ms)发送数据给单片机,单片机同时也往上位机发送数据,不过几秒后,串口助手接收数据停止了,上位机下发命令单片机也不响应了。为寻找问题,Keil仿真。        现象如下:
              1.发现进入HardFault_Handler()里的while()死循环
              2.为了确定是否是数组越界,仿真查看接收数据的数组发现以下现象:


Keil5仿真情况

Keil5仿真情况

上位机串口助手发送给单片机的数据

上位机串口助手发送给单片机的数据

最佳答案

查看完整内容[请看2#楼]

找到问题根源了,在我的程序里面,对于以下语句进行屏蔽: char for_print1[30] = {0}; char for_print2[30] = {0}; char for_print3[30] = {0}; char for_print4[30] = {0}; char for_print5[30] = {0}; char for_print6[30] = {0}; 程序正常运行,测试大约半个小时了,没有进入HardFault_Handler() 原因分析,一些资料显示HardFault_Handler出现 ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2017-11-27
在线时间
1 小时
 楼主| 发表于 2017-11-27 17:50:36 | 显示全部楼层
本帖最后由 xuehuiai 于 2017-11-28 16:18 编辑

找到问题根源了,在我的程序里面,对于以下语句进行屏蔽:
        char for_print1[30] = {0};
        char for_print2[30] = {0};         
        char for_print3[30] = {0};
        char for_print4[30] = {0};
        char for_print5[30] = {0};         
        char for_print6[30] = {0};
程序正常运行,测试大约半个小时了,没有进入HardFault_Handler()
原因分析,一些资料显示HardFault_Handler出现的情况一般有两种:
1.数组越界
2.堆栈溢出,程序指针指飞
这样看来问题的症结应该是栈溢出。分析得不对,欢迎指出
回复

使用道具 举报

2

主题

756

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4163
金钱
4163
注册时间
2017-10-24
在线时间
251 小时
发表于 2017-11-27 20:24:28 | 显示全部楼层
那些符号的ASCII码和变量中的数值相同。我调试的时候也有一样的问题,估计应该是keil为了方便开发者调试而设计的。
十六进制带我飞。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2017-11-27 23:44:11 | 显示全部楼层
后面是显示这个值对应的ascii码。问号表示未知符号。
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2017-11-27
在线时间
1 小时
 楼主| 发表于 2017-11-28 14:37:16 | 显示全部楼层
DreamWaterPro 发表于 2017-11-27 20:24
那些符号的ASCII码和变量中的数值相同。我调试的时候也有一样的问题,估计应该是keil为了方便开发者调试而 ...

那这个算是正常的咯,至于为什么出现进入HardFault的问题,就得另找原因了
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-11 11:26

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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