From 535977647b71fba55b5e74e23936519f33e413fc Mon Sep 17 00:00:00 2001 From: yangjie11 Date: Thu, 23 Jun 2022 11:37:22 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E6=B7=BB=E5=8A=A0fal=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../rt-thread-standard/_sidebar.md | 1 + .../programming-manual/fal/fal.md | 288 ++++++++++++++++++ .../programming-manual/fal/fal_api.md | 145 +++++++++ .../fal/figures/1649928016219.png | Bin 0 -> 78368 bytes .../fal/figures/fal-api.png | Bin 0 -> 47111 bytes .../fal/figures/fal-port.png | Bin 0 -> 24465 bytes .../fal/figures/fal_framework.png | Bin 0 -> 33974 bytes 7 files changed, 434 insertions(+) create mode 100644 rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md create mode 100644 rt-thread-version/rt-thread-standard/programming-manual/fal/fal_api.md create mode 100644 rt-thread-version/rt-thread-standard/programming-manual/fal/figures/1649928016219.png create mode 100644 rt-thread-version/rt-thread-standard/programming-manual/fal/figures/fal-api.png create mode 100644 rt-thread-version/rt-thread-standard/programming-manual/fal/figures/fal-port.png create mode 100644 rt-thread-version/rt-thread-standard/programming-manual/fal/figures/fal_framework.png diff --git a/rt-thread-version/rt-thread-standard/_sidebar.md b/rt-thread-version/rt-thread-standard/_sidebar.md index 47a4a62..ac6b499 100644 --- a/rt-thread-version/rt-thread-standard/_sidebar.md +++ b/rt-thread-version/rt-thread-standard/_sidebar.md @@ -80,6 +80,7 @@ - [Lwip DHCP](/rt-thread-version/rt-thread-standard/programming-manual/lwip-dhcp/dhcp.md) - [netdev 网卡](/rt-thread-version/rt-thread-standard/programming-manual/netdev/netdev.md) - [FinSH 控制台](/rt-thread-version/rt-thread-standard/programming-manual/finsh/finsh.md) + - [FAL 组件](/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md) - [虚拟文件系统](/rt-thread-version/rt-thread-standard/programming-manual/filesystem/filesystem.md) - [ulog 日志](/rt-thread-version/rt-thread-standard/programming-manual/ulog/ulog.md) - [utest 测试框架](/rt-thread-version/rt-thread-standard/programming-manual/utest/utest.md) diff --git a/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md new file mode 100644 index 0000000..82e4bf5 --- /dev/null +++ b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md @@ -0,0 +1,288 @@ +# FAL 组件 + +FAL:Flash 抽象层。在 V4.1.0 中,将 fal 软件包重新定义为 RT-Thread 内部组件。 + +在使用方式上和以前有这些区别:原本使用 fal 需要在 RT-Thread 的包管理器中选择并进行下载;现在只需要在组件中打开使用即可。以下做详细介绍。 + +## 1、FAL介绍 + +FAL (Flash Abstraction Layer) Flash 抽象层,是对 Flash 及基于 Flash 的分区进行管理、操作的抽象层,对上层统一了 Flash 及 分区操作的 API (框架图如下所示),并具有以下特性: + +- 支持静态可配置的分区表,并可关联多个 Flash 设备; +- 分区表支持 **自动装载** 。避免在多固件项目,分区表被多次定义的问题; +- 代码精简,对操作系统 **无依赖** ,可运行于裸机平台,比如对资源有一定要求的 Bootloader; +- 统一的操作接口。保证了文件系统、OTA、NVM(例如:[EasyFlash](https://github.com/armink-rtt-pkgs/EasyFlash)) 等对 Flash 有一定依赖的组件,底层 Flash 驱动的可重用性; +- 自带基于 Finsh/MSH 的测试命令,可以通过 Shell 按字节寻址的方式操作(读写擦) Flash 或分区,方便开发者进行调试、测试; + +![FAL framework](figures/fal_framework.png) + +### 1.1、打开 FAL + +在组件中打开使用: + +![1649928016219](figures/1649928016219.png) + +每个功能的配置说明如下: + +- 开启调试日志输出(默认开启); +- 分区表是否在 `fal_cfg.h` 中定义(默认开启)。如果关闭此选项,fal 将会自动去指定 Flash 的指定位置去检索并装载分区表,具体配置详见下面两个选项; + - 存放分区表的 Flash 设备; + - 分区表的 **结束地址** 位于 Flash 设备上的偏移。fal 将从此地址开始往回进行检索分区表,直接读取到 Flash 顶部。如果不确定分区表具体位置,这里也可以配置为 Flash 的结束地址,fal 将会检索整个 Flash,检索时间可能会增加。 +- 启用 FAL 针对 SFUD 的移植文件(默认关闭); + - 应输入调用 `rt_sfud_flash_probe` 函数时传入的 FLASH 设备名称(也可以通过 list_device 命令查看 Block Device 的名字获取)。该名称与分区表中的 Flash 名称对应,只有正确设置设备名字,才能完成对 FLASH 的读写操作。 + +然后让 RT-Thread 的包管理器自动更新,或者使用 `pkgs --update` 命令更新包到 BSP 中。 + +### 1.2、FAL 目录 + +| 名称 | 说明 | +| ------- | ---------- | +| inc | 头文件目录 | +| src | 源代码目录 | +| samples | 例程目录 | + +### 1.3、FAL API + +FAL 相关的 API 如图所示,[点击此处查看 API 参数详解](./fal_api.md)。 + +![FAL API](figures/fal-api.png) + +## 2、使用 FAL + +使用 FAL 的基本步骤如下所示: + +1. 打开 FAL:从 Env 中打开 fal 软件包并下载到工程。 +2. FAL 移植:定义 flash 设备、定义 flash 设备表、定义 flash 分区表。以下主要对步骤 2 展开讲解。 +3. 调用 fal_init() 初始化该库:移植完成后,可在应用层调用,如在 main 函数中调用。 + +![fal 移植](figures/fal-port.png) + +### 2.1、定义 flash 设备 + +在定义 Flash 设备表前,需要先定义 Flash 设备。可以是片内 flash, 也可以是片外基于 SFUD 的 spi flash: + +- 定义片内 flash 设备可以参考 [`fal_flash_sfud_port.c`](https://github.com/RT-Thread-packages/fal/blob/master/samples/porting/fal_flash_sfud_port.c) 。 +- 定义片外 spi flash 设备可以参考 [`fal_flash_stm32f2_port.c`](https://github.com/RT-Thread-packages/fal/blob/master/samples/porting/fal_flash_stm32f2_port.c) 。 + +定义具体的 Flash 设备对象,用户需要根据自己的 Flash 情况分别实现 `init`、 `read`、 `write`、 `erase` 这些操作函数: + +- `static int init(void)`:**可选** 的初始化操作。 +- `static int read(long offset, uint8_t *buf, size_t size)`:读取操作。 + +| 参数 | 描述 | +| ------ | ------------------------- | +| offset | 读取数据的 Flash 偏移地址 | +| buf | 存放待读取数据的缓冲区 | +| size | 待读取数据的大小 | +| return | 返回实际读取的数据大小 | + +- `static int write(long offset, const uint8_t *buf, size_t size)` :写入操作。 + +| 参数 | 描述 | +| ------ | ------------------------- | +| offset | 写入数据的 Flash 偏移地址 | +| buf | 存放待写入数据的缓冲区 | +| size | 待写入数据的大小 | +| return | 返回实际写入的数据大小 | + +- `static int erase(long offset, size_t size)` :擦除操作。 + +| 参数 | 描述 | +| ------ | ------------------------- | +| offset | 擦除区域的 Flash 偏移地址 | +| size | 擦除区域的大小 | +| return | 返回实际擦除的区域大小 | + +用户需要根据自己的 Flash 情况分别实现这些操作函数。在文件最底部定义了具体的 Flash 设备对象 ,如下示例定义了 stm32f2 片上 flash:stm32f2_onchip_flash + +```c +const struct fal_flash_dev stm32f2_onchip_flash = +{ + .name = "stm32_onchip", + .addr = 0x08000000, + .len = 1024*1024, + .blk_size = 128*1024, + .ops = {init, read, write, erase}, + .write_gran = 8 +}; +``` + +- `"stm32_onchip"` : Flash 设备的名字。 +- `0x08000000`: 对 Flash 操作的起始地址。 +- `1024*1024`:Flash 的总大小(1MB)。 +- `128*1024`:Flash 块/扇区大小(因为 STM32F2 各块大小不均匀,所以擦除粒度为最大块的大小:128K)。 +- `{init, read, write, erase}` :Flash 的操作函数。 如果没有 init 初始化过程,第一个操作函数位置可以置空。 +- `8` : 设置写粒度,单位 bit, 0 表示未生效(默认值为 0 ),该成员是 fal 版本大于 0.4.0 的新增成员。各个 flash 写入粒度不尽相同,可通过该成员进行设置,以下列举几种常见 Flash 写粒度: + - nor flash: 1 bit + - stm32f4: 8 bit + - stm32f1: 32 bit + - stm32l4: 64 bit + +### 2.2、定义 flash 设备表 + +Flash 设备表定义在 `fal_cfg.h` 头文件中,定义分区表前需 **新建 `fal_cfg.h` 文件** ,请将该文件统一放在对应 BSP 或工程目录的 port 文件夹下,并将该头文件路径加入到工程。fal_cfg.h 可以参考 [示例文件 fal/samples/porting/fal_cfg.h](https://github.com/RT-Thread-packages/fal/blob/master/samples/porting/samples/porting/fal_cfg.h) 完成。 + +设备表示例: + +```c +/* ===================== Flash device Configuration ========================= */ +extern const struct fal_flash_dev stm32f2_onchip_flash; +extern struct fal_flash_dev nor_flash0; + +/* flash device table */ +#define FAL_FLASH_DEV_TABLE \ +{ \ + &stm32f2_onchip_flash, \ + &nor_flash0, \ +} +``` + +Flash 设备表中,有两个 Flash 对象,一个为 STM32F2 的片内 Flash ,一个为片外的 Nor Flash。 + +### 2.3、定义 flash 分区表 + +分区表也定义在 `fal_cfg.h` 头文件中。Flash 分区基于 Flash 设备,每个 Flash 设备又可以有 N 个分区,这些分区的集合就是分区表。在配置分区表前,务必保证已定义好 **Flash 设备** 及 **设备表**。fal_cfg.h 可以参考 [示例文件 fal/samples/porting/fal_cfg.h](https://github.com/RT-Thread-packages/fal/blob/master/samples/porting/samples/porting/fal_cfg.h) 完成。 + +分区表示例: + +```c +#define NOR_FLASH_DEV_NAME "norflash0" +/* ====================== Partition Configuration ========================== */ +#ifdef FAL_PART_HAS_TABLE_CFG +/* partition table */ +#define FAL_PART_TABLE \ +{ \ + {FAL_PART_MAGIC_WORD, "bl", "stm32_onchip", 0, 64*1024, 0}, \ + {FAL_PART_MAGIC_WORD, "app", "stm32_onchip", 64*1024, 704*1024, 0}, \ + {FAL_PART_MAGIC_WORD, "easyflash", NOR_FLASH_DEV_NAME, 0, 1024*1024, 0}, \ + {FAL_PART_MAGIC_WORD, "download", NOR_FLASH_DEV_NAME, 1024*1024, 1024*1024, 0}, \ +} +#endif /* FAL_PART_HAS_TABLE_CFG */ +``` + +上面这个分区表详细描述信息如下: + +| 分区名 | Flash 设备名 | 偏移地址 | 大小 | 说明 | +| ----------- | -------------- | --------- | ----- | ------------------ | +| "bl" | "stm32_onchip" | 0 | 64KB | 引导程序 | +| "app" | "stm32_onchip" | 64*1024 | 704KB | 应用程序 | +| "easyflash" | "norflash0" | 0 | 1MB | EasyFlash 参数存储 | +| "download" | "norflash0" | 1024*1024 | 1MB | OTA 下载区 | + +用户需要修改的分区参数包括:分区名称、关联的 Flash 设备名、偏移地址(相对 Flash 设备内部)、大小,需要注意以下几点: + +- 分区名保证 **不能重复**; +- 关联的 Flash 设备 **务必已经在 Flash 设备表中定义好** ,并且 **名称一致** ,否则会出现无法找到 Flash 设备的错误; +- 分区的起始地址和大小 **不能超过 Flash 设备的地址范围** ,否则会导致包初始化错误; + +> 注意:每个分区定义时,除了填写上面介绍的参数属性外,需在前面增加 `FAL_PART_MAGIC_WORD` 属性,末尾增加 `0` (目前用于保留功能) + +## 3、Finsh/MSH 测试命令 + +fal 提供了丰富的测试命令,项目只要在 RT-Thread 上开启 Finsh/MSH 功能即可。在做一些基于 Flash 的应用开发、调试时,这些命令会非常实用。它可以准确的写入或者读取指定位置的原始 Flash 数据,快速的验证 Flash 驱动的完整性,甚至可以对 Flash 进行性能测试。 + +具体功能如下:输入 fal 可以看到完整的命令列表 + +``` +msh />fal +Usage: +fal probe [dev_name|part_name] - probe flash device or partition by given name +fal read addr size - read 'size' bytes starting at 'addr' +fal write addr data1 ... dataN - write some bytes 'data' starting at 'addr' +fal erase addr size - erase 'size' bytes starting at 'addr' +fal bench - benchmark test with per block size + +msh /> +``` + +### 3.1、指定待操作的 Flash 设备或 Flash 分区 + +当第一次使用 fal 命令时,直接输入 `fal probe` 将会显示分区表信息。可以指定待操作的对象为分区表里的某个分区,或者某个 Flash 设备。 + +分区或者 Flash 被成功选中后,还将会显示它的一些属性情况。大致效果如下: + +``` +msh />fal probe +No flash device or partition was probed. +Usage: fal probe [dev_name|part_name] - probe flash device or partition by given name. +[I/FAL] ==================== FAL partition table ==================== +[I/FAL] | name | flash_dev | offset | length | +[I/FAL] ------------------------------------------------------------- +[I/FAL] | bl | stm32_onchip | 0x00000000 | 0x00010000 | +[I/FAL] | app | stm32_onchip | 0x00010000 | 0x000b0000 | +[I/FAL] | ef | norflash0 | 0x00000000 | 0x00100000 | +[I/FAL] | download | norflash0 | 0x00100000 | 0x00100000 | +[I/FAL] ============================================================= +msh /> +msh />fal probe download +Probed a flash partition | download | flash_dev: norflash0 | offset: 1048576 | len: 1048576 |. +msh /> +``` + +### 3.2、擦除数据 + +先输入 `fal erase` ,后面跟着待擦除数据的起始地址以及长度。以下命令为:从 0 地址(相对 Flash 或分区)开始擦除 4096 字节数据 + +> 注意:根据 Flash 特性,擦除动作将按扇区对齐进行处理。所以,如果擦除操作地址或长度未按照 Flash 的扇区对齐,将会擦除掉与其关联的整个扇区数据。 + +``` +msh />fal erase 0 4096 +Erase data success. Start from 0x00000000, size is 4096. +msh /> +``` + +### 3.3、写入数据 + +先输入 `fal write` ,后面跟着 N 个待写入的数据,并以空格隔开。以下命令为:从地址 8 的位置依次开始写入 1、2、3、4 、 5 这 5 个字节数据 + +``` +msh />fal write 8 1 2 3 4 5 +Write data success. Start from 0x00000008, size is 5. +Write data: 1 2 3 4 5 . +msh /> +``` + +### 3.4、读取数据 + +先输入 `fal read` ,后面跟着待读取数据的起始地址以及长度。以下命令为:从 0 地址开始读取 64 字节数据 + +``` +msh />fal read 0 64 +Read data success. Start from 0x00000000, size is 64. The data is: +Offset (h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F +[00000000] FF FF FF FF FF FF FF FF 01 02 03 04 05 FF FF FF +[00000010] FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +[00000020] FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF +[00000030] FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + +msh /> +``` + +### 3.5、性能测试 + +性能测试将会测试 Flash 的擦除、写入及读取速度,同时将会测试写入及读取数据的准确性,保证整个 Flash 或整个分区的 写入与读取 数据的一致性。 + +先输入 `fal bench` ,后面跟着待测试 Flash 的扇区大小(请查看对应的 Flash 手册,SPI Nor Flash 一般为 4096)。由于性能测试将会让整个 Flash 或者整个分区的数据丢失,所以命令最后必须跟 `yes` 。 + +``` +msh />fal bench 4096 yes +Erasing 1048576 bytes data, waiting... +Erase benchmark success, total time: 2.674S. +Writing 1048576 bytes data, waiting... +Write benchmark success, total time: 7.107S. +Reading 1048576 bytes data, waiting... +Read benchmark success, total time: 2.716S. +msh /> +``` + +## 4、常见应用 + +- [基于 FAL 分区的 fatfs 文件系统例程](https://github.com/RT-Thread/IoT_Board/tree/master/examples/15_component_fs_flash) +- [基于 FAL 分区的 littlefs 文件系统应用笔记](https://www.rt-thread.org/document/site/application-note/components/dfs/an0027-littlefs/) +- [基于 FAL 分区的 EasyFlash 移植说明](https://github.com/armink-rtt-pkgs/EasyFlash/tree/master/ports) + +## 5、常见问题 + +**1、使用 FAL 时,无法找到 `fal_cfg.h` 头文件** + +`fal_cfg.h` 为 fal 软件包的配置文件,需要用户手动新建,并定义相关的分区表信息。请将该文件统一放在 BSP 的 port 文件夹下或工程目录的 port 文件夹下(若没有则新建 port 文件夹),并将该头文件路径加入到工程,详见本文 "`2.2、定义 flash 设备表`" 小节。 \ No newline at end of file diff --git a/rt-thread-version/rt-thread-standard/programming-manual/fal/fal_api.md b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal_api.md new file mode 100644 index 0000000..912f916 --- /dev/null +++ b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal_api.md @@ -0,0 +1,145 @@ +# FAL API + +## 查找 Flash 设备 + +```C +const struct fal_flash_dev *fal_flash_device_find(const char *name) +``` + +| 参数 | 描述 | +| :----- | :----------------------- | +| name | Flash 设备名称 | +| return | 如果查找成功,将返回 Flash 设备对象,查找失败返回 NULL | + +## 查找 Flash 分区 + +```C +const struct fal_partition *fal_partition_find(const char *name) +``` + +| 参数 | 描述 | +| :----- | :----------------------- | +| name | Flash 分区名称 | +| return | 如果查找成功,将返回 Flash 分区对象,查找失败返回 NULL | + +## 获取分区表 + +```C +const struct fal_partition *fal_get_partition_table(size_t *len) +``` + +| 参数 | 描述 | +| :----- | :----------------------- | +| len | 分区表的长度 | +| return | 分区表 | + +## 临时设置分区表 + +FAL 初始化时会自动装载默认分区表。使用该设置将临时修改分区表,重启后会 **丢失** 该设置 + +```C +void fal_set_partition_table_temp(struct fal_partition *table, size_t len) +``` + +| 参数 | 描述 | +| :----- | :----------------------- | +| table | 分区表 | +| len | 分区表的长度 | + +## 从分区读取数据 + +```C +int fal_partition_read(const struct fal_partition *part, uint32_t addr, uint8_t *buf, size_t size) +``` + +| 参数 | 描述 | +| :----- | :----------------------- | +| part | 分区对象 | +| addr | 相对分区的偏移地址 | +| buf | 存放待读取数据的缓冲区 | +| size | 待读取数据的大小 | +| return | 返回实际读取的数据大小 | + +## 往分区写入数据 + +```C +int fal_partition_write(const struct fal_partition *part, uint32_t addr, const uint8_t *buf, size_t size) +``` + +| 参数 | 描述 | +| :----- | :----------------------- | +| part | 分区对象 | +| addr | 相对分区的偏移地址 | +| buf | 存放待写入数据的缓冲区 | +| size | 待写入数据的大小 | +| return | 返回实际写入的数据大小 | + +## 擦除分区数据 + +```C +int fal_partition_erase(const struct fal_partition *part, uint32_t addr, size_t size) +``` + +| 参数 | 描述 | +| :----- | :----------------------- | +| part | 分区对象 | +| addr | 相对分区的偏移地址 | +| size | 擦除区域的大小 | +| return | 返回实际擦除的区域大小 | + +## 擦除整个分区数据 + +```C +int fal_partition_erase_all(const struct fal_partition *part) +``` + +| 参数 | 描述 | +| :----- | :----------------------- | +| part | 分区对象 | +| return | 返回实际擦除的区域大小 | + +## 打印分区表 + +```c +void fal_show_part_table(void) +``` + +## 创建块设备 + +该函数可以根据指定的分区名称,创建对应的块设备,以便于在指定的分区上挂载文件系统 + +```C +struct rt_device *fal_blk_device_create(const char *parition_name) +``` + +| 参数 | 描述 | +| :----- | :----------------------- | +| parition_name | 分区名称 | +| return | 创建成功,则返回对应的块设备,失败返回空 | + +## 创建 MTD Nor Flash 设备 + +该函数可以根据指定的分区名称,创建对应的 MTD Nor Flash 设备,以便于在指定的分区上挂载文件系统 + +```C +struct rt_device *fal_mtd_nor_device_create(const char *parition_name) +``` + +| 参数 | 描述 | +| :------------ | :---------------------------------------------------- | +| parition_name | 分区名称 | +| return | 创建成功,则返回对应的 MTD Nor Flash 设备,失败返回空 | + +## 创建字符设备 + +该函数可以根据指定的分区名称,创建对应的字符设备,以便于通过 deivice 接口或 devfs 接口操作分区,开启了 POSIX 后,还可以通过 oepn/read/write 函数操作分区。 + +```C +struct rt_device *fal_char_device_create(const char *parition_name) +``` + +| 参数 | 描述 | +| :------------ | :----------------------------------------- | +| parition_name | 分区名称 | +| return | 创建成功,则返回对应的字符设备,失败返回空 | + diff --git a/rt-thread-version/rt-thread-standard/programming-manual/fal/figures/1649928016219.png b/rt-thread-version/rt-thread-standard/programming-manual/fal/figures/1649928016219.png new file mode 100644 index 0000000000000000000000000000000000000000..0e86a29474bb262ea446674215c4cda0d10cb3a4 GIT binary patch literal 78368 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�cV(V01Fx>&KBZKRP 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

