[STM32F1] Flash写入过程中偶尔卡死,重启后又能正常运行

[复制链接]
489|14
Uriah 发表于 2025-11-10 07:28 | 显示全部楼层 |阅读模式
程序在写内部Flash时有时会卡住,像死循环一样。断电重启又恢复了。加了防中断措施也没完全解决。看起来Flash控制器有点“**”的意思。
Clyde011 发表于 2025-11-10 07:31 | 显示全部楼层
要不试试写入后读回验证,确认写入是否成功。
公羊子丹 发表于 2025-11-10 07:31 | 显示全部楼层
是不是在写Flash时还有中断访问?那会冲突。
周半梅 发表于 2025-11-10 07:32 | 显示全部楼层
F1系列这个问题挺常见的,要关中断写入。
帛灿灿 发表于 2025-11-10 07:33 | 显示全部楼层
我觉得加个超时检测比较保险。
童雨竹 发表于 2025-11-10 07:34 | 显示全部楼层
是不是电源电压掉了?写Flash挺挑电压的。
万图 发表于 2025-11-10 07:35 | 显示全部楼层
用库函数写还是直接寄存器操作?
Wordsworth 发表于 2025-11-10 07:36 | 显示全部楼层
我记得官方有个errata提到过这个问题。
Bblythe 发表于 2025-11-10 07:37 | 显示全部楼层
你可以在写入前先擦整页,不要局部写。
Pulitzer 发表于 2025-11-10 07:39 | 显示全部楼层
我遇到过一次是因为写保护位没清。
 楼主| Uriah 发表于 2025-11-10 07:41 | 显示全部楼层
卡死时能不能连上SWD调试?
七毛钱 发表于 2025-11-10 15:35 | 显示全部楼层
Flash写入过程中,如果发生任何干扰如电源波动、时钟不稳定等,都可能导致写入失败或卡死。
今天会画卧蚕吗 发表于 2025-11-10 16:36 | 显示全部楼层
Flash写入时,MCU通常会锁定Flash控制器,防止其他操作干扰写入过程。如果在此期间发生中断或其他高优先级任务,也可能导致卡死。
内政奇才 发表于 2025-11-10 17:36 | 显示全部楼层
电源不稳定是导致Flash写入失败的常见原因。
又见江南雨 发表于 2025-11-10 18:37 | 显示全部楼层
电源波动可能导致Flash控制器无法正常工作,引发卡死现象。
故里说长安 发表于 2025-11-10 19:37 | 显示全部楼层
软件中的逻辑错误,如未正确处理Flash写入过程中的错误、未等待写入完成就执行其他操作等,都可能导致卡死。
茉璃夏 发表于 2025-11-10 20:39 | 显示全部楼层
在写入Flash时,MCU可能被复位或进入低功耗模式
甜心puppy 发表于 2025-11-10 21:40 | 显示全部楼层
Flash芯片本身可能存在故障
进入猫次元 发表于 2025-11-10 21:40 | 显示全部楼层
硬件连接问题,如Flash芯片与MCU之间的连接不良可能导致写入失败。
豌豆爹 发表于 2025-11-10 22:41 | 显示全部楼层
检查电源电路,电源需稳定可靠。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

186

主题

6565

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部