FatFs是一个开源的FAT文件系统模块,适用于小型嵌入式系统,如STM32。它支持FAT12、FAT16和FAT32文件系统格式,具有小巧高效、易于移植、功能丰富和兼容性好的特点。本文将详细介绍如何在STM32上移植FatFs文件系统,并提供代码示例。 准备工作在开始FatFs的移植之前,需要准备以下内容:硬件:STM32系列单片机,如STM32F407VET...
FATFS 模块在移植的时候,我们一般只需要修改 2 个文件,即 ffconf.h 和 diskio.c。 FATFS模块的所有配置项都是存放在 ffconf.h 里面,我们可以通过配置里面的一些选项,来满足自己的需求。 最顶层是应用层,使用者无需理会 FATFS 的内部结构和复杂的 FAT 协议,只需要调用FATFS 模块提供给用户的一系列应用接口函数,...
BYTE FATFS_Wr_Buff[128] ="hello,嵌入式知识开源社区RYMCU欢迎你!rn";// 写缓冲区 BYTE FATFS_Rd_Buff[128] ={0};// 读缓冲区 UINT fnum;//成功读写数量 FRESULT res;//返回值 printf("rnrn---FLASH FATFS文件系统测试---rnrn"); res = f_mount(&fs,"0:",1); if(res == FR_NO_FILE...
FRESULT f_mount ( BYTE vol, /* Logical drive number to be mounted/unmounted */ FATFS *fs /* Pointer to new file system object (NULL for unmount)*/ ) 函数说明: 1:此函数的作用就是在磁盘里注册一个缓冲区,用来存储STM32文件系统的一些相关信息。 2:参数说明: vol:盘符。 *fs:指向缓冲区的...
6、FATFS开放函数 f_mount-注册/注销一个工作区域(Work Area) f_open-打开/创建一个文件 f_close-关闭一个文件 f_read-读文件 f_write-写文件 f_Iseek-移动文件读/写指针 f_truncate-截断文件 f_sync-冲洗缓冲数据Flush Cached Data f_forward-直接转移文件数据到一个数据流 ...
3.3 FATFS文件操作 3.3.1 修改读写测试代码 3.4 配置问题记录 3.4.1 CubeMx生成代码bug 3.4.2 SD插入检测引脚配置 4. 结束语 1. 前言 SD卡/SD nand是嵌入式开发中常为使用的大容量存储设备,SD nand虽然当前价格比SD卡高,但胜在价格、封装以及稳定性上有优势,实际操作和SD卡没什么区别。关于...
f_mount函数有三个形参,第一个参数是指向FATFS变量指针,如果赋值为NULL可以取消物理设备挂载。第二个参数为逻辑设备编号,使用设备根路径表示,与物理设备编号挂钩,在 代码清单:FatFs-1 中我们定义SD卡物理编号为0,所以这里使用“0:”。第三个参数可选0或1,1表示立即挂载,0表示不立即挂载,延迟挂载。 f_mount函数...
用户应用程序需要由用户编写,想实现什么功能就编写什么的程序,一般我们只用到f_mount()、 f_open()、f_write()、 f_read()就可以实现文件的读写操作。 这些应用层函数使用方法与标准C的文件操作函数类似。 FatFs组件是FatFs的主体,文件都在源码src文件夹中,其中ff.c、 ff.h、integer.h以及diskio.h四个文件...
3.3 FATFS文件操作3.3.1 修改读写测试代码3.4 配置问题记录3.4.1 CubeMx生成代码bug3.4.2 SD插入检测引脚配置4. 结束语1. 前言SD卡/SD nand是嵌入式开发中常为使用的大容量存储设备,SD nand虽然当前价格比SD卡高,但胜在价格、封装以及稳定性上有优势,实际操作和SD卡没什么区别。
使用FATFS提供的f_open函数来打开SD卡上的文件。需要指定文件名和打开模式(例如只读、只写或读写)。 读取文件内容: 使用FATFS提供的f_read函数来读取文件内容。需要指定一个缓冲区来存储读取的数据,并指定要读取的字节数。 关闭文件和卸载SD卡: 完成文件读取后,使用f_close函数关闭文件。 最后,使用f_mount函数...