F7o;qPH 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 literal 0 HcmV?d00001 diff --git a/rt-thread-version/rt-thread-standard/programming-manual/fal/figures/fal-api.png b/rt-thread-version/rt-thread-standard/programming-manual/fal/figures/fal-api.png new file mode 100644 index 0000000000000000000000000000000000000000..5885990fc30afe1e0bd76f100bcb514c4a627b85 GIT binary patch literal 47111 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 literal 0 HcmV?d00001 diff --git a/rt-thread-version/rt-thread-standard/programming-manual/fal/figures/fal-port.png b/rt-thread-version/rt-thread-standard/programming-manual/fal/figures/fal-port.png new file mode 100644 index 0000000000000000000000000000000000000000..35c1557a7afe5c517c59d31b8cf7247740a6b612 GIT binary patch literal 24465 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 Date: Thu, 23 Jun 2022 11:54:16 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../rt-thread-standard/programming-manual/fal/fal.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md index 82e4bf5..041d761 100644 --- a/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md +++ b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md @@ -1,8 +1,6 @@ # FAL 组件 -FAL:Flash 抽象层。在 V4.1.0 中,将 fal 软件包重新定义为 RT-Thread 内部组件。 - -在使用方式上和以前有这些区别:原本使用 fal 需要在 RT-Thread 的包管理器中选择并进行下载;现在只需要在组件中打开使用即可。以下做详细介绍。 +FAL:Flash 抽象层。在 V4.1.0 中,将 fal 软件包重新定义为 RT-Thread 内部组件,在使用方式上和以前有这些区别:(1)原本使用 fal 需要在 RT-Thread 的包管理器中选择并进行下载;(2)现在只需要在组件中打开使用即可,以下做详细介绍。 ## 1、FAL介绍 -- Gitee From 5dee4dd6c07bed39a8aea3c656a9af6ee04277ee Mon Sep 17 00:00:00 2001 From: yangjie11 Date: Thu, 23 Jun 2022 11:55:10 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../rt-thread-standard/programming-manual/fal/fal.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md index 041d761..0b0c779 100644 --- a/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md +++ b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md @@ -175,9 +175,9 @@ Flash 设备表中,有两个 Flash 对象,一个为 STM32F2 的片内 Flash > 注意:每个分区定义时,除了填写上面介绍的参数属性外,需在前面增加 `FAL_PART_MAGIC_WORD` 属性,末尾增加 `0` (目前用于保留功能) -## 3、Finsh/MSH 测试命令 +## 3、MSH 测试命令 -fal 提供了丰富的测试命令,项目只要在 RT-Thread 上开启 Finsh/MSH 功能即可。在做一些基于 Flash 的应用开发、调试时,这些命令会非常实用。它可以准确的写入或者读取指定位置的原始 Flash 数据,快速的验证 Flash 驱动的完整性,甚至可以对 Flash 进行性能测试。 +fal 提供了丰富的测试命令,项目只要在 RT-Thread 上开启 MSH 功能即可。在做一些基于 Flash 的应用开发、调试时,这些命令会非常实用。它可以准确的写入或者读取指定位置的原始 Flash 数据,快速的验证 Flash 驱动的完整性,甚至可以对 Flash 进行性能测试。 具体功能如下:输入 fal 可以看到完整的命令列表 -- Gitee From 89ac18cde7d8412e9b4c645df1a1be0860ea401a Mon Sep 17 00:00:00 2001 From: yangjie11 Date: Thu, 23 Jun 2022 14:05:08 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E9=93=BE=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../rt-thread-standard/programming-manual/fal/fal.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md index 0b0c779..4bf09cb 100644 --- a/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md +++ b/rt-thread-version/rt-thread-standard/programming-manual/fal/fal.md @@ -118,7 +118,7 @@ const struct fal_flash_dev stm32f2_onchip_flash = ### 2.2、定义 flash 设备表 -Flash 设备表定义在 `fal_cfg.h` 头文件中,定义分区表前需 **新建 `fal_cfg.h` 文件** ,请将该文件统一放在对应 BSP 或工程目录的 port 文件夹下,并将该头文件路径加入到工程。fal_cfg.h 可以参考 [示例文件 fal/samples/porting/fal_cfg.h](https://github.com/RT-Thread-packages/fal/blob/master/samples/porting/samples/porting/fal_cfg.h) 完成。 +Flash 设备表定义在 `fal_cfg.h` 头文件中,定义分区表前需 **新建 `fal_cfg.h` 文件** ,请将该文件统一放在对应 BSP 或工程目录的 port 文件夹下,并将该头文件路径加入到工程。fal_cfg.h 可以参考 [示例文件 fal/samples/porting/fal_cfg.h](https://github.com/RT-Thread-packages/fal/blob/master/samples/porting/fal_cfg.h) 完成。 设备表示例: @@ -139,7 +139,7 @@ Flash 设备表中,有两个 Flash 对象,一个为 STM32F2 的片内 Flash ### 2.3、定义 flash 分区表 -分区表也定义在 `fal_cfg.h` 头文件中。Flash 分区基于 Flash 设备,每个 Flash 设备又可以有 N 个分区,这些分区的集合就是分区表。在配置分区表前,务必保证已定义好 **Flash 设备** 及 **设备表**。fal_cfg.h 可以参考 [示例文件 fal/samples/porting/fal_cfg.h](https://github.com/RT-Thread-packages/fal/blob/master/samples/porting/samples/porting/fal_cfg.h) 完成。 +分区表也定义在 `fal_cfg.h` 头文件中。Flash 分区基于 Flash 设备,每个 Flash 设备又可以有 N 个分区,这些分区的集合就是分区表。在配置分区表前,务必保证已定义好 **Flash 设备** 及 **设备表**。fal_cfg.h 可以参考 [示例文件 fal/samples/porting/fal_cfg.h](https://github.com/RT-Thread-packages/fal/blob/master/samples/porting/fal_cfg.h) 完成。 分区表示例: @@ -276,7 +276,7 @@ msh /> ## 4、常见应用 - [基于 FAL 分区的 fatfs 文件系统例程](https://github.com/RT-Thread/IoT_Board/tree/master/examples/15_component_fs_flash) -- [基于 FAL 分区的 littlefs 文件系统应用笔记](https://www.rt-thread.org/document/site/application-note/components/dfs/an0027-littlefs/) +- [基于 FAL 分区的 littlefs 文件系统应用笔记](https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/application-note/components/dfs/an0027-littlefs.md) - [基于 FAL 分区的 EasyFlash 移植说明](https://github.com/armink-rtt-pkgs/EasyFlash/tree/master/ports) ## 5、常见问题 -- Gitee