STM32F4之无限复位重启问题解决方法

时间:2024-05-23 09:50:11

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配置来设置硬件使能的看门狗。
STM32F4之无限复位重启问题解决方法

STM32F4之无限复位重启问题解决方法
STM32F4之无限复位重启问题解决方法

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…
STM32F4之无限复位重启问题解决方法

3.2.2 步骤2

打开Option Bytes对话框如下,将IWDG_SW勾选框确认勾选即可。
STM32F4之无限复位重启问题解决方法

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

4.1.2 网盘下载

百度盘链接:https://pan.baidu.com/s/1JrrsSTQiqY5TxcjCD5spsQ
提取码:链接

5 相关文章

  1. STM32F4踩过的坑——无限复位重启之选项字节(Option Bytes)
  2. STM32学习之Flash(主存储块、系统存储器和选项字节)详解
  3. STM32 ST-LINK Utility介绍、下载、安装、使用方法
  4. STM32之option bytes踩坑记录