历史上的今天
返回首页

历史上的今天

今天是:2024年10月06日(星期日)

2018年10月06日 | 关于stm32HardFault_Handler异常(死机)的处理

2018-10-06 来源:eefocus

在系统开发的时候,出现了HardFault_Handler硬件异常,也就是死机,尤其是对关于stm32HardFault_Handler异常(死机)的处理

b.调出堆栈窗口,也就是黑匣子

关于stm32HardFault_Handler异常(死机)的处理

c.查找问题

关于stm32HardFault_Handler异常(死机)的处理

d.找出出错的函数

关于stm32HardFault_Handler异常(死机)的处理


e.解决问题

关于stm32HardFault_Handler异常(死机)的处理

f  一些思考

很久之前在研究stm32 库源码的时候  发现基本上  每个函数进入之前都做了参数的检测,当初还觉得检查不检查貌似没什么大的作用,自己使用的时候注意就好了,现在是不是改变看法了吗?编程的时候很多问题,在参数检查的时候被过滤掉了,这样在开发大型项目的时候,可以给您免去很多不必要的麻烦,反而会提供开发效率哦

当然网上也有很多,检查寄存器LR SP等地址 来反推出最后运行的汇编函数调用地址的,但是肯定没有上面的直观。                                                                                                                             

11) Call Stack + Locals 窗口

关于stm32HardFault_Handler异常(死机)的处理

窗口中显示了当前活动函数的名称和局部变量列表。随同每个函数的名字会显示它被哪个函数或中断/异常调用。 
当函数退出时,会从列表上移除。 
最早调用的函数会出现在列表的底端。 
这个列表只有在程序停止运行时有效。

点击 Step In 图标 或按 F11 键。

当单步运行到不同的函数时,观察它们在窗口上显示的变化。如果陷入到Delay 函数的循环当中,可以用Step Out 或Ctrl+F11 键快速退出。

点击几次 Step In,观察其他函数。

右键点击一个函数名,尝试 Show Callee Code 和 Show Caller Code 选项。 
关于stm32HardFault_Handler异常(死机)的处理

点击 Step Out 图标 退出所有函数,返回 main()。

提示: 如果单步调试(Step In)不工作,点击Disassembly 窗口使它成为焦点,可能需要点击一行反汇编代码来执行汇编级别的单步运行。如果焦点在源代码窗口上,则是执行 C 语言代码级别的单步运行。

提示: 可以在程序停止运行时,通过 Call Stack + Locals 窗口来修改变量的值。

提示: 上述是标准的“Stop and Go”调试过程。ARM Coresight 调试技术还可以做很多更强大的事情,比如在程序运行中显示并实时更新全局或静态变量,而不需要修改程序。由于局部变量通常存储在 CPU 寄存器中,不能在程序运行时实时显示,需要转换成全局或静态变量使得作用域不会消失。


推荐阅读

史海拾趣

Amphenol Piher公司的发展小趣事

Amphenol Piher 是 Amphenol 公司的一部分,专注于设计、制造和销售电子行业中的传感器和电位器等产品。以下是关于 Amphenol Piher 公司发展的五个相关故事:

  1. 创立与初期发展:Amphenol Piher 公司的历史可以追溯到20世纪60年代,在西班牙的Valencia成立。最初,公司主要致力于生产电位器和传感器等电子元器件,为不同行业的客户提供定制化的解决方案。随着市场需求的增长和公司技术实力的提升,Amphenol Piher 逐渐赢得了客户的信任和市场认可。

  2. 技术创新与产品多样化:Amphenol Piher 公司在技术研发方面持续投入,并不断推出新型的传感器和电位器产品。公司专注于提升产品性能、精度和可靠性,满足客户对高品质电子元器件的需求。除了传统的电位器和传感器,Amphenol Piher 还推出了一系列新型产品,如角位移传感器、线性位移传感器等,为不同应用领域提供多样化的解决方案。

  3. 客户合作与定制化解决方案:Amphenol Piher 公司与客户建立了紧密的合作关系,致力于开发定制化的传感器和电位器解决方案。公司的工程团队与客户密切合作,根据客户的需求和应用场景,设计和制造符合特定要求的产品。这种定制化解决方案能够满足客户个性化的需求,为客户提供更加专业和完善的服务。

  4. 质量控制与认证标准:Amphenol Piher 公司高度重视产品质量控制,并严格遵循国际质量管理体系标准。公司的生产工艺和质量管理体系符合ISO 9001质量管理体系认证标准,以确保产品质量的稳定性和可靠性。此外,Amphenol Piher 公司的产品还通过了各种行业和应用领域的认证标准,如汽车行业的TS16949认证等,确保产品符合行业标准和规定。

  5. 全球市场拓展与合作伙伴关系:除了在西班牙的生产基地外,Amphenol Piher 公司还在全球范围内设有多个销售办事处和代理商网络,拓展了国际市场份额。公司与全球各种行业领先企业建立了长期稳定的合作关系,共同推动产品的创新和市场拓展。通过全球市场拓展和合作伙伴关系,Amphenol Piher 公司不断扩大业务规模,增强了在电子行业中的市场竞争力。

这些故事展示了 Amphenol Piher 公司从成立初期到如今在技术创新、产品多样化、客户合作与定制化解决方案、质量控制与认证标准以及全球市场拓展与合作伙伴关系等方面取得的重要进展。

Deutronic Elektronik GmbH公司的发展小趣事

