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

 

改进方法:分区检索。

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

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

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

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

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

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

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

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

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

 

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

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

再来配置FAL:

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

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

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

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

 

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

 

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

 

 

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

相关文章:

  • 2022-12-23
  • 2021-07-15
  • 2022-01-02
  • 2021-10-20
  • 2022-01-31
  • 2021-11-07
  • 2021-09-29
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-09-23
  • 2021-05-20
  • 2021-12-09
相关资源
相似解决方案