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

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

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

  1. 提高时钟频率。

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

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

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

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

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

相关推荐
上海合宙LuatOS10 分钟前
合宙Air1601 MCU模组-硬件开发手册
单片机·嵌入式硬件·物联网·luatos
笨笨饿18 分钟前
#85_库函数开发
linux·c语言·网络·stm32·单片机·算法·个人开发
50万马克的面包31 分钟前
C语言:三大基础排序算法模板 冒泡 / 选择 / 插入)
c语言·笔记·算法·排序算法
W.W.H.40 分钟前
STM32实现LED闪烁和串口打印案例
stm32·单片机·嵌入式硬件·usart·gd32·dap-link
cen__y42 分钟前
Linux10(计算机网络01)
linux·运维·服务器·c语言·计算机网络·ubuntu
爱编码的小八嘎1 小时前
c语言完美演绎9-26
c语言
在角落发呆1 小时前
c socket 服务器转发,c socket 服务器转发的方法
服务器·c语言·开发语言
济6171 小时前
FreeRTOS 系统监控任务设计(上篇) ---MonitorTask的 基础框架
单片机·嵌入式·freertos
modelmd1 小时前
C 语言使用 gdb 调试
c语言
深圳市晶科鑫实业有限公司1 小时前
RTC模块vs. 32.768KHz晶振:深度对比与选型指南
stm32·单片机·嵌入式硬件·实时音视频·rtc