缩短单片机内的Flash的擦写时间

查看单片机(HC32F448)的数据手册得到块擦除时间为18+4Thclk (ms)。

一般数据存储都是将1改为0的情况,无法从0改为1,所以需要先擦除然后存储数值。如何缩短Flash的擦写时间?

  1. 提高时钟频率。

  2. 软件算法优化。主要是减少擦除次数。

2.1预擦除:在写入数据之前,提前执行擦除操作。这样,当实际写入数据时,Flash已经处于待写状态,从而减少了写入操作的时间。(程序初始化时可以先块擦除)

2.2**空间换时间。**利用相对多的代码空间来换取相对多的存储次数。

单片机的区域有8K的一页,一次写入16个字节,那么可以写入8192/16=512次。等到存储完成一个区域,再次写入一次时,则需要擦除。不仅减少了擦写时间,而且增加了flash寿命。

注意:要找到这个写入的字节已经存储到一页flash的哪个存储区域。

相关推荐
RuoZoe2 天前
重塑WPF辉煌?基于DirectX 12的现代.NET UI框架Jalium
c语言
祈安_5 天前
C语言内存函数
c语言·后端
norlan_jame7 天前
C-PHY与D-PHY差异
c语言·开发语言
czy87874757 天前
除了结构体之外,C语言中还有哪些其他方式可以模拟C++的面向对象编程特性
c语言
悠哉悠哉愿意7 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
m0_531237177 天前
C语言-数组练习进阶
c语言·开发语言·算法
Lester_11017 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
三佛科技-187366133977 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315207 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
Z9fish7 天前
sse哈工大C语言编程练习23
c语言·数据结构·算法