STM32上电快速无限复位问题解决方法

1 无限重启问题

使用keil进行下载程序过程中出现两次错误提示,第三次下载后程序可以正常下载,但板子出现无限重启的问题,通过更新程序均无法解决。

2 问题排查

2.1 重启复位引脚是否悬空

经测试,复位引脚未悬空,排除因复位引脚硬件悬空引起的复位。

2.2 系统供电是否正常

经测试,系统供电未出现异常抖动,排除系统供电引起的复位。

2.3 使用示波器查看复位引脚

经过观察,复位引脚周期性出现低电平复位脉冲,猜想STM32芯片内部软件复位引起芯片无限重启。

3 问题解决方法

3.1 问题原因

看门狗会造成周期性重启的现象,但程序中并没有打开看门狗,故此怀疑看门狗被配置为硬件开启,很可能是被盗版J-Link或ST-Link无意间修改了(只是猜测)。STM32的独立看门狗可以是硬件使能或软件使能,硬件使能是通过option bytes配置,软件使能是通过软件设置寄存器位配置。

硬件使能的看门狗,在系统上电之后就开始工作,一旦开始工作就没有办法让它停止工作;而软件使能的看门狗,只有在设置了相应的寄存器位后才能开始工作,一旦开始工作,只有系统复位才能让它停止工作。如果启用了硬件使能,必须通过擦除相应的选择字节位关闭硬件看门狗功能,这时看门狗的功能可以通过软件使能。

3.2 option bytes配置(重点检查项)

其中在STM32 ST-LINK Utility的使用手册中提到option bytes配置,可以通过option bytes配置来设置硬件使能的看门狗。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2 解决方法
通过STM32 ST-LINK Utility工具即可实现将看门狗配置为软件看门狗。

工具:ST-Link 仿真器
软件:STM32 ST-LINK Utility
3.2.1 步骤1
硬件正确连接ST-LINK后,打开电源,选择Connect,连接芯片。
之后再打开STM32 ST-LINK Utility,工具栏内选择Target,在下拉菜单内找到Option Bytes…
STM32 ST-LINK Utility软件界面

3.2.2 步骤2
打开Option Bytes对话框如下,将IWDG_SW勾选框确认勾选即可。
Option Bytes 界面

4 相关软件工具
4.1 STM32 ST-LINK Utility工具下载
4.1.1 官网下载
官方下载地址:

http://www.st.com/content/st_com/en/products/embedded-software/development-tool-software/stsw-link004.html

参考文章:http://www.pianshen.com/article/3515734868/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章