随着技术的不断进步和市场的扩大,Deutronic Elektronik GmbH开始寻求技术突破和业务拓展。公司加大了研发投入,推出了一系列具有创新性的电源供应器、电子模块和测试检查系统。这些产品不仅满足了客户的多样化需求,还为公司带来了显著的经济效益。同时,公司也积极拓展海外市场,逐步建立了全球销售和服务网络。

Digital View公司的发展小趣事

随着技术的不断进步,Digital View公司不断推出创新产品,如高清数字显示系统、智能交互解决方案等。这些产品不仅提高了显示效果,还降低了使用成本,赢得了客户的广泛好评。同时,公司积极拓展市场,将产品销售到全球各地,包括商用/私人飞机、医院、市政交通系统、广播工作室等领域。随着市场的不断扩大,Digital View逐渐成为了平板数字显示领域的佼佼者。

ELM Technology Corporation公司的发展小趣事

随着环保意识的不断提高,ELM Technology Corporation积极响应国家号召,将环保理念融入企业发展中。公司投入大量资金研发环保型电子产品,努力降低产品对环境的影响。同时,ELM还积极参与各类环保活动,推动电子行业的绿色发展。这种对环保的执着追求让ELM在行业中树立了良好的形象。

Bridgelux公司的发展小趣事

XXXX年,Bridgelux与Cree公司爆发了一场专利纠纷。Cree公司指控Bridgelux侵犯了其LED专利技术。经过一段时间的激烈争辩,双方最终达成了和解协议。Bridgelux同意支付一定的赔偿金,并获得了部分专利的授权。这次纠纷虽然给Bridgelux带来了一定的经济损失,但也使其更加注重知识产权保护,提升了自身的技术实力。

Gulf Semiconductor公司的发展小趣事

XXXX年,中国电子信息产业集团公司(CEC)和重庆临空开发投资公司牵头收购了Bridgelux。这次收购为Bridgelux带来了强大的资本支持和市场资源,使其得以进一步扩大生产规模,提升研发能力。在CEC和重庆临空的支持下,Bridgelux在全球范围内的市场份额逐步提升,品牌影响力不断增强。

问答坊 | AI 解惑

有人用tftpd32.exe做服务器下载程序到开发板么?

我怎么下载不了 在PC本机上测试,可以下载。 但用开发板下载不了,在PC上用抓包软件能看到开发板发来的请求,但tftpd32.exe没反应…

查看全部问答>

wince6.0 mp3解码问题。

我现在遇到两首mp3,在pc上看到属性为mp3, 立体声,16bit,44.1k 我在系统中加了mp3 cedec,MPEG-1 Layer 1 and 2 Audio Codec,但就是播放不了。 从驱动的private_WaveOpen中发现lpFormat->wFormatTag=80,正常应该是1即WAVE_FORMAT_PCM,只支持PC ...…

查看全部问答>

求wince下的2410 BSP

当初买开发板的时候呆的光盘找不到了 两年过去了 估计技术支持也不会管了 那位兄弟有的话 发给我一个吧 先谢了 wgnstar@163.com…

查看全部问答>

抢楼咯,价值600元的专家讲座票,免费赠送啦

9月7日-9日在成都举办的电子展中有近十场关于电磁兼容和电路保护的专家讲座(邀请了德国的电磁兼容专家做专题讲座和交流),我们公司是参展单位,有几张赠票,现免费送给有需要的工程师朋友们,这里跟帖的8楼、18楼将获得赠票(8月底前,请留联系方 ...…

查看全部问答>

LED柔性灯带 不亮原因解析

柔性灯带在经过重重检测和把关之后,还是会有不亮的现象。究其原因,有如下几种:   1、LED柔性灯带的包装保护不完善,造成运输过程中灯珠受到撞击而损坏。   2、LED柔性灯带的焊接点有虚焊现象,运输过程中的震动造成焊点脱落而导致灯带不亮 ...…

查看全部问答>

基于MSP430大量工程文件资料

MSP430F149+1602数码显示和实时时钟 MSP430F149,IAR,ADC采样之后对太阳点光源进行跟踪 MSP430F149 AD7705程序 MSP430 BH1750测量光强(已测试) Launch Pad NOKIA5110 Clock 使用MSP430单片机控制超声波测距并使用5110显示 基于MSP430的MP3 源 ...…

查看全部问答>

msp430g2553电容触摸按键干扰问题

本帖最后由 hjl240 于 2014-7-4 10:36 编辑 自己做了一个msp430g2553板子,上面有电容触摸按键,还有液晶,型号为oled12864,1.3寸的,调试程序的时候发现:     单独调试触摸按键的时候,触摸按键很正常,一触摸就有反应,不触摸就没有 ...…

查看全部问答>

在AD的领域是ADI最厉害吗?

突然想问问,在AD的领域是ADI最厉害吗? …

查看全部问答>

试试能考到你吗——关于“斩波运算放大器”

试试能考到你吗——关于“斩波运算放大器”,下面那条表述是正确滴 欢迎大家踊跃讨论! 可以看看文章斩波型运放及其噪声 https://bbs.eeworld.com.cn/thread-455265-1-1.html …

查看全部问答>

[LPC54102]也用万利的板子玩双核-Blinky LED

本帖最后由 wgsxsm 于 2015-4-21 22:40 编辑   经常逛论坛,有天无意间浏览到此贴:https://bbs.eeworld.com.cn/thread-459450-1-1.html 双核LPC54102的板子还有剩余,刚好最近新配了电脑,业余时间还是有的,果断申请了。  &nb ...…

查看全部问答>