做单片机开发难免用到文件系统,以前用的老版本,最近做新项目想搞个更新版的,结果格式化这里就遇到困难,原来版本格式化函数只有三个参数:

FRESULT f_mkfs (BYTE  Drive,            /* 逻辑驱动器号 */BYTE  PartitioningRule, /* 分区规则 */WORD  AllocSize         /* 分配单元大小 */
);

最新版R0.12b (September 4, 2016)是这样的:

FRESULT f_mkfs (const TCHAR* path,  /* [IN] Logical drive number */BYTE  opt,          /* [IN] Format options */DWORD au,           /* [IN] Size of the allocation unit */void* work,         /* [-]  Working buffer */UINT len            /* [IN] Size of working buffer */
);

具体什么意思可参见官网,今天解决问题了,就分享一下使用实例,代码如下

void mkfs(){FIL fil;            /* File object */FRESULT res;        /* API result code */u8 bw;            /* Bytes written */u8 work[_MAX_SS]; /* Work area (larger is better for process time) */u8 readByte[15];bw=f_mkfs("0",FM_FAT|FM_SFD,1024,work,sizeof work);printf("%d",bw);res=f_mount (&fs,"0",1);res=f_open(&fil, "hello.txt", FA_READ | FA_WRITE);res=f_read(&fil,  readByte,  15, &bw);printf("%s",readByte);res=f_close(&fil);
  res=f_mount(0, "0", 0);
}

调用这个函数就会在驱动器0(实际用的是闪存w25q64)创建一个fat32文件系统。然后,就可以用面向对象的思维使用它了。注意最后一句是取消挂载。

我用的单片机是stm32f103zet6。

FAT32 R0.12b f_mkfs应用实例相关推荐

  1. HC32F460+RTthread U盘使用详解

    最近项目要求利用U盘进行在线升级,使用的是华大单片机跑的是RTthread,弄完后自己简单整理了下,希望对大家有所帮助. 一.准备工作 1.1硬件 华大HC32F460 demo评估板(方便连线调试使 ...

  2. 前端开发基础知识汇总

    一.HTML 1.前言与常用标签 浏览器 内核 备注 IE Trident IE.猎豹安全.360极速浏览器.百度浏览器 firefox Gecko 可惜这几年已经没落了,打开速度慢.升级频繁.猪一样 ...

  3. Spring Cloud微服务系统架构的一些简单介绍和使用

    Spring Cloud 目录 特征 云原生应用程序 Spring Cloud上下文:应用程序上下文服务 引导应用程序上下文 应用程序上下文层次结构 改变Bootstrap的位置Properties ...

  4. FatFs 之一 R0.13c版源码目录文件、函数、全配置项详解及移植说明

      FatFs 是用于小型嵌入式系统的通用 FAT/exFAT 文件系统模块.FatFs 模块的编写符合 ANSI C(C89),并与磁盘 I/O 层完全分离,因此它独立于硬件平台. 它可以集成到资源 ...

  5. FAT32 学习及注意事项

    目录 1 移植fatfs开源库 1.1 获取fatfs源码 1.2 实现diskio.c 1.3 配置fatfs支持中文 1.4 配置fatfs支持格式化 2 FAT32 目录项学习 2.1 FAT3 ...

  6. FatFs文件系统笔记--R0.13c

    目录 1. FatFs文件系统简介 1.1 FatFs的目录结构 1.2  FatFs帮助文档 1.3  FatFs源码 2.  FatFs 文件系统的移植 2.1 FatFs 分层体系 2.1 Fa ...

  7. 活动目录(Active Directory)域故障解决实例

    A1.客户机无法加入到域? 一.权限问题. 要想把一台计算机加入到域,必须得以这台计算机上的本地管理员(默认为administrator)身份登录,保证对这台计算机有管理控制权限.普通用户登录进来,更 ...

  8. 《51单片机应用开发从入门到精通》——2.2 跑马灯实例

    本节书摘来自异步社区<51单片机应用开发从入门到精通>一书中的第2章,第2.2节,作者 张华杰,更多章节内容可以访问云栖社区"异步社区"公众号查看. 2.2 跑马灯实例 ...

  9. 使用Redis分区将数据分割到多个Redis实例

    分区是将所有的数据分割到多个Redis实例的过程,所以每个Redis实例存放的是所有键值的子集. Redis分区主要有两个目标: 1)允许使用多台计算机的内存来存放更大的数据.如果不做分区的话,单台计 ...

  10. HTTP协议之post multipart/form-data数据类型实例

    首先,说这个问题之前吐槽一下网上的文章,做这个东西的时候几乎看了所有的博客,没一个说到点上的,太笼统,也不完整,我就在想等我做好一定要写篇完整的文章,其实最好的源码就是提供的demo. 1.先说下问题 ...

最新文章

  1. HBase源代码分析之MemStore的flush发起时机、推断条件等详情(二)
  2. 几种xml读取方法比较
  3. linux命令--sysctl
  4. 功能测试包含哪些测试_一小时复习,期末考试必过 重邮软件测试题总结
  5. 理解Synchronized
  6. 神州数码 每日总结DCWS
  7. 母机修改了文件,虚拟机复制到的可能不是预期的
  8. Doris SQL执行计划
  9. 谷歌离线地图WMS/WMTS服务
  10. latex希腊字母表
  11. java 习题_【精选】Java习题Java习题.pdf
  12. 技术团队人效计算公式
  13. postgreSQL安装成功后打开pgadmin4出现错误:Fatal error:The pgAdmin 4 server could not be contacted:
  14. 【聚合支付】 如何区分界定聚合支付中的“一清”和“二清”?
  15. 嵌入式开发板如何自动登陆校园网实现上网
  16. 前女友闺蜜给我发了一个压缩包,居然还带密码?暴力破解ZIP加密文件的密码!
  17. 微巨科技:公众号迁移公证流程及注意事项
  18. mysql数据库学习(keep update)
  19. 云通讯im怎么做php回调,腾讯云通讯IMSDK
  20. Silverlight 版 C1OutlookBar 初体验

热门文章

  1. 淘宝运营 DSR评分太低的影响 用补单的方法具体操作步骤,提高DSR评分
  2. 算术平均、几何平均、调和平均、平方平均和移动平均
  3. Blinky.c(171): warning: #1-D: last line of file ends without a newline
  4. Unity Navigation烘焙路面与自动寻路
  5. Django使用pyjwt实现Token跨域认证登录过程实践
  6. jpg转word免费的软件
  7. 服务器怎么格式化系统盘,如何格式化服务器
  8. linux下kegg注释软件,KEGG pathway注释过程
  9. HBuilder X运行到微信小程序报错 [微信小程序开发者工具] Error: read EBADF
  10. Linux下基于TCP的视频传输(c++ )