以前觉得FATFS有点慢,现在才知道文件多了速度才是真的慢。

2019-12-13 18:29发布

STM32+W25Q64+FATFS
以前凑合着用,没怎么去测试性能。

今天试了下直接调用命令擦除W25Q64 一个4K簇,只要50ms。

通过FATFS去建立几十字节的一个文件,要500多ms。
而且随着文件夹下文件的不断增多,速度一直在下降,有200个文件时候,创建文件时间要1秒多,1000个文件时候,要20秒了。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
24条回答
tomzbj
1楼-- · 2019-12-13 18:29
擦除是瓶颈,ram够的话,换成32k或64k簇试试?
以前还考虑过给前面fat表加上回写式缓存,没顾上实施,总之应该有不少提升的余地
hpdell
2楼-- · 2019-12-13 21:48
 精彩回答 2  元偷偷看……
Excellence
3楼-- · 2019-12-13 23:23
本帖最后由 Excellence 于 2019-2-14 18:00 编辑

试试富士通的SPI芯片。
68336016
4楼-- · 2019-12-14 04:31
tomzbj 发表于 2019-2-14 16:13
擦除是瓶颈,ram够的话,换成32k或64k簇试试?
以前还考虑过给前面fat表加上回写式缓存,没顾上实施,总之 ...


我实际每次存就几百个字节。
68336016
5楼-- · 2019-12-14 10:13
hpdell 发表于 2019-2-14 16:15
貌似使用 fatfs + w25qxx 系列的,速度是很慢,

我一般使用 w25qxx 系列或者同类型的 芯片,一般都不使用  ...

以前总觉得stm32+ spi flash可以虚拟成U盘,让电脑直接读取数据很方便,所以才用了fatfs。
现在看来,要经常生成新文件存储的,fatfs应该不合适,效率太低了。
只不过不用文件系统的话,数据导入导出有些麻烦,用户最喜欢U盘方式。
68336016
6楼-- · 2019-12-14 15:33
Excellence 发表于 2019-2-14 16:18
试试富士通的IIC芯片。

I2C不适合吧,我这是SPI

一周热门 更多>