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

【经验分享】STM32G0 复位后死机

[复制链接]
STMCU小助手 发布时间:2022-3-17 20:00
引言
有客户反映,STM32G071RBT6 在使用 STM32CubeProgrammer 烧录完程序后只能运行一次,复位后,程序无法运行,如果掉电后重新上电,程序恢复正常。
! z4 f% \: b2 @3 f2 i! A
问题描述
根据客户描述,该问题可通过以下步骤复现:
( m4 Z* E5 L# z
2.1. 测试代码的功能流程图

+ X7 W" m5 K8 ^& Q9 y2 O* A3 p
准备测试代码 App1 和 App2:
; n+ T8 M7 g% O* n8 u& f  p% u; [

9 S7 z1 G, h$ ^3 p
HPXC6JHK()76JK}B1PZ_K2G.png

6 H0 g8 }0 N) v8 [% h0 ^- I: @
9[YI@$LY%X1DH@$_7XIZLUS.png
2.2. 问题复现步骤
操作步骤 1 n8 C( t! k% r  R* E1 s- L2 [
(1) 在 STM32CubeProgrammer 中下载
应用程序 App1(如图 3),并设置 RDP=1(如图 4);然后断开 STM32CubeProgrammer 的连接,板子断电后重新上电;
WO2M0)WBY]@@G5HN0)`~2YF.png
4 t+ Q2 e* U) @6 Q! `
(2) 根据 log 提示(如图 5),按下用户按键,板子会在 RDP 降级的过程中,产生全片擦除的动作,等待 10s,确保芯片擦除完成后从板子再断电并重新上电;
$ _" S7 P$ e# r8 B- c7 ~
8T$Y4~`9~FU_GR]`@H$L8UJ.png

, c; f, e: ?* O4 U/ ^
(3) 使用 STM32CubeProgrammer 重新连接板子,在下载界面选中“Run afterprogramming”后,下载应用程序 App2(如图 6),下载完成后,可以看到板子执行闪灯的效果,并从 App2 的 log 信息可知,此时的 empty check 位被置起(如图 7)。
( \3 G9 R4 s9 y; w: t. q! \9 m; c
T3QZ(SU07%BKL}03L4X)P.png
5 u! I4 \* ~; h+ f5 S1 r4 P
VAS0$WI2@(~CC8XEE0W$Y%1.png

6 w9 E' e7 g9 [9 d
(4) 在不断电的情况下,如果直接按下外部复位按钮,程序将出现无法执行的现象。
# M6 R9 I0 z" }7 h, Y0 K7 o9 f3 j
0 L- W! A1 ^! s  W4 B" O8 y
问题解决
通过问题的复现,我们注意到,程序无法正常运行时,实际进入了内置的 ISP 程序,即内置的 bootloader 程序。为什么会进入 bootloader 呢?在 G0 的参考手册中,我们注意到 empty check 的描述如下:
}@T]6@4(22}A0N{6
4@JV.png

* Q3 u  r  b6 v+ B/ K/ j8 E
这里的描述有两点是很重要的。

$ y7 L1 ~9 d4 Q- N; ~3 g1 {! R
A :出厂的芯片,因为是没有程序的空片,empty check 位是被置位的,但实际电路中因 boot 管脚定义的程序从 Main Flash 启动的场景时,程序会由于 empty check 位而强制从内置的 bootloader 启动。

8 Z5 a9 X6 J" z" l# }/ A
B :empty check 只会在加载 OptionByte 时更新,所以在空片上下载完程序后,应当通过 power on reset 或者手动清除该位,程序才可以正常运行。

6 L% M5 K: Y5 K% l
我们来验证一下,在复现问题的第(4)步中,如果先按下用户按钮,应用程序 App2会通过软件清除 empty check 位,再通过外部复位按钮,则程序正常运行, 根据 log 信息可以看到 empty check 位被清除(如图 9),且程序运行恢复正常。
) T/ l- X" K1 i/ D
ZC@}JML[OE9[6Y([DSSKH7K.png
' K$ U9 \1 V6 q

: n5 i; O, T+ Y: f% D6 b
小结
本文描述的问题虽然隐藏的比较深,但规律还是很明显的,只要重新上电即可恢复,说明很可能和 power on reset 有关。在参考手册中搜索 power on reset 关键字,可以很快的找到一些线索。所以分析问题时,要多关注这样的有规律的问题信息。
/ o& a5 Q$ a4 Q5 ]
赞 收藏 评论0 发布时间:2022-3-17 20:00

举报

0个回答

所属标签

相似技术帖

官网相关资源

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