ST官方模拟EEPROM模块的使用

 我来答
濒危物种1718
2022-07-14 · TA获得超过1.2万个赞
知道大有可为答主
回答量:6595
采纳率:100%
帮助的人:46.2万
展开全部

原项目使用了一颗AT24C02来存储系统配置参数,为了降低成本,需要把这颗料砍掉,将配置参数保存到MCU内部的Flash上。这个改动其实简单,也就是读写内部flash而已,但是如果需要考虑擦写平衡这些特性,自己写就比较麻烦。而ST官方提供了一个使用内部Flash模拟EEPROM的模块,叫 X-CUBE-EEPROM ,包括了这些特性,实用性更强。
下面是从 ‘EEPROM emulation in STM32L4 series microcontrollers' (AN4894) 中摘抄的特性介绍,更详细的说明还是看文档吧:

轻量级其实是相对的,对于最简单擦写,1个page就可以了,比这个还轻量。使用这个模块看重无非是最后两点,毕竟Flash和EEPROM的特性是不一样的。

EEPROM_Emul还是挺轻量的,没几个文件,就两部分核心实现和flash接口。使用前还需要做些额外的工作:

在AN4894文档的4.1.3节详细介绍了 eeprom_emul_conf.h 中各个宏。

表示共使用了多少个PAGE来模拟EEPROM,它的值取决于配置和移植的多个宏。所以在配置好除START_PAGE_ADDRESS外的宏后,根据配置去计算PAGES_NUMBER的值。 START_PAGE_ADDRESS到flash结尾的空间必须 ≥ (PAGES_NUMBER PAGE_SIZE),否则在初始化时会出现Hardfault。 *

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
浙江启扬智能科技有限公司
2023-08-23 广告
作为浙江启扬智能科技有限公司的工作人员,我可以为您解答有关ARM开发板的问题。ARM开发板是一种基于ARM架构的微型计算机板,可用于开发嵌入式系统、智能控制、数据采集、多媒体处理等应用。常见的ARM开发板包括Cortex-A、Cortex-... 点击进入详情页
本回答由浙江启扬智能科技有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式