FATFS函数
来源:互联网 发布:软件可靠性加速测试 编辑:程序博客网 时间:2024/06/05 07:43
FATFS fs; //逻辑磁盘工作区.FIL file; //文件1UINT br,bw;//读写变量FILINFO fileinfo;//文件信息DIR dir; //目录FRESULT res;//返回值u8 fatbuf[512];//sd卡缓存区
下面是主要的几个函数
FRESULT f_mount ( BYTE Drive, /* 逻辑驱动器号 */ FATFS* FileSystemObject /* 工作区指针 */);
f_mount函数在FatFs模块上注册/注销一个工作区。 在使用任何其他文件函数之前,必须使用该函数为每个卷注册一个工作f_mount函数在FatFs模块上注册/注销一个工作区。 在使用任何其他文件函数之前,必须使用该函数为每个卷注册一个工作f_mount函数在FatFs模块上注册/注销一个工作区。 在使用任何其他文件函数之前,必须使用该函数为每个卷注册一个工作f_mount函数在FatFs模块上注册/注销一个工作区。 在使用任何其他文件函数之前,必须使用该函数为每个卷注册一个工作f_mount函数在FatFs模块上注册/注销一个工作区。 在使用任何其他文件函数之前,必须使用该函数为每个卷注册一个工作区。
要注销一个工作区,只要指定FileSystemObject为NULL即可,然后该工作区可以被丢弃。
f_open 创建/打开一个用于访问文件的文件对象FRESULT f_open ( FIL* FileObject, /* 空白文件对象结构指针 */ const XCHAR* FileName, /* 文件名指针 */ BYTE ModeFlags /* 模式标志 */);
ModeFlags指定文件的访问类型和打开方法。它是由下列标志的一个组合指定的。
模式
描述
FA_READ
指定读访问对象。可以从文件中读取数据。
与FA_WRITE结合可以进行读写访问。
FA_WRITE
指定写访问对象。可以向文件中写入数据。
与FA_READ结合可以进行读写访问。
FA_OPEN_EXISTING
打开文件。如果文件不存在,则打开失败。(默认)
FA_OPEN_ALWAYS
如果文件存在,则打开;否则,创建一个新文件。
FA_CREATE_NEW
创建一个新文件。如果文件已存在,则创建失败。
FA_CREATE_ALWAYS
创建一个新文件。如果文件已存在,则它将被截断并覆盖。
如果函数成功,则创建一个文件对象。该文件对象被后续的读/写函数用来访问文件。如果想要关闭一个打开的文件对象,则使用f_close函数。如果不关闭修改后的文件,那么文件可能会崩溃。
f_close 关闭一个打开的文件FRESULT f_close ( FIL* FileObject /* 文件对象结构的指针 */);
f_read 从一个文件读取数据FRESULT f_read ( FIL* FileObject, /* 文件对象结构的指针 */ void* Buffer, /* 存储读取数据的缓冲区的指针 */ UINT ByteToRead, /* 要读取的字节数 */ UINT* ByteRead /* 返回已读取字节数变量的指针 */);
文件对象中的读/写指针以已读取字节数增加。该函数成功后,应该检查 *ByteRead来检测文件是否结束。在读操作过程中,一旦 *ByteRead < ByteToRead,则读/写指针到达了文件结束位置。
f_write 写入数据到一个文件FRESULT f_write ( FIL* FileObject, /* 文件对象结构的指针 */ const void* Buffer, /* 存储写入数据的缓冲区的指针 */ UINT ByteToWrite, /* 要写入的字节数 */ UINT* ByteWritten /* 返回已写入字节数变量的指针 */);
文件对象中的读/写指针以已写入字节数增加。该函数成功后,应该检查 *ByteWritten来检测磁盘是否已满。在写操作过程中,一旦 *ByteWritten < *ByteToWritten,则意味着该卷已满。
f_opendir打开一个目录FRESULT f_opendir ( DIR* DirObject, /* 空白目录对象结构的指针 */ const XCHAR* DirName /* 目录名的指针 */);
f_opendir函数当_FS_MINIMIZE <=1时可用。
f_opendir函数打开一个已存在的目录,并为后续的调用创建一个目录对象。该目录对象结构可以在任何时候不经任何步骤而被丢弃。
f_readdir读取目录项FRESULT f_readdir ( DIR* DirObject, /* 指向打开的目录对象结构的指针 */ FILINFO* FileInfo /* 指向文件信息结构的指针 */);
f_readdir函数当_FS_MINIMIZE <=1时可用。
f_readdir函数顺序读取目录项。目录中的所有项可以通过重复调用f_readdir函数被读取。当所有目录项已被读取并且没有项要读取时,该函数没有任何错误地返回一个空字符串到f_name[]成员中。当FileInfo给定一个空指针时,目录对象的读索引将被回绕。
当LFN功能被使能时,在使用f_readdir函数之前,文件信息结构中的lfname和lfsize必须被初始化为有效数值。lfname是一个返回长文件名的字符串缓冲区指针。lfsize是以字符为单位的字符串缓冲区的大小。如果读缓冲区或LFN工作缓冲区的大小(对于LFN)不足,或者对象没有LFN,则一个空字符串将被返回到LFN读缓冲区。如果LFN包含任何不能被转换为OEM代码的字符,则一个空字符串将被返回,但是这不是Unicode API配置的情况。当lfname是一个空字符串时,没有LFN的任何数据被返回。当对象没有LFN时,任何小型大写字母可以被包含在SFN中。
当相对路径功能被使能(_FS_RPATH == 1)时,"."和".."目录项不会被过滤掉,并且它将出现在读目录项中。
记住每次操作完文件之后 记得关闭文件
- FATFS函数
- FatFS f_open()函数详解
- FATFS 的几个函数使用方法
- FATFS 的几个函数使用方法
- FATFS
- FatFs
- FatFs
- FATFS
- FatFs
- FATFS源码分析——内部函数
- FATFS函数之——f_open & f_read
- FATFS在U盘的底层操作函数
- STM32学习笔记之fatfs文件系统接口函数使用
- 对STM32中FATFS文件系统常用API函数的理解
- FatFS文件系统
- FatFs学习
- FATFS学习
- FatFS文件系统
- 第10章 泛型
- Linux环境下搭建Apache+subversion+svnmanager
- OK6410之蜂鸣器驱动软件分析---PWM定时器
- Wordpress的函数大全
- android x-loader和u-boot的关系
- FATFS函数
- jar包的疑惑
- 常用Linux系统伪装方法
- Android之退出整个应用方法之一
- Java垃圾回收机制
- API写的FTP上传下载控件
- android项目代码混淆时ksoap包出现错误的解决办法
- 原码、反码、补码,移码表示法
- CString,string,char*的综合比较