FATFS文件系统f_mkfs函数详解

1.f_mkfs参数
参数path:要挂载/卸载的逻辑驱动器号;使用设备根路径表示。
参数opt:系统的格式,如图所示,若需要格式化为FAT32文件系统,则选择FM_FAT32即可。若需要格式化为exFAT文件系统,则应该开将宏定义#define _FS_EXFAT 1设置为1之后再选择FM_EXFAT。
参数au:每簇的字节数,以字节为单位,分配的最小单元,必须是512的倍数。当设置为512时,则每簇的字节数为512,则当新建一个低于512个字节的文件时,则文件占用512个字节,当设置为4096时,则当文件低于4096个字节时,则文件占用4096个字节,该值越大,读写大文件越快,但是碎片和存储空间的浪费也就越多。
参数work:为f_mkfs函数执行格式化时需要的缓存,至少应该是每个sector的大小,FAT32中每个扇区为512个字节
参数len:表示work缓存的长度。例如当设置为1024时,则work中引入的缓存空间也应该是1024个字节

例如:res = f_mkfs(“0:”, FM_FAT32, 4096, bpData, 1024);格式化为FAT32文件系统,每簇的大小为4096个字节,即最小的单元为4096,bpData指针中包含的长度应为1024个字节。
res = f_mkfs(“0:”, FM_FAT32, 512, bpData, 512);格式化为FAT32文件系统,每簇的大小为512个字节,即最小的单元为512,bpData指针中包含的长度应为512个字节。
res = f_mkfs(“0:”, FM_EXFAT, 4096, bpData, 1024);格式化为exFAT文件系统,每簇的大小为4096个字节,即最小的单元为4096,bpData指针中包含的长度应为1024个字节。
在这里插入图片描述
在这里插入图片描述

2.f_mkfs函数中的变量n_fats=1,表示FAT的表项个数,默认FAT32文件系统中,此值为1,当值为1时,使用f_mkfs格式化SD卡后,FAT的表项只有一个,当此值为2时,则格式化之后会有两个表项,FAT1和FAT2,FAT1为主表项,FAT2为备份表项。
在这里插入图片描述
3.特别注意,当使用f_mkfs函数格式化磁盘时,不需要先挂载(f_mount),因为当磁盘存在错误的时候,是挂载不成功,直接调用f_mkfs函数即可。

  • 2
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值