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

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

[复制链接]
y369369 发布时间:2022-10-7 19:13
在用Keil对STM32的程序进行仿真时程序有时会跑飞,停止仿真程序会停在HardFault_Handler函数里的死循环while(1)中。4 m, G7 u- Y0 a3 ?9 n. A+ t

# V8 q# q& U! v
) r" Q8 B. X( a
这说明STM32出现了硬件错误。
0 J6 V$ o  W, C
12.png
硬件错误中断
STM32出现硬件错误可能有以下原因:
; G$ |" n* v( e1、数组越界操作;& {; n0 g! {. ?
2、内存溢出,访问越界;5 w8 W6 l( ^, X$ E  `8 a
3、堆栈溢出,程序跑飞;* C; O0 e- N: F3 e7 I
4、中断处理错误;  a" ?: Q+ T7 x' E; b$ X* c5 N! }2 B- [
遇到这种情况,可以通过以下2种方式来定位到出错代码段。
0 {8 q+ p) i, |& j& A
8 O  d0 T  E0 D3 N2 y2 h9 o
- B0 }: ]* y$ a  \$ @
方法:
! @6 V0 s8 T. I4 h$ b在硬件中断函数: J( g8 g. _6 c! F5 q# \- I- x
HardFault_Handler4 K( N. X: A# i
里的
- T: q+ I: A1 x0 pwhile(1)
+ ?& s7 p/ Y  ^5 x' R9 s( d1 C处打调试断点,程序执行到断点处时点击8 g. l! P3 D' V5 L7 L5 n, F7 m. H
STOP
' m  W' q- x8 F/ H  U/ z停止仿真。* Q* f, M' D  E% J9 _0 K5 _$ {
11.png
5 m) T) d* v& ~" N
收藏 评论0 发布时间:2022-10-7 19:13

举报

0个回答

所属标签

相似技术帖

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