关于STM32的HardFault_Handler、Error_Handler、assertFailed
背景 两个批次PCBA烧录相同程序hex相同电路PCB新批次是在上一批次嘉立创返单下的我理解只有物料上的批次不一致因为STM32F4芯片的丝印明显不一样。现象上一批次正常。最新批次pcba程序不跑调试直接报硬Fault。哪怕断点打在main的开始一调试就报硬Fault不进断点。分析过程1、出现HardFault第一想到是上一个调用的函数是哪个即想确定触发HardFault的现场地点2、代码是O3优化断点打在main开始处一点调试断点没有停在main开始处直接报硬件Fault所以这种办法进行不下去。其实进HardFault后查看调用栈就可以知道之前运行了哪些函数以下是借助AI的过程AI定位是断言出错configASSERT先触发异常AI在断言处打断点不知道它是如何做到的我手工打不上程序先触发了断言的断点后面才是HardFault。我后面一系列询问想确定AI是基于怎么个想法最终定位到这个问题的。它大致的想法是1、程序出问题有很多出口如Error_Handler、assert断言、硬件Fault2、同时由于Error_Handler、assert断言这些地方出问题有可能后续代码的操作会导致硬件Fault。所以它监控这些出口。这些出口代表问题的原因有以下几大块1、HardFault表示cpu命令不对主要有数组越界参数类型不匹配等2、Error_HandlerHAL库初始化失败3、asserFailed纯程序逻辑即是否满足变量要求这个bkpt或许会触发硬件Fault。由于Error_Handler、assertFailed出现异常后后续的操作容易触发硬件Fault所以先排除是不是这些地方有问题。如果没有再从硬件Fault往上推调用关系如果有问题则在ErrorHandler和assertFailed更容易往上推出哪里调用导致出故障。调试时想确定是调用到哪里才触发的硬件Fault一、各自目的出处程序三种机制HardFault、Error_Handler、assert断言二、常见的触发原因三、三者之间联系四、出现异常后如何查看上一个调用的地方

相关新闻

用友ERP实施服务流程

用友ERP实施服务流程

很多企业购买了用友ERP,但不知道实施服务包含哪些内容、流程是什么、周期多长。 本文详细介绍用友ERP的标准实施流程。 一、实施周期概览 不同产品、不同规模的项目实施周期差异较大: 产品 项目范围 典型周期 好会计 财务模块 1-2周 TCloud 进销…

2026/11/5 13:33:40 阅读更多 →
Oracle11g用命令创建、扩容和移除ASM磁盘组成员

Oracle11g用命令创建、扩容和移除ASM磁盘组成员

目录 一、手工创建ASM磁盘组 1.1.查看RAC集群状态 1.2.查看ASM磁盘组和磁盘状态 1.3.添加ASM磁盘组YULU 1.4.删除磁盘组 二、ASM磁盘组扩容和删除 2.1.查看ASM磁盘信息 2.2.扩容磁盘组 2.3.查询rebalance状态 2.4.删除磁盘组中的磁盘 2.4.1.查询asm磁盘删除前信息 2.4.2.删除as…

2026/11/4 17:46:49 阅读更多 →
无代理攻击面管理:小团队如何系统化发现与监控数字资产风险

无代理攻击面管理:小团队如何系统化发现与监控数字资产风险

你刚接手一个新项目,老板丢给你一个域名列表,说“看看有没有什么风险”。你打开浏览器,一个个手动访问,检查证书、端口、子域名、暴露的API、过时的框架版本……几个小时过去,你发现了一个过期的测试环境证书&#xff…

2026/11/3 20:45:27 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/5 12:28:00 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/5 1:08:50 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/5 12:28:01 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/5 12:28:02 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/5 0:54:28 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/5 19:38:59 阅读更多 →

日新闻

周新闻

月新闻