STM32 对flash使用文件系统写入速度慢

2019-10-14 22:57发布

本帖最后由 905324320 于 2016-10-12 15:27 编辑

我移植了mini板的文件系统到stm32f103c8t6上,flash用的是w25q64,能够实现文件的读写,但是速度很慢,写入文件每秒3~4k字节,下面是我的测试代码:
while(1)
{
    if(WriteAddr < 4096)
    {
       x1 = micros();
       f_write(ftemp,USART_RX_BUF,1024,&bw);
       f_sync(ftemp);
       WriteAddr = WriteAddr + 1024;
       printf(" %d us ",micros() - x1);
    }
}
通过串口得到的写入时间:
   写入时间.png
每写1K字节大约需要300ms,是什么问题导致写入速度这么慢?
@正点原子


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
憨厚诚实大叔
1楼-- · 2019-10-15 15:54
905324320 发表于 2016-10-13 15:30
修改数据要先对flash进行擦除,这个我知道的
我在初始上电时,先对整片flash进行了擦除,数据全部置为0x ...

具体没试过,如果每次上电都擦除过的话,别照搬原子的写函数,自己写一个针对上电擦除过的,应该是可能达到的
zddnet
2楼-- · 2019-10-15 19:22
 精彩回答 2  元偷偷看……

一周热门 更多>