From b408d57fb375ed7c506d0c7bb418fade2a3082a5 Mon Sep 17 00:00:00 2001 From: armink Date: Sat, 9 Feb 2019 22:42:24 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E6=9B=B4=E6=96=B0=E3=80=91=E9=A6=96?= =?UTF-8?q?=E9=A1=B5=E8=AF=B4=E6=98=8E=E6=96=87=E6=A1=A3=E3=80=81API=20?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E5=8F=8A=E7=A7=BB=E6=A4=8D=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: armink --- README.md | 64 ++++++++++------ docs/zh/api.md | 102 +++++++++++++------------ docs/zh/design.md | 1 + docs/zh/images/BackupAreaPartition.jpg | Bin 92053 -> 41179 bytes docs/zh/images/wechat_support.png | Bin 0 -> 18611 bytes docs/zh/port.md | 75 +++++++----------- docs/zh/v4_migrate.md | 1 + 7 files changed, 124 insertions(+), 119 deletions(-) create mode 100644 docs/zh/design.md create mode 100644 docs/zh/images/wechat_support.png create mode 100644 docs/zh/v4_migrate.md diff --git a/README.md b/README.md index 132a7f8..08032be 100644 --- a/README.md +++ b/README.md @@ -4,9 +4,9 @@ ## 1、介绍([English](#1-introduction)) -[EasyFlash](https://github.com/armink/EasyFlash)是一款开源的轻量级嵌入式Flash存储器库,主要为MCU(Micro Control Unit)提供便捷、通用的上层应用接口,使得开发者更加高效实现基于的Flash存储器常见应用开发。该库目前提供 **三大实用功能** : +[EasyFlash](https://github.com/armink/EasyFlash)是一款开源的轻量级嵌入式Flash存储器库,方便开发者更加轻松的实现基于Flash存储器的常见应用开发。非常适合智能家居、可穿戴、工控、医疗等需要断电存储功能的产品,资源占用极低,支持各种 MCU 片上存储器。该库主要包括 **三大实用功能** : -- **Env** 快速保存产品参数,支持 **写平衡(磨损平衡)** 及 **掉电保护** 模式 +- **ENV** 快速保存产品参数,支持 **写平衡(磨损平衡)** 及 **掉电保护** 功能 EasyFlash不仅能够实现对产品的 **设定参数** 或 **运行日志** 等信息的掉电保存功能,还封装了简洁的 **增加、删除、修改及查询** 方法, 降低了开发者对产品参数的处理难度,也保证了产品在后期升级时拥有更好的扩展性。让Flash变为NoSQL(非关系型数据库)模型的小型键值(Key-Value)存储数据库。 @@ -18,16 +18,28 @@ EasyFlash不仅能够实现对产品的 **设定参数** 或 **运行日志** 非常适合应用在小型的不带文件系统的产品中,方便开发人员快速定位、查找系统发生崩溃或死机的原因。同时配合[EasyLogger](https://github.com/armink/EasyLogger)(我开源的超轻量级、高性能C日志库,它提供与EasyFlash的无缝接口)一起使用,轻松实现C日志的Flash存储功能。 -### 1.1、资源占用 +### 1.1、V4.0 NG 模式 -``` -最低要求: ROM: 6K bytes RAM: 0.5K bytes + (Env大小) +自 2019 年春节后,EasyFlash 经过 4 年多的迭代,结合众多开发者的需求及建议,终于发布了 V4.0 版本,该版本中的 ENV 功能被命名为 **NG** (Next Generation) 模式,这是一个完全重构的新版本,具有以下新特性: + +- 更小的资源占用,内存占用 **几乎为 0** ;(V4.0 以前版本会使用额外的 RAM 空间进行缓存) +- ENV 的值类型支持 **任意类型** 、任意长度,相当于直接 memcpy 变量至 flash ;(V4.0 之前只支持存储字符串) +- ENV 操作效率比以前的模式高,充分利用剩余空闲区域,擦除次数及操作时间显著降低; +- **原生支持** 磨损平衡、掉电保护功能 (V4.0 之前需要占用额外的 Flash 扇区); +- ENV 支持 **增量升级** ,固件升级后 ENV 也支持升级; +- 支持大数据存储模式,**长度无限制**,数据可在多个 Flash 扇区上顺序存储(V4.1 即将支持); +- 支持 **数据加密** ,提升存储的安全性(V4.2 即将支持); +- 支持 **数据压缩** ,减低 Flash 占用(V4.3 即将支持); + +V4.0 设计及内部原理,V4.0 迁移指南等更多内容请阅读文档章节 -Demo平台:STM32F103RET6 + RT-Thread 1.2.2 + Env(2K bytes) -实际占用: ROM: 6K bytes RAM: 2.6K bytes +### 1.2、资源占用 + +``` +最低要求: ROM: 6K bytes RAM: 0.1K bytes ``` -### 1.2、支持平台 +### 1.3、支持平台 目前已移植硬件平台有 `stm32f10x`与 `stm32f4xx` 系列的片内Flash,SPI Flash,这些也是笔者产品使用的平台。其余平台的移植难度不大,在项目的设计之初就有考虑针对所有平台的适配性问题(64位除外),所以对所有移植接口都有做预留。移植只需修改 [`\easyflash\port\ef_port.c`](https://github.com/armink/EasyFlash/blob/master/easyflash/port/ef_port.c) 一个文件,实现里面的擦、写、读及打印功能即可。 @@ -35,36 +47,47 @@ Demo平台:STM32F103RET6 + RT-Thread 1.2.2 + Env(2K bytes) ## 2、流程 -### 2.1、Env:环境变量(KV数据库) +### 2.1、ENV:环境变量(KV数据库) 下图为通过控制台(终端)来调用环境变量的常用接口,演示了以下过程,这些接口都支持被应用层直接调用。 - 1、创建“温度”的环境变量,名为 `temp`,并且赋值为 `123`; -- 2、保存“温度”到Flash中并重启; +- 2、保存“温度”到Flash中并重启(V4.0 版本的每个操作完自动保存,无需额外保存); - 3、检查“温度”是否被成功保存; - 4、修改“温度”值为 `456` 并保存、重启; - 5、检查“温度”是否被成功修改; - 6、删除“温度”的环境变量。 -![easy_flash_env](https://raw.githubusercontent.com/armink/EasyFlash/master/docs/zh/images/EnvDemo.gif) +![easy_flash_env](/docs/zh/images/EnvDemo.gif) ### 2.2、IAP:在线升级 下图演示了通过控制台来进行IAP升级软件的过程,使用的是库中自带的IAP功能接口,演示采用的是串口+Ymodem协议的方式。你还也可以实现通过CAN、485、以太网等总线,来实现远程网络更新。 -![easy_flash_iap](https://raw.githubusercontent.com/armink/EasyFlash/master/docs/zh/images/IapDemo.gif) +![easy_flash_iap](/docs/zh/images/IapDemo.gif) ### 2.3、Log:日志存储 下图过程为通过控制台输出日志,并将输出的日志存储到Flash中。重启再读取上次保存的日志,最后清空Flash日志。 -![easy_flash_log](https://raw.githubusercontent.com/armink/EasyFlash/master/docs/zh/images/LogDemo.gif) +![easy_flash_log](/docs/zh/images/LogDemo.gif) ## 3、文档 -具体内容参考[`\docs\zh\`](https://github.com/armink/EasyFlash/tree/master/docs/zh)下的文件。务必保证在 **阅读文档** 后再移植使用。 +- API 文档:[`\docs\zh\api.md`](/docs/zh/api.md) +- 移植文档:[`\docs\zh\port.md`](/docs/zh/port.md) +- V4.0 迁移指南:[`\docs\zh\v4_migrate.md`](/docs/zh/v4_migrate.md) +- V4.0 设计及实现细节:[`\docs\zh\design.md`](/docs/zh/design.md) -## 4、许可 +务必保证在 **阅读文档** 后再移植使用。 + +## 4、支持 + + ![support](/docs/zh/images/wechat_support.png) + +如果 EasyFlash 解决了你的问题,不妨请我 **喝杯咖啡**~ + +## 5、许可 采用 MIT 开源协议,细节请阅读项目中的 LICENSE 文件内容。 @@ -89,10 +112,7 @@ It's very suitable for small without a file system products. The developer can e ### 1.1 Resource consumption ``` -Minimum : ROM: 6K bytes RAM: 0.5K bytes + (Env size) - -Demo :STM32F103RET6 + RT-Thread 1.2.2 + Env(2K bytes) -Actual : ROM: 6K bytes RAM: 2.6K bytes +Minimum : ROM: 6K bytes RAM: 0.2K bytes ``` ### 1.2 Supported platforms @@ -114,19 +134,19 @@ The figure below shows an ENV's common interface be called by the console (termi - 5.Check the temperature has changed successfully; - 6.Delete temperature environment variable. -![easy_flash_env](https://raw.githubusercontent.com/armink/EasyFlash/master/docs/en/images/EnvDemo.gif) +![easy_flash_env](/docs/en/images/EnvDemo.gif) ### 2.2 IAP The figure below shows the process of upgrading software through the console by IAP. It use this library comes with IAP function interface. It uses a serial port + Ymodem protocol mode. You can also be achieved through CAN, 485, Ethernet bus to online upgrade. -![easy_flash_iap](https://raw.githubusercontent.com/armink/EasyFlash/master/docs/en/images/IapDemo.gif) +![easy_flash_iap](/docs/en/images/IapDemo.gif) ### 2.3 Log The following figure is the output of the log process through the console. The logs are saved to flash at real time. Then the board is rebooted and the logs back are read back from flash. At last logs will be erased. -![easy_flash_log](https://raw.githubusercontent.com/armink/EasyFlash/master/docs/en/images/LogDemo.gif) +![easy_flash_log](/docs/en/images/LogDemo.gif) ## 3 Documents diff --git a/docs/zh/api.md b/docs/zh/api.md index 5e46300..b25a38c 100644 --- a/docs/zh/api.md +++ b/docs/zh/api.md @@ -6,9 +6,7 @@ 名词介绍: -**备份区** :是EasyFlash定义的一个存放环境变量、已下载程序及日志的Flash区域,详细存储架构可以参考[`\easyflash\src\easyflash.c`](https://github.com/armink/EasyFlash/blob/master/easyflash/src/easyflash.c#L29-L58)文件头位置的注释说明或[移植文档中关于备份区参数配置](https://github.com/armink/EasyFlash/blob/master/docs/zh/port.md#55-备份区)。 - -**环境变量表** :负责存放所有的环境变量,该表在Flash及RAM中均存在,上电后需从Flash加载到RAM中,修改后,则需要保存其至Flash中。。 +- **备份区** :是EasyFlash定义的一个存放环境变量、已下载程序及日志的Flash区域,详细存储架构可以参考[`\easyflash\src\easyflash.c`](https://github.com/armink/EasyFlash/blob/master/easyflash/src/easyflash.c#L29-L58)文件头位置的注释说明或[移植文档中关于备份区参数配置](https://github.com/armink/EasyFlash/blob/master/docs/zh/port.md#55-备份区)。 ## 1、用户使用接口 @@ -22,25 +20,43 @@ EfErrCode easyflash_init(void) ### 1.2 环境变量 -#### 1.2.1 加载环境变量 +在 V4.0 以后,环境变量在 EasyFlash 底层都是按照二进制数据格式进行存储,即 blob 格式,这样上层支持传入任意类型。而在 V4.0 之前底层使用的是字符串格式进行存储,字符串格式的环境变量也可以转换为 blob 格式,所以 V4.0 能做到完全兼容以前的 API 。 + +#### 1.2.1 获取环境变量 + +通过环境变量的名字来获取其对应的值。支持两种接口 -加载Flash中的所有环境变量到系统内存中。 +##### 1.2.1.1 获取 blob 类型环境变量 ```C -void ef_load_env(void) +size_t ef_get_env_blob(const char *key, void *value_buf, size_t buf_len, size_t *value_len) ``` -#### 1.2.2 打印环境变量 +|参数 |描述| +|:----- |:----| +|key |环境变量名称| +|value_buf |存放环境变量的缓冲区| +|buf_len |该缓冲区的大小| +|value_len |返回该环境变量实际存储的大小| +|返回 |成功存放至缓冲区中的数据长度| -通过在移植接口([`\easyflash\port\ef_port.c`](https://github.com/armink/EasyFlash/blob/master/easyflash/port/ef_port.c))中定义的`ef_print`打印方法,来将Flash中的所有环境变量输出出来。 +示例: ```C -void ef_print_env(void) +char value[32]; +size_t len; +/* 如果环境变量长度未知,可以先获取 Flash 上存储的实际长度,将通过 len 返回 */ +ef_get_env_blob("key", NULL, 0, &len); +/* 如果长度已知,使用 value 缓冲区,存放读取回来的环境变量值数据,并将实际长度返回 */ +len = ef_get_env_blob("key", value, sizeof(value) , NULL); ``` -#### 1.2.3 获取环境变量 +##### 1.2.1.2 获取字符串类型环境变量 + +**注意** : -通过环境变量的名字来获取其对应的值。(注意:此处的环境变量指代的已加载到内存中的环境变量) +- 该函数不推荐继续使用,可以使用上面的函数替代; +- 该函数不支持可重入,返回的值位于函数内部缓冲区,出于安全考虑,请加锁保护。 ```C char *ef_get_env(const char *key) @@ -49,15 +65,31 @@ char *ef_get_env(const char *key) |参数 |描述| |:----- |:----| |key |环境变量名称| +|返回 |环境变量值| -#### 1.2.4 设置环境变量 -使用此方法可以实现对环境变量的增加、修改及删除功能。(注意:此处的环境变量指代的已加载到内存中的环境变量) +#### 1.2.2 设置环境变量 + +使用此方法可以实现对环境变量的增加、修改及删除功能。 - **增加** :当环境变量表中不存在该名称的环境变量时,则会执行新增操作; - **修改** :入参中的环境变量名称在当前环境变量表中存在,则把该环境变量值修改为入参中的值; - **删除**:当入参中的value为NULL时,则会删除入参名对应的环境变量。 +##### 1.2.1.1 设置 blob 类型环境变量 + +```C +EfErrCode ef_set_env_blob(const char *key, const void *value_buf, size_t buf_len) +``` + +|参数 |描述| +|:----- |:----| +|key |环境变量名称| +|value_buf |环境变量值缓冲区| +|buf_len |缓冲区长度,即值的长度| + +##### 1.2.1.2 设置字符串类型环境变量 + ```C EfErrCode ef_set_env(const char *key, const char *value) @@ -68,9 +100,9 @@ EfErrCode ef_set_env(const char *key, const char *value) |key |环境变量名称| |value |环境变量值| -#### 1.2.5 删除环境变量 +#### 1.2.3 删除环境变量 -使用此方法可以实现对环境变量的删除功能。(注意:此处的环境变量指代的已加载到内存中的环境变量) +使用此方法可以实现对环境变量的删除功能。 ```c EfErrCode ef_del_env(const char *key) @@ -80,51 +112,22 @@ EfErrCode ef_del_env(const char *key) | :--- | :----------- | | key | 环境变量名称 | -#### 1.2.6 保存环境变量 - -保存内存中的环境变量表到Flash中。 - -```C -EfErrCode ef_save_env(void) -``` -#### 1.2.7 重置环境变量 +#### 1.2.4 重置环境变量 将内存中的环境变量表重置为默认值。 ```C EfErrCode ef_env_set_default(void) ``` -#### 1.2.8 获取当前环境变量写入到Flash的字节大小 - -```C -size_t ef_get_env_write_bytes(void) -``` - -#### 1.2.9 设置并保存环境变量 +#### 1.2.5 打印环境变量 -设置环境变量成功后立刻保存。设置功能参考`ef_set_env`方法。 +通过在移植接口([`\easyflash\port\ef_port.c`](https://github.com/armink/EasyFlash/blob/master/easyflash/port/ef_port.c))中定义的`ef_print`打印方法,来将Flash中的所有环境变量输出出来。 ```C -EfErrCode ef_set_and_save_env(const char *key, const char *value) -``` - -|参数 |描述| -|:----- |:----| -|key |环境变量名称| -|value |环境变量值| - -#### 1.2.10 删除并保存环境变量 - -删除环境变量成功后立刻保存。删除功能参考`ef_del_env`方法。 - -```c -EfErrCode ef_del_and_save_env(const char *key) +void ef_print_env(void) ``` -| 参数 | 描述 | -| :--- | :----------- | -| key | 环境变量名称 | ### 1.3 在线升级 @@ -287,6 +290,5 @@ size_t ef_log_get_used_size(void); ## 3、注意 - 写数据前务必记得先擦除 -- 环境变量设置完后,只有调用`ef_save_env`才会保存在Flash中,否则开机会丢失修改的内容 - 不要在应用程序及Bootloader中执行擦除及拷贝自身的动作 -- ENV及Log功能对Flash擦除和写入要求4个字节对齐,擦除的最小单位则需根据用户的平台来确定 +- Log功能对Flash擦除和写入要求4个字节对齐,擦除的最小单位则需根据用户的平台来确定 diff --git a/docs/zh/design.md b/docs/zh/design.md new file mode 100644 index 0000000..c82008a --- /dev/null +++ b/docs/zh/design.md @@ -0,0 +1 @@ +马上就来…… \ No newline at end of file diff --git a/docs/zh/images/BackupAreaPartition.jpg b/docs/zh/images/BackupAreaPartition.jpg index e5cb4bcbd732e0a0a611622cb191d149665f75a6..231343d97c9c6222ee8a70cfb9f8a76d018d82f1 100644 GIT binary patch literal 41179 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�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 建议:点击项目主页 https://github.com/armink/EasyFlash 右上角 **Watch & Star**,这样项目有更新时,会及时以邮件形式通知你。 @@ -19,7 +19,6 @@ |源文件 |描述 | |:------------------------------ |:----- | |\easyflash\src\ef_env.c |Env(常规模式)相关操作接口及实现源码| -|\easyflash\src\ef_env_wl.c |Env(磨损平衡模式)相关操作接口及实现源码| |\easyflash\src\ef_iap.c |IAP 相关操作接口及实现源码| |\easyflash\src\ef_log.c |Log 相关操作接口及实现源码| |\easyflash\src\ef_utils.c |EasyFlash常用小工具,例如:CRC32| @@ -40,9 +39,16 @@ ## 3、Flash规格 -在移植时务必先要了解项目的Flash规格,这里需要了解是规格是 **最小擦除单位** 及 **内部存储结构** ,各个厂家的Flash规格都有差异,同一厂家不同系列的规格也有差异。例如:stm32f10x系列中的大容量MCU自带Flash的页大小均为2K,而中小容量的页大小均为1K。在stm32f4xx系列中,每个页大小不是像stm32f10x那样平均分配,最大的有128K,最小的有16K。 +在移植时务必先要了解项目的Flash规格,这里需要了解是规格是 **擦除粒度(擦除最小单元)** 、**写入粒度**及 **内部存储结构** ,各个厂家的Flash规格都有差异,同一厂家不同系列的规格也有差异。以下是一些常见 Flash 的规格 -> 注意:务必保证熟悉Flash规格后,再继续下章节。 +| Flash 类型 | 写入粒度 | 擦除粒度 | 内部存储结构 | +| ---------------------- | -------- | ------------ | ------------------------- | +| STM32F1 片内 Flash | 4bytes | 1K/2K | 均匀分布 | +| STM32F2/F4 片内 Flash | 1byte | 16K/64K/128K | 最大的有128K,最小的有16K | +| STM32L4 片内 Flash | 8bytes | 4K | 均匀分布 | +| Nor Flash(SPI-Flash) | 1bit | 4K | 均匀分布 | + +> **注意** :务必保证熟悉Flash规格后,再继续下章节。 ## 4、移植接口 @@ -69,7 +75,7 @@ EfErrCode ef_port_read(uint32_t addr, uint32_t *buf, size_t size) |参数 |描述| |:----- |:----| -|addr |读取起始地址| +|addr |读取起始地址(4字节对齐)| |buf |存放读取数据的缓冲区| |size |读取数据的大小(字节)| @@ -94,7 +100,7 @@ EfErrCode ef_port_write(uint32_t addr, const uint32_t *buf, size_t size) |参数 |描述| |:----- |:----| -|addr |写入的起始地址| +|addr |写入的起始地址(4字节对齐)| |buf |源数据的缓冲区| |size |写入数据的大小(字节)| @@ -162,33 +168,18 @@ void ef_print(const char *format, ...) - 默认状态:开启 - 操作方法:开启、关闭`EF_USING_ENV`宏即可 -#### 5.1.1 磨损平衡/常规 模式 - -磨损平衡:由于flash在写操作之前需要擦除且使用寿命有限,所以需要设计合理的磨损平衡(写平衡)机制,来保证数据被安全的保存在未到擦写寿命的Flash区中。 - -- 默认状态:常规模式 -- 常规模式:关闭`EF_ENV_USING_WL_MODE` -- 磨损平衡模式:打开`EF_ENV_USING_WL_MODE` - -#### 5.1.2 掉电保护 - -掉电保护:Power Fail Safeguard,当此项设置为可用时,如果在环境变量保存过程中发生掉电,已保存在Flash中的环境变量将不会有丢失的危险。下次上电后,环境变量将会被自动还原至之前的状态。(注意:本保护是基于软件实现的保护功能,更加可靠的掉电保护功能需要通过硬件来实现) - -- 默认状态:关闭 -- 操作方法:开启、关闭`EF_ENV_USING_PFS_MODE`宏即可 - -#### 5.1.3 自动更新(增量更新) +#### 5.1.1 自动更新(增量更新) -可以对 ENV 设置版本号(参照 5.1.4)。当 ENV 初始化时,如果检测到产品存储的版本号与设定版本号不一致,会自动追加默认环境变量集合中新增的环境变量。 +可以对 ENV 设置版本号(参照 5.1.2)。当 ENV 初始化时,如果检测到产品存储的版本号与设定版本号不一致,会自动追加默认环境变量集合中新增的环境变量。 该功能非常适用于经常升级的产品中,当产品功能变更时,有可能会新增环境变量,此时只需要增大当前设定的 ENV 版本号,下次固件升级后,新增的环境变量将会自动追加上去。 - 默认状态:关闭 - 操作方法:开启、关闭`EF_ENV_AUTO_UPDATE`宏即可 -#### 5.1.4 环境变量版本号 +#### 5.1.2 环境变量版本号 -该配置依赖于 5.1.3 配置。设置的环境变量版本号为整形数值,可以从 0 开始。如果在默认环境变量表中增加了环境变量,此时需要对该配置进行修改(通常加 1 )。 +该配置依赖于 5.1.1 配置。设置的环境变量版本号为整形数值,可以从 0 开始。如果在默认环境变量表中增加了环境变量,此时需要对该配置进行修改(通常加 1 )。 - 操作方法:修改`EF_ENV_VER_NUM`宏对应值即可 @@ -202,48 +193,38 @@ void ef_print(const char *format, ...) - 默认状态:开启 - 操作方法:开启、关闭`EF_USING_LOG`宏即可 -### 5.4 Flash最小擦除单位 +### 5.4 Flash 擦除粒度(最小擦除单位) + +- 操作方法:修改`EF_ERASE_MIN_SIZE`宏对应值即可,单位:byte -- 操作方法:修改`EF_ERASE_MIN_SIZE`宏对应值即可 +### 5.5 Flash 写入粒度 + +- 操作方法:修改`EF_WRITE_GRAN`宏对应值即可,单位:bit,仅支持:1/8/32/64 ### 5.5 备份区 备份区共计包含3个区域,依次为:环境变量区、日志区及在线升级区。分区方式如下图所示 -![backup_area_partiton](http://git.oschina.net/Armink/EasyFlash/raw/master/docs/zh/images/BackupAreaPartition.jpg) +![backup_area_partiton](/images/BackupAreaPartition.jpg) 在配置时需要注意以下几点: - 1、所有的区域必须按照`EF_ERASE_MIN_SIZE`对齐; -- 2、由于EasyFlash对所有的环境变量都会使用RAM缓存,但是在更多时候用户使用的环境变量大小会比`EF_ERASE_MIN_SIZE`小,所以需要再定义`ENV_USER_SETTING_SIZE`来指定用户设定的环境变量大小。 -- 3、环境变量区总容量在不同的模式下会有差异 - - 1、常规模式:没有差异; - - 2、擦写平衡模式:系统区将会占用1个`EF_ERASE_MIN_SIZE`大小,数据区至少等使用2个以上Flash扇区; - - 3、掉电保护模式:环境变量区将会被备份,所以总容量是常规模式的2倍; - - 4、擦写平衡+掉电保护模式:所需容量将会是擦写平衡模式下总容量的2倍。 - - 例如:`EF_ERASE_MIN_SIZE`是128K,`ENV_USER_SETTING_SIZE`是2K,那么你可以这样定义不同模式下的环境变量总容量: - - 1、常规模式:`1*EF_ERASE_MIN_SIZE`; - - 2、擦写平衡模式:`3*EF_ERASE_MIN_SIZE`(它将会有3个Flash扇区去存储环境变量,1个系统区,2个数据区,按照每个Flash扇区可被擦写10W次计算,那么当前配置至少可擦写20W次); - - 3、掉电保护模式:`2*EF_ERASE_MIN_SIZE`; - - 4、擦写平衡+掉电保护模式:`6*EF_ERASE_MIN_SIZE`; +- 2、从 V4.0 开始 ENV 的模式命名为 NG 模式,V4.0 之前的称之为 LEGACY 遗留模式; + - 遗留模式已经被废弃,不再建议继续使用; + - 如果需要继续使用遗留模式,请 EasyFlash 的 V3.X 版本。 #### 5.5.1 备份区起始地址 - 操作方法:修改`EF_START_ADDR`宏对应值即可 -#### 5.5.2 用户设定环境变量大小 - -- 操作方法:修改`ENV_USER_SETTING_SIZE`宏对应值即可 - -> 注意:不使用环境变量功能时,可以不定义此宏。 - -#### 5.5.3 环境变量区总容量 +#### 5.5.2 环境变量区总容量 - 操作方法:修改`ENV_AREA_SIZE`宏对应值即可 > 注意:不使用环境变量功能时,可以不定义此宏。 -#### 5.5.4 日志区总容量 +#### 5.5.3 日志区总容量 - 操作方法:修改`LOG_AREA_SIZE`宏对应值即可 diff --git a/docs/zh/v4_migrate.md b/docs/zh/v4_migrate.md new file mode 100644 index 0000000..c82008a --- /dev/null +++ b/docs/zh/v4_migrate.md @@ -0,0 +1 @@ +马上就来…… \ No newline at end of file