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

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

[复制链接]
y369369 发布时间:2022-10-7 19:13
在用Keil对STM32的程序进行仿真时程序有时会跑飞,停止仿真程序会停在HardFault_Handler函数里的死循环while(1)中。
' v/ |, [! G- ^0 Y# D4 q
6 ~/ i: e0 z0 m2 s& @

4 u2 @" R/ K- T1 v9 A5 l这说明STM32出现了硬件错误。1 ?  u: x6 n' P( Q! b
12.png
硬件错误中断
STM32出现硬件错误可能有以下原因:
  i8 O6 T+ w6 W/ l8 c1、数组越界操作;
. F3 L5 d( z) t/ W/ L$ o2、内存溢出,访问越界;- l& _+ C8 U' a3 T) j1 m; F1 X
3、堆栈溢出,程序跑飞;  x" h1 y+ L. G! v5 A
4、中断处理错误;
+ {! Z" F# i/ ~3 Z遇到这种情况,可以通过以下2种方式来定位到出错代码段。5 l7 Q* N& x. |
& a( Y% L: j- Y0 r

7 H: `+ m% G- B0 f2 a) \1 \方法:' |) g& K: p' a' V, V, H
在硬件中断函数4 p8 z% j# v' S# @1 b- P( O2 L
HardFault_Handler
$ [9 v; ^! r( ?2 c- P& Y里的
" J4 x- I; e; I! z' Iwhile(1)
, t! D5 t# X% \, K; d处打调试断点,程序执行到断点处时点击8 ?! e& e, t* {! e8 \. t
STOP
2 d6 B( S, Z3 ]8 m4 m0 P停止仿真。8 j4 \3 C- X4 v& q& W" x! T
11.png
2 e7 ^5 _5 z5 J! ^
赞 收藏 评论0 发布时间:2022-10-7 19:13

举报

0个回答

所属标签

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版