fat.h

来自「Atmega64单片机程序(完整工程)」· C头文件 代码 · 共 919 行 · 第 1/3 页

H
919
字号
** 调用模块: 无
********************************************************************************************************/

extern INT32U FileRead(void *Buf,INT32U Size,HANDLE Handle);
/*********************************************************************************************************
** 函数名称: FileRead
** 功能描述: 读取文件
** 输   入: Buf:保存读回的数据
**           Size:要读的字节数
**           Handle:文件句柄
** 输   出: 实际读到的字节数
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/

extern INT8U FilePutCh(INT8U Ch,HANDLE Handle);
/*********************************************************************************************************
** 函数名称: FilePutCh
** 功能描述: 写一个字节到文件
** 输   入: Ch:要写的数据
**           Handle:文件句柄
** 输   出: RETURN_OK:成功
**           其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/
extern INT32U FileWrite(void *Buf,INT32U Size,HANDLE Handle);

/*********************************************************************************************************
** 函数名称: FileWrite
** 功能描述: 写文件
** 输   入: Buf:要写的数据
**           Size:要写的字节数
**           Handle:文件句柄
** 输   出: 实际写的字节数
** 全局变量: 无
** 调用模块: 无
** 作   者: 陈明计
** 日   期: 2003年6月5日
*******************************************************************************************************/

extern void FileCloseAll(void);
/*********************************************************************************************************
** 函数名称: FileCloseAll
** 功能描述: 关闭所有打开的文件
**
** 输 入: 无
**
** 输 出: 无
**
** 全局变量: FileInfo
** 调用模块: AllCacheWriteBack
********************************************************************************************************/

extern INT8U FileEof(HANDLE Handle);
/*********************************************************************************************************
** 函数名称: FileEof
** 功能描述: 判断文件是否到读\写到文件尾
**
** 输 入: Handle:文件句柄
**
** 输 出: 0:否
**        1:是
** 全局变量: FileInfo
** 调用模块: 无
********************************************************************************************************/

extern INT8U FileSeek(HANDLE Handle,INT32S offset,INT8U Whence);
/*********************************************************************************************************
** 函数名称: FileSeek
** 功能描述: 移动文件读\写位置
** 输   入: Handle:文件句柄
**           offset:移动偏移量
**           Whence:移动模式
                SEEK_SET:从文件头计算
	        SEEK_CUR:从当前位置计算
	        SEEK_END:从文件尾计算
** 输   出: 无
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/

#endif 


/*******************************************************************************************************/


#ifndef IN_DIR 

extern INT8U GetDrive(char *Path);
/*********************************************************************************************************
** 函数名称: GetDrive
** 功能描述: 获取指定目录的逻辑盘号
**
** 输 入: Path:路径名
**
** 输 出: 驱动器号
**
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/

extern INT8U ChangeDrive(char *Drive);
/*********************************************************************************************************
** 函数名称: ChangeDrive
** 功能描述: 改变当前逻辑盘
**
** 输 入: Drive:逻辑盘符字符串
**
** 输 出: RETURN_OK:成功
**        NOT_FIND_DISK:逻辑盘不存在
**        PARAMETER_ERR:非法参数
** 全局变量: 无
** 调用模块: strupr,GetDiskInfo
********************************************************************************************************/

extern INT32U GetDirClusIndex(char *Path);
/*********************************************************************************************************
** 函数名称: GetDirClusIndex
** 功能描述: 获取指定目录开始簇号
**
** 输 入: Path:路径名
**
** 输 出: 开始簇号,EMPTY_CLUS:为根目录
**
** 全局变量: 无
** 调用模块: strupr,GetDiskInfo,FindRootFDTInfo,FindFDTInfo
********************************************************************************************************/

extern INT8U MakeDir(char *Path);
/*********************************************************************************************************
** 函数名称: MakeDir
** 功能描述: 建立目录
**
** 输 入: Path:路径名
**
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetDirClusIndex,strupr,ClearClus,AddRootFDT,AddFDT
********************************************************************************************************/

extern INT8U RemoveDir(char*Path);
/*********************************************************************************************************
** 函数名称: RemoveDir
** 功能描述: 删除目录
**
** 输 入: Path:路径名
**
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetDirClusIndex,strupr,DelRootFDT,DelRootFDT
********************************************************************************************************/

extern INT8U ChangeDir(char *Path);
/*********************************************************************************************************
** 函数名称: ChangeDir
** 功能描述: 改变当前目录
**
** 输 入: Path:路径名
**
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetDirClusIndex,GetDiskInfo
********************************************************************************************************/

