SFUD+FAL+EasyFlash典型场景需求分析,并记一次实操记录

Posted happybirthdaytoyou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SFUD+FAL+EasyFlash典型场景需求分析,并记一次实操记录相关的知识,希望对你有一定的参考价值。

SFUD+FAL+EasyFlash典型场景需求分析:用整个flash存储数据,上千条数据,读取得时候用easyflash很慢,估计要检索整个flash太慢了。

 

改进方法:分区检索。

1存数据时,根据数据特征进行划分,划分到特定的某个区,分区存储这些数据。

2检索数据时,首先根据待检索数据的特征,获取具体需要检索哪个分区。然后在该分区内使用easyflash提供的kv查询接口进行检索。

技术图片

/***********************************************下面开始实操  FAL部分Start*****************************************************************************/

FAL的git地址 https://github.com/RT-Thread-packages/fal      

通过ENV配置  FAL对接SFUD时  的注意事项

技术图片

源码内增加部分代码:向FAL_FLASH_DEV_TABLE和FAL_PART_TABLE添加存储设备的信息,并调用fal_init()。

技术图片

 

如何在ENV内配置FAL?配置很简单。  因为我们要使用FAL对接SFUD(参考本博文的第一幅代码层次框架图), 所以要先配置好SFUD。

SFUD配置可以参考我的另一篇文章:  https://www.cnblogs.com/happybirthdaytoyou/p/11924291.html

再来配置FAL:

技术图片技术图片

fal 提供了丰富的测试命令,项目只要在 RT-Thread 上开启 Finsh/MSH 功能即可。 

在做一些基于 Flash 的应用开发、调试时,这些命令会非常实用。它可以准确的写入或者读取指定位置的原始 Flash 数据,快速的验证 Flash 驱动的完整性,甚至可以对 Flash 进行性能测试。

技术图片

 

/***********************************************下面开始实操  FAL部分OVER****************************************************************************/

 

/***********************************************下面开始实操 EasyFlash部分Start*****************************************************************************/

 

 

/***********************************************下面开始实操 EasyFlash部分OVER***************************************************************************/

以上是关于SFUD+FAL+EasyFlash典型场景需求分析,并记一次实操记录的主要内容,如果未能解决你的问题,请参考以下文章

stm32f103的 RT-Thread3.1.3移植SFUD+FAL+EasyFlash

stm32f103的 RT-Thread3.1.3移植SFUD+FAL+EasyFlash

stm32f103的 RT-Thread3.1.3移植SFUD+FAL+EasyFlash

RT-Thread完整版fal及easyflash移植

RT-Thread完整版fal及easyflash移植

RT-Thread完整版fal及easyflash移植