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

【STM32小技巧】STM32硬件错误的调试技巧

[复制链接]
y369369 发布时间:2022-10-7 19:13
在用Keil对STM32的程序进行仿真时程序有时会跑飞,停止仿真程序会停在HardFault_Handler函数里的死循环while(1)中。
) z+ l5 \. u! b$ s0 W1 u5 Z3 h- @: i8 L% ^
7 B6 W8 T' X* \5 D5 S% O9 `" V
这说明STM32出现了硬件错误。6 |' a1 Z! p& _
12.png
硬件错误中断
STM32出现硬件错误可能有以下原因:0 D; H* m! m/ H4 m2 i6 K$ i5 l3 Q
1、数组越界操作;3 {; V# ?" M; [
2、内存溢出,访问越界;
/ k& |1 y3 h7 u4 j) m- C6 _3、堆栈溢出,程序跑飞;
  z; P+ C0 a. z4、中断处理错误;6 C; n" Y! Y8 |1 i! K
遇到这种情况,可以通过以下2种方式来定位到出错代码段。% X( V3 z) O( }' c. C

" E& f: t& a$ H- a$ G& E9 ~
- z! p) W( h+ x8 K- F
方法:
5 ~9 p9 d% t3 U9 v在硬件中断函数/ }" r" H  M6 q9 k6 Q% o
HardFault_Handler, C6 I) E5 v6 X+ t, o2 h
里的
  I+ \! Y/ b( `# Awhile(1)1 n" Z! ~5 \5 N7 b
处打调试断点,程序执行到断点处时点击2 Z0 m) h) B$ C! r, K
STOP$ |0 ?4 y& b* f1 p
停止仿真。0 t: V1 K! b3 f  R
11.png

+ k5 D) a0 y3 z% `' B
收藏 评论0 发布时间:2022-10-7 19:13

举报

0个回答

所属标签

相似技术帖

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