打印
[STM32L0]

用L0跑EEPROM模拟写入,写几次就卡死了

[复制链接]
464|37
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
周半梅|  楼主 | 2025-5-19 07:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
看着官方例程抄的,循环写几轮之后程序直接停住,也没错误提示,不太好排查。

使用特权

评论回复
沙发
Clyde011| | 2025-5-19 07:28 | 只看该作者
有没有可能是中断打断了写流程?

使用特权

评论回复
板凳
公羊子丹| | 2025-5-19 07:29 | 只看该作者
我以前写多了直接进HardFault。

使用特权

评论回复
地板
周半梅|  楼主 | 2025-5-19 07:30 | 只看该作者
Flash写入前要先解锁!

使用特权

评论回复
5
帛灿灿| | 2025-5-19 07:31 | 只看该作者
模拟EEPROM真挺麻烦的。

使用特权

评论回复
6
童雨竹| | 2025-5-19 07:32 | 只看该作者
写之前得判断busy位有没有清。

使用特权

评论回复
7
万图| | 2025-5-19 07:33 | 只看该作者
有没有定时写入,别一直改数据。

使用特权

评论回复
8
Wordsworth| | 2025-5-19 07:33 | 只看该作者
Flash sector擦除周期也别太频繁。

使用特权

评论回复
9
Bblythe| | 2025-5-19 07:34 | 只看该作者
写前不擦除会失败。

使用特权

评论回复
10
Pulitzer| | 2025-5-19 07:35 | 只看该作者
建议加个缓存写保护。

使用特权

评论回复
11
Uriah| | 2025-5-19 07:36 | 只看该作者
我加了CRC判断,写失败就跳过了。

使用特权

评论回复
12
averyleigh| | 2025-5-21 15:49 | 只看该作者
STM32的Flash可能被设置了写保护,需要使用特定的工具或命令来解除写保护。

使用特权

评论回复
13
saservice| | 2025-5-21 15:53 | 只看该作者
STM32的Flash编程和擦除操作是分开的,需要先擦除再编程。

使用特权

评论回复
14
powerantone| | 2025-5-21 16:08 | 只看该作者
未屏蔽中断导致冲突?

使用特权

评论回复
15
sesefadou| | 2025-5-21 16:39 | 只看该作者
在多页中冗余存储关键数据,提高可靠性。

使用特权

评论回复
16
stormwind123| | 2025-5-21 17:03 | 只看该作者
地址未正确对齐,可能引发写入错误或卡死。

使用特权

评论回复
17
kmzuaz| | 2025-5-21 17:45 | 只看该作者
在进行Flash操作期间禁用全局中断,防止其他中断打断当前操作。

使用特权

评论回复
18
probedog| | 2025-5-21 18:00 | 只看该作者
在多任务或中断环境下,直接操作EEPROM可能导致竞争条件,进而引发卡死。

使用特权

评论回复
19
maqianqu| | 2025-5-21 18:16 | 只看该作者
电源不稳定或时钟配置错误也可能导致Flash操作失败

使用特权

评论回复
20
classroom| | 2025-5-21 19:00 | 只看该作者
在写入EEPROM时屏蔽中断...

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

96

主题

5000

帖子

1

粉丝