当前位置: 首页 > article >正文

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

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

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

  1. 提高时钟频率。

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

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

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

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

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


http://www.kler.cn/a/293842.html

相关文章:

  • 鸿蒙HarmonyOS 地图不显示解决方案
  • 【大数据学习 | HBASE高级】rowkey的设计,hbase的预分区和压缩
  • js 获取某日期到现在的时长 js 数字补齐2位
  • ❤React-React 组件基础(类组件)
  • [ 网络安全介绍 5 ] 为什么要学习网络安全?
  • MacOS 本地生成SSH key并关联Github
  • Django Admin后台从一个页面同时编辑多个模型
  • Matlab实现RPC算法
  • 遍历有向网格链路实现
  • css 动态宽度的同时高度自适应(含内容居中)
  • 线性代数基础(2)——特征值和特征向量
  • 探索 Logrus 日志框架:Go 语言的强大日志工具
  • 网络安全服务基础Windows--第15节-CA与HTTPS理论
  • ubuntu 20.04 一直卡在登录界面,即使密码正确也无法登录(失败记录)
  • 前端缓存介绍以及实现方案
  • 【杂记】裂脑人实验和语言模型幻觉
  • 深度解析:基于离线开发的数据仓库转型落地案例
  • DIAS:用于DSA序列中颅内动脉分割的数据集和基准|文献速递--基于深度学习的医学影像病灶分割
  • ICM20948 DMP代码详解(6)
  • vim常用快捷键问答之二
  • CentOS 7 上安装 NVIDIA Docker
  • ​​NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南002
  • 设计模式-行为型模式-状态模式
  • 如何在 Ubuntu 24.04 上安装 MariaDB ?
  • 怎么使用matplotlib绘制一个从-2π到2π的sin(x)的折线图-学习篇
  • 深度学习基础--卷积的变种