基于spi FLASH的嵌入式文件系统 littlefs 测试代码

2019-12-09 13:48发布

LittleFS  - 一个高度完整的嵌入式文件系统
特性
a.        断电恢复能力 - 要求文件系统保持一致,并将数据刷新到底层存储。
b.        平均磨损 - 通常情况下,存储支持每块数量有限的擦除,因此使用整个存储设备对于可靠性非常重要。
c.        微小的占地面积 - 物联网设备受到ROM和RAM的限制。
跟spiffs相比:
SPIFFS在4kB Block的时候效率不高, 推荐也是64kB为最小擦除单位,但是64kB 擦除时间典型值为150ms,偏长了一点。
LittleFS的默认block就是4kB,而且LittleFS只有4个文件,看起来更简单一点。

LittleFS: 4 files and 100kB
  68K  lfs.c
  15K  lfs.h
1.4K  lfs_util.c
5.5K  lfs_util.h
SPIFFS: 8 files and 296kB
9.8K  spiffs_cache.c
  45K  spiffs_check.c
  14K  spiffs_config.h
  26K  spiffs_gc.c
  28K  spiffs.h
  41K  spiffs_hydrogen.c
  87K  spiffs_nucleus.c
  25K  spiffs_nucleus.h
----------------------
这个系统短小精悍,但网上资料不多,并且是英文的,许多人望而却步。
其实底层移植非常简单,已经有网友发布了 (注:编译器必须支持c99标准)
LittleFS SPI FLASH 例程基于W25Q64 STM32F103 Lifflefs移植例程(测试OK).rar (4.91 MB, 下载次数: 1194) 2018-9-24 19:50 上传 点击文件名下载附件
LittleFS SPI FLASH 例程基于W25Q64 STM32F103 Lifflefs移植例程


源代码   littlefs-master 2018-9.zip (60.84 KB, 下载次数: 174) 2018-9-24 19:50 上传 点击文件名下载附件
littlefs-master 9月份更新代码


littlefs-master ests 下面有许多测试例子(电脑测试用的)

源代码网址
https://github.com/ARMmbed/littlefs

祝大家中秋快乐!








友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
68条回答
not_at_all
1楼-- · 2019-12-12 12:33
 精彩回答 2  元偷偷看……
zkaifa
2楼-- · 2019-12-12 15:08

SPI FLASH 文件系统。 多谢分享
leiyitan
3楼-- · 2019-12-12 15:31
本帖最后由 leiyitan 于 2018-9-25 20:27 编辑

正苦于SPI flash 没法磨损均衡。Eric 2013做了flash fs的例程并做了大量测试,但是SPI FLASH没法挂载USB 大容量存储器,楼主这个可以做USB插电脑出U盘么?如果不能挂载到PC上导出导入数据的话,除了磨损均衡,有没有文件系统这个概念都不重要的,反正都是读写数据,还不如做成数据库。armink大神搞的一个东西还真不错!
heimareed
4楼-- · 2019-12-12 15:47
多谢分享。之前还想入手SPIFFS的,还没来得及。ARMINK的EasyFlash试过,没用到实际项目中使用过。回头一并测试下。
rerainings
5楼-- · 2019-12-12 19:16
有时间了折腾下
size327948964
6楼-- · 2019-12-13 00:11
 精彩回答 2  元偷偷看……

一周热门 更多>