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

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

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

  1. 提高时钟频率。

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

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

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

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

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

相关推荐
天狼IoT2 分钟前
STM32-keil+CubeMX快速开发【外设配置篇】:NVIC与中断通用处理方法
stm32·单片机·嵌入式硬件
itman30130 分钟前
C语言printf输出格式:%d %f %s等用法详解
c语言·字符串·printf·格式化输出·整数
llilian_1639 分钟前
国产铷原子钟 铷频标挑选指南 铷原子频标 国产铷钟
大数据·网络·功能测试·单片机·嵌入式硬件·测试工具
NQBJT41 分钟前
嵌入式从零开始(第十一篇):芯片选型 —— STM32 vs ESP32
stm32·单片机·嵌入式硬件
我不是懒洋洋43 分钟前
【经典题目】链表OJ(相交链表、环形链表、环形链表II、随机链表的复制)
c语言·开发语言·数据结构·链表·ecmascript·visual studio
三佛科技-134163842121 小时前
智能宠物净味器方案开发--基于FT62EC23-RB国产单片机方案
单片机·嵌入式硬件·宠物
聆风吟º1 小时前
【C标准库】深入理解C语言strstr函数:子字符串查找的实用指南
c语言·开发语言·库函数·strstr
算法鑫探1 小时前
C语言实现 简易计算器教程
c语言·数据结构·算法·新人首发
768dh1 小时前
TL431+光耦反馈电路
单片机·嵌入式硬件
水云桐程序员2 小时前
LED电路的设计原理
单片机·嵌入式硬件