如何快速格式化SD卡或删除SD卡文件?

2019-07-20 01:19发布

  尊敬的各位大哥,大姐:
  中午好!
  今天做个小物件,就是把ADC采集的数据存到16G 的SD卡里面。我没有新建文件夹,而是以文本格式存储的。每天会生成一个新的文本。比如我存了两天数据,SD卡会生成两个文本(20190613.txt和20190614.txt)。但是随着时间的积累,存储的文本数量就很大了。我目前的做法是:  res=f_mkfs("0:",0,4096)
但是 16G的内存卡,不知道f_mkfs("0:",0,4096)中的4096是不是对的?下面是f_mkfs的声明:

FRESULT f_mkfs (
        const TCHAR* path,        /* Logical drive number */
        BYTE sfd,                        /* Partitioning rule 0:FDISK, 1:SFD */
        UINT au                                /* Allocation unit [bytes] */
)


我对FATFS文件系统不是很了解,百度了一下,介绍的资料不是很多。我用这个文件格式函数能格式化SD卡,但是速度大概半分钟。同样的条件下,我用笔记本格式化,很快,三四秒就能完成,区别咋这么大?我的想法是,怎样快速格式化SD卡或者快速删除掉SD卡的所有文本?跪求高手出高招,谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
1条回答
jiangyy
2019-07-20 03:00
问题解决了,簇大小决定了格式化时间的快慢,最终我选择了 res=f_mkfs("0:",1,32768);

        static const WORD vst[] = { 1024,   512,  256,  128,   64,    32,   16,    8,    4,    2,   0};
        static const WORD cst[] = {32768, 16384, 8192, 4096, 2048, 16384, 8192, 4096, 2048, 1024, 512};

格式化时间大概在2s左右

一周热门 更多>