嵌入式开发 延长FLASH使用寿命技巧

	在嵌入式单片机开发时,虽说现在的flash擦写次数少则10w次,也有寿命接近无限的铁电存储器,但对于常常把
成本挂嘴边的消费电子来说不实际,通常需要在软件上微操,一般两个办法:1、上文件系统;2、也就是本文要说的
规范FLASH使用,以达到延长产品寿命目的。
首先需要说明,擦除是0变1,写入是1变1或0,FLASH的寿命指的是每1bit擦、写寿命,读不受限制,随着擦写次数越
多,FLASH老化,表现为很难擦除干净,但只要擦干净了,写入一定正确,但写入的数据是否牢固就不一定了。

通常情况

一般情况下,需要向FLASH写入数据会是如下步骤:
1、读取扇区内所有数据到RAM中:
2、把需要写入的数据写到对应的RAM;
3、擦除扇区;
4、把RAM中的数据写入到FLASH中。
步骤就是如此,接下来就是微操:

提升使用寿命技巧

1、由于FLASH在写入前起码要擦除整个扇区的特点,在成本允许的情况下,尽可能地选取扇区小的芯片,可以加快写
入速率,也提高了可靠性;这是项目前期FLASH选型;
2、在写入时,结合项目实际设计产品周期,一般10年内的写入次数不要大于FLASH的寿命,重要的数据特别关注,比如
增加备份,不重要的数据可以降低要求;
3、每次在写入前,将原数据读出来对比,如果相同就不再写入,虽然一般来说都是不相同的数据;每次写入前判断对
应FLASH的数据是否全为0xff,如果是则不需要再擦除,当然如果能凭空确定是擦除过的也行,不过不一定保险。
4、配置信息一般写入次数比较少,可以把所有配置信息放一块,不要与其他经常需要改变的数据放在相同扇区,减少
频繁写入的数据量;
5、删除动作是对原有数据的清除,最好不要把数据清为0,而是清除为0xFF,这样做的好处是下次对这个地址编程时,
不需要再擦除该扇区,只需要重新写入就可以;
6、各个应用数据如果都需要频繁擦写,如果放在同一扇区就尽量统一处理,减少擦写次数。
7、开始就对一个扇区擦除一次,之后每写一笔数据做一个offset处理,下一笔接着后面直接写,直到写满一个扇区
才做一次擦除动作。
以上是一些拙见,还希望能够抛砖引玉。
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
嵌入开发工具是用于开发、调试和部署嵌入系统的软件工具。常见的嵌入开发工具包括集成开发环境(IDE)、编译器、调试器、仿真器、下载器等。 在实验1中,我们将学习使用Keil MDK作为嵌入开发工具,进行STM32F103C8T6微控制器的开发和调试。 实验步骤: 1. 下载并安装Keil MDK软件。在Keil官网上下载MDK软件,安装过程中需要选择安装ARM Compiler、CMSIS和STM32F1支持包。 2. 创建新工程。在Keil MDK中,选择File->New Project,选择STM32F103C8T6芯片,输入工程名称和存储路径,选择CMSIS和Startup文件作为工程模板。 3. 配置工程属性。在Project->Options for Target中,配置芯片型号、时钟频率、编译器选项等。 4. 编写代码。在工程目录下的main.c文件中编写代码,实现相应的功能。 5. 编译并下载程序。在Keil MDK中,选择Build Target或者F7编译工程,编译成功后,选择Flash->Download将程序下载到STM32微控制器中。 6. 调试程序。在Keil MDK中,选择Debug->Start/Stop Debug Session,进入调试模,可以单步执行、查看变量值等进行调试。 7. 测试程序。将STM32微控制器连接到相应的外设,测试程序功能是否正常。 总结: 通过实验1的学习,我们了解了Keil MDK嵌入开发工具的基本使用方法,以及STM32微控制器的开发和调试流程。这对于我们后续的嵌入系统开发和调试工作具有重要的指导作用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TomWang-0214

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值