char disk_symbol[4] = "sd"; /* 磁盘号 */ uint32_t f_mkfs_buff[1024]; // 格式化缓冲区
static void fafts_mkfs( void ) { uint8_t result = FR_OK; // 格式化 SD 卡 result = f_mkfs( disk_symbol, // 磁盘号 FM_FAT32, /* 文件系统格式,详细请搜索: Format options */ 32*1024, // 簇占用字节数 f_mkfs_buff, // 用户提供的buffer sizeof(f_mkfs_buff) ); // 用户提供的buffer的大小,以字节为单位 if(result == FR_OK) { log("fatfs f_mkfs sucess!\r\n"); } else log("fatfs f_mkfs error: %d.\r\n", result ); }
注:文件系统里保存一个文件最小占用单位 == 簇;SD卡物理扇区一般是512字节,在文件格式化时,这里传递的参数是 簇 占用的 字节数,必须为 物理扇区大小的倍数。