[资料] 专为SPIflash写的开源文件系统SPIFFS
2291 查看
6 回复
 楼主 | 发布于 2018-02-26 | 只看楼主
分享到:

   之前在W25Q128上移植了FATFS,使用也正常,后来研究发现FATFS不支持写磨损均衡,不支持坏块管理,产品运行N后就有坏掉的风险,于是找到了SPIFFS,开源的,感觉很不错,移植不难,目前已经跑起来,拿出来分享


https://github.com/pellepl/spiffs



1、简介

SPIFFS是一个文件系统,用于嵌入式产品中的SPI NOR flash器件。

SPIFFS的设计意图具有以下特点:

•小的(嵌入式)产品,少的内存,没有堆(heap)

•只有大数据(块)可以擦除

•擦除将重置块中的所有位

•写入是将位从1写为0

•从0写为1只能靠块擦除实现

•磨损平衡


2、特点

SPIFFS能做什么:

•专为低内存使用

•使用静态分配大小的内存缓冲区,独立的文件数量

•类POSIX的API,如:关闭,读,写,寻道,状态等

•它可以运行在任何NOR闪存,不仅仅是SPI Flash,理论上也对任何MCU的嵌入式Flash可行

•同一产品中可以运行多种SPIFFS的配置,即使只有一个SPI Flash器件

•实现静态磨损均衡

•内置文件系统一致性检查


SPIFFS不能做什么:

•目前来说,不支持目录。它会产生一个扁平结构。要创建一个带路径的文件“tmp/myfile.txt”,将创建一个文件“tmp/myfile.txt

”,而不是目录“tmp”下的“myfiletxt”。

•它不是一个实时堆栈。一个写操作可能需要比其它文件系统更长的时间。

•规模小。SPIFFS是为小存储设备设计的,通常为SPI Flash这类器件的大小。小于~128MB也许是个坏主意。尽可能使用小内存是设计目

标的一个副作用。

•目前,它没有检测或处理坏块。


在STM32上的移植代码在附件中



本帖有更多资源,需 登录 才可以下载,没有帐号?立即 注册

(0 ) (0 )
回复 举报

回复于 2018-02-26 沙发

感谢分享;
(0 )
评论 (0) 举报

回复于 2018-02-26 2#

非常好的资料
(0 )
评论 (0) 举报

回复于 2018-06-28 3#

感谢分享
(0 )
评论 (0) 举报

回复于 2018-06-29 4#

感谢分享
(0 )
评论 (0) 举报

回复于 2018-12-26 5#

感谢分享!!需要机器人(工业,服务)的设计方案;自动化设备改造(螺丝机,点胶机等)以及个电子相关的新产品研发(微信调控暖手宝温度等)。
(0 )
评论 (0) 举报

回复于 2018-12-26 6#

谢谢 ,支持一下
(0 )
评论 (0) 举报
  • 发表回复
    0/3000





    举报

    请选择举报类别

    • 广告垃圾
    • 违规内容
    • 恶意灌水
    • 重复发帖

    全部板块

    返回顶部