[AT32F415]

硬件异常,HardFault_Handler()

[复制链接]
1365|22
手机看帖
扫描二维码
随时随地手机跟帖
准备植发程序猿|  楼主 | 2022-11-26 16:05 | 显示全部楼层 |阅读模式
程序一直进入HardFault_Handler(),把堆区和栈区改成400后恢复正常了,跑了不到一个小时又进入HardFault_Handler(),想着把堆栈在加大都没有用。怀疑是代码的原因,但是在国民技术的mcu上跑一点问题没有。请教一下大佬们

使用特权

评论回复
muyichuan2012| | 2022-11-28 16:21 | 显示全部楼层
请基于AT32 BSP开发,AT32F415不兼容其他MCU

使用特权

评论回复
准备植发程序猿|  楼主 | 2022-11-28 19:27 | 显示全部楼层
muyichuan2012 发表于 2022-11-28 16:21
请基于AT32 BSP开发,AT32F415不兼容其他MCU

驱动是根据AT32的bsp开发的

使用特权

评论回复
muyichuan2012| | 2022-11-28 21:58 | 显示全部楼层
HardFault的原因很多,需要debug单步进行调试

使用特权

评论回复
准备植发程序猿|  楼主 | 2022-12-1 17:41 | 显示全部楼层
muyichuan2012 发表于 2022-11-28 21:58
HardFault的原因很多,需要debug单步进行调试

原因已找到,写flash后没有锁定,flash里的数据乱了,读数据的时候产生了总线异常,从而引起的硬件中断

使用特权

评论回复
caigang13| | 2022-12-1 19:47 | 显示全部楼层
基本上可以定位是软件原因。

使用特权

评论回复
tpgf| | 2022-12-9 09:42 | 显示全部楼层
至少这两个型号的单片机的配置肯定会不一样吧

使用特权

评论回复
木木guainv| | 2022-12-9 10:48 | 显示全部楼层
(1)数组越界操作;

(2)内存溢出,访问越界;

(3)堆栈溢出,程序跑飞;

(4)中断处理错误;

使用特权

评论回复
xiaoqizi| | 2022-12-9 11:00 | 显示全部楼层
在硬件中断函数HardFault_Handler里的while(1)处打调试断点,程序执行到断点处时点击“STOP”停止仿真

使用特权

评论回复
wowu| | 2022-12-9 11:11 | 显示全部楼层
在Keil菜单栏点击“View”——“Call Stack Window”弹出“Call Stack + Locals”对话框。然后在对话框中右键选择“Show Caller Code”,就会跳转到出错之前的函数处,仔细查看这部分函数被调用或者数组内存使用情况

使用特权

评论回复
wakayi| | 2022-12-9 11:24 | 显示全部楼层
内存溢出或者访问越界。这个需要自己写程序的时候规范代码,遇到了需要慢慢排查。

使用特权

评论回复
renzheshengui| | 2022-12-9 11:39 | 显示全部楼层
发生异常之后可首先查看LR寄存器中的值,确定当前使用堆栈为MSP或PSP,然后找到相应堆栈的指针,并在内存中查看相应堆栈里的内容。

使用特权

评论回复
Bowclad| | 2023-2-7 19:53 | 显示全部楼层
可能是软件原因

使用特权

评论回复
macpherson| | 2023-3-7 13:44 | 显示全部楼层
这个超出了堆栈了。              

使用特权

评论回复
pmp| | 2023-3-7 13:50 | 显示全部楼层
检测堆栈溢出,以及数组溢出等              

使用特权

评论回复
jonas222| | 2023-3-7 14:01 | 显示全部楼层
常规的指针错误,数组下标溢出               

使用特权

评论回复
楼主都说是flash出问题导致的,那是不是说明AT32F415兼容其他MCU?

使用特权

评论回复
cemaj| | 2023-3-7 20:09 | 显示全部楼层
这个是程序的问题。              

使用特权

评论回复
jackcat| | 2023-3-7 20:24 | 显示全部楼层
调试时定位到了错误的函数了吗              

使用特权

评论回复
xiaoyaodz| | 2023-3-7 20:53 | 显示全部楼层
单步调试观察到底死在哪里              

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

32

帖子

0

粉丝