#endif 



/*******************************************************************************************************/




#ifndef IN_FDT 

extern INT8U ClearClus(INT8U Drive,INT32U Index);
/*********************************************************************************************************
** 函数名称: ClearClus
** 功能描述: 将指定簇所有数据清零
**
** 输 入: Disk:逻辑盘信息
**        Index:簇号
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetDiskInfo,OpenSec,WriteSec,CloseSec
********************************************************************************************************/

extern INT8U ChangeFDT(INT8U Drive,INT32U ClusIndex,FDT *FDTData);
/*********************************************************************************************************
** 函数名称: ChangeFDT
** 功能描述: 改变指定目录指定文件(目录)的属性
**
** 输 入: Rt:存储返回信息的指针
**        Drive:驱动器号
**        ClusIndex:目录首簇号
**        FileName:文件(目录)名
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetDiskInfo,GetFDTInfo,SetFDTInfo
********************************************************************************************************/

extern INT8U ReadFDTInfo(FDT *Rt,INT8U Drive,INT32U SecIndex,INT16U ByteIndex);
/*********************************************************************************************************
** 函数名称: ReadFDTInfo
** 功能描述: 读取FDT信息
**
** 输 入: Rt:存储返回信息的指针
**        Drive:驱动器号
**        SecIndex:扇区号
**        ByteIndex:偏移量
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: OpenSec,ReadSec,CloseSec
********************************************************************************************************/

extern INT8U WriteFDTInfo(FDT *FDTData,INT8U Drive,INT32U SecIndex,INT16U ByteIndex);
/*********************************************************************************************************
** 函数名称: WriteFDTInfo
** 功能描述: 读取FDT信息
**
** 输 入: Rt:存储返回信息的指针
**        Drive:驱动器号
**        SecIndex:扇区号
**        ByteIndex:偏移量
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: OpenSec,ReadSec,CloseSec
********************************************************************************************************/

extern INT8U GetFDTInfo(FDT *Rt,INT8U Drive,INT32U ClusIndex,INT32U Index);
/*********************************************************************************************************
** 函数名称: GetFDTInfo
** 功能描述: 获取指定目录指定文件(目录)信息
**
** 输 入: Rt:存储返回信息的指针
**        Drive:驱动器号
**        ClusIndex:目录首簇号
**        Index:文件(目录)在FDT中的位置
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetDiskInfo,ReadFDTInfo
********************************************************************************************************/

extern INT8U SetFDTInfo(INT8U Drive,INT32U ClusIndex,INT32U Index,FDT *FDTData);
/*********************************************************************************************************
** 函数名称: SetFDTInfo
** 功能描述: 获取指定目录指定文件(目录)信息
**
** 输 入: FDTData:要写入的信息
**        Drive:驱动器号
**        ClusIndex:目录首簇号
**        Index:文件(目录)在FDT中的位置
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetDiskInfo,WriteFDTInfo
********************************************************************************************************/

extern INT8U FindFDTInfo(FDT *Rt,INT8U Drive,INT32U ClusIndex,char FileName[]);
/*********************************************************************************************************
** 函数名称: FindFDT
** 功能描述: 在指定目录查找指定文件(目录)
**
** 输 入: Rt:存储返回信息的指针
**        Drive:驱动器号
**        ClusIndex:目录首簇号
**        FileName:文件(目录)名
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetDiskInfo,GetFDTInfo
********************************************************************************************************/

extern INT8U AddFDT(INT8U Drive,INT32U ClusIndex,FDT *FDTData);
/*********************************************************************************************************
** 函数名称: AddFDT
** 功能描述: 在指定目录查增加指定文件(目录)
**
** 输 入: Rt:存储返回信息的指针
**        Drive:驱动器号
**        ClusIndex:目录首簇号
**        FileName:文件(目录)名
** 输 出: RETURN_OK:成功
**        其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: FindFDT,GetFDTInfo,SetFDTInfo
********************************************************************************************************/

extern INT8U DelFDT(INT8U Drive,INT32U ClusIndex,char FileName[]);
/*********************************************************************************************************
** 函数名称: DelFDT
** 功能描述: 在指定目录删除指定文件(目录)
** 输   入: Drive:驱动器号
**           ClusIndex:目录首簇号
**           FileName:文件(目录)名
** 输   出: RETURN_OK:成功
**           其它参考fat.h中关于返回值的说明

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?