分享一下片内flash使用小技巧--轮询写入

[复制链接]
beacherblack 发表于 2025-8-11 20:27 | 显示全部楼层
在写入Flash之前,需要先擦除目标区域。擦除操作通常比写入操作耗时更长
wilhelmina2 发表于 2025-8-11 23:29 | 显示全部楼层
当索引到达扇区末尾时,可以回到扇区的起始位置继续写入,形成一个循环。这样,只有在最开始的时候才会擦除Flash,大大减少了擦除次数。
sesefadou 发表于 2025-8-12 02:31 | 显示全部楼层
相应的保护机制(如写保护、读保护等)已经启用, 避免意外修改或损坏Flash内容。
janewood 发表于 2025-8-12 05:33 | 显示全部楼层
解锁:在写入之前,需要解锁Flash区域。
编程:将数据写入Flash。
验证:检查写入的数据是否正确。
锁定:写入完成后,锁定Flash区域以防止意外修改。
backlugin 发表于 2025-8-12 13:09 | 显示全部楼层
写入速度受Flash编程速度的限制,而可靠性则需要通过不断的检查和验证来保证。
lihuami 发表于 2025-8-12 15:20 | 显示全部楼层
使用写入保护机制锁定Flash区域,防止意外修改。
xiaoyaodz 发表于 2025-8-12 17:07 | 显示全部楼层
编写一个轮询写入函数,该函数接受要写入的数据和目标地址作为参数。
pixhw 发表于 2025-8-12 18:05 | 显示全部楼层
轮询写入是一种在写入数据后不断检查Flash状态,直到写入完成的方法。
iyoum 发表于 2025-8-12 19:14 | 显示全部楼层
从识别出的索引地址开始写入数据,不需要擦除Flash。每次写入后,索引自增数据长度的大小。
wengh2016 发表于 2025-8-12 19:46 | 显示全部楼层
GD32F4提供了写入保护功能,可以在不需要写入时锁定Flash区域,以防止意外修改。
updownq 发表于 2025-8-12 20:21 | 显示全部楼层
完成所有写入操作后,记得重新锁定Flash控制寄存器,以防止意外修改。
iyoum 发表于 2025-8-12 21:53 | 显示全部楼层
在轮询写入过程中,最好暂时禁用中断,以避免中断干扰写入过程。写入完成后,重新启用中断。
Peter6699 发表于 2025-8-13 09:32 | 显示全部楼层
只适用于开机不断电的情况,断电后还是擦除才能写入。
nomomy 发表于 2025-8-14 13:37 | 显示全部楼层
使用写入缓冲区可以减少对Flash的直接写入操作,提高写入效率。
jkl21 发表于 2025-8-14 14:38 | 显示全部楼层
每次写入或擦除操作完成后,都需要检查状态寄存器中的忙碌标志位(BSY),直到其被清除为止。
1988020566 发表于 2025-8-14 15:50 | 显示全部楼层
Flash编程前必须先解锁Flash控制寄存器,以允许写入操作。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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