STM32F4踩过的坑——无限复位重启之选项字节(Option Bytes)

在STM32F4开发中遇到程序烧写后无限重启的问题,排查发现是由于选项字节(Option Bytes)的WDG_SW位被清零,导致内部IWDG看门狗被意外启用。通过验证IWDG的作用和检查代码,确认问题源于选项字节。修复方案包括使用代码或工具如J-Link STM32 Unlock、ST-Link Utility进行修改。
摘要由CSDN通过智能技术生成

无限重启

烧写程序后,发现MCU复位脚每隔500ms+就回出现一个低电平复位脉冲
仔细检查复位电路后,未发现信号输入源,因此怀疑是STM32内部输出的复位脉冲(联想到内部看门狗,看门狗可能需要输出复位脉冲给MCU外部的其他电路)

验证IWDG猜想

在while循环中喂狗,发现MCU不再重启,确认是IWDG被使能了;
仔细翻看检查代码后,未发现IWDG的使能代码(难不成IWDG不需要软件开启)

查找IWDG是怎么被开启的

通过搜索引擎查找各种资料后,发现,很可能是STM32的选项字节(Option Bytes)被人修改,或者被盗版J-Link无意间修改了(只是猜测);
验证:通过代码读取选项字节,并打印,发现选项字节的WDG_SW位被清零,与默认值不同,由此确认是选项字节的问题;

修复选项字节

代码修改(未实现,待更新)

工具修改(J-Link STM32 Unlock、ST-Link Utility)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值