📄 fat.h
字号:
** 输 入: Drive:驱动器号
** ClusIndex:目录首簇号
** 输 出: DIR_EMPTY:空
** DIR_NOT_EMPTY:不空
** 其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetFDTInfo
********************************************************************************************************/
extern uint8 FDTIsLie(uint8 Drive, uint32 ClusIndex, char FileName[]);
/*********************************************************************************************************
** 函数名称: FDTIsLie
** 功能描述: 在指定目录查看指定文件(目录)是否存在
**
** 输 入: Drive:驱动器号
** ClusIndex:目录首簇号
** FileName:文件(目录)名
** 输 出: RETURN_OK:成功
** 其它参考fat.h中关于返回值的说明
** 全局变量: 无
** 调用模块: GetDiskInfo,GetFDTInfo
********************************************************************************************************/
#endif
/*******************************************************************************************************/
#ifndef IN_DISK
extern void DiskInit(void);
/*********************************************************************************************************
** 函数名称: DiskInit
** 功能描述: 初始化逻辑盘管理模块
**
** 输 入: 无
**
** 输 出: 无
**
** 全局变量: DiskInfo
** 调用模块: 无
********************************************************************************************************/
extern Disk_Info * GetDiskInfo(uint8 Drive);
/*********************************************************************************************************
** 函数名称: GetDiskInfo
** 功能描述: 获取指定逻辑盘信息
**
** 输 入: 逻辑盘号
**
** 输 出: 指向逻辑盘信息的结构体指针
**
** 全局变量: DiskInfo
** 调用模块: 无
********************************************************************************************************/
extern Disk_Info * GetEmptyDiskInfoAddr(void);
/*********************************************************************************************************
** 函数名称: GetEmptyDiskInfoAddr
** 功能描述: 获取空闲逻辑盘
**
** 输 入: 无
**
** 输 出: 指向逻辑盘信息的结构体指针
**
** 全局变量: DiskInfo
** 调用模块: 无
********************************************************************************************************/
extern void AddFileDriver(uint16 (* DiakCommand)(uint8 Cammand, void *Parameter));
/*********************************************************************************************************
** 函数名称: AddFileDriver
** 功能描述: 增加一个底层驱动程序
**
** 输 入: DiakCommand:驱动程序接口函数
**
** 输 出: 无
**
** 全局变量: DiskInfo
** 调用模块: 无
********************************************************************************************************/
extern void RemoveFileDriver(uint8 Drive);
/*********************************************************************************************************
** 函数名称: RemoveFileDriver
** 功能描述: 删除一个底层驱动程序
**
** 输 入: Drive:逻辑驱动器号
**
** 输 出: 无
**
** 全局变量: DiskInfo
** 调用模块: 无
********************************************************************************************************/
#endif
/*******************************************************************************************************/
#ifndef IN_RWSEC
extern void CacheInit(void);
/*********************************************************************************************************
** 函数名称: CacheInit
** 功能描述: 初始化磁盘cache
**
** 输 入: 无
**
** 输 出: 无
**
** 全局变量: DiskCache
** 调用模块: 无
********************************************************************************************************/
extern void CloseSec(uint8 Drive, uint32 Index);
/*********************************************************************************************************
** 函数名称: CloseSec
** 功能描述: 解锁指定cache(允许切换出内存)
**
** 输 入: Drive:逻辑驱动器号
** Index:缓冲的扇区号
** 输 出: 无
**
** 全局变量: DiskCache
** 调用模块: 无
********************************************************************************************************/
extern void CacheWriteBack2(uint16 Index);
/*********************************************************************************************************
** 函数名称: CacheWriteBack2
** 功能描述: 把指定扇区写回逻辑盘
**
** 输 入: Index:cache索引
**
** 输 出: 无
**
** 全局变量: DiskCache
** 调用模块: GetDiskInfo
********************************************************************************************************/
extern void CacheWriteBack(uint8 Drive, uint32 Index);
/*********************************************************************************************************
** 函数名称: CacheWriteBack
** 功能描述: 把指定cache写回逻辑盘
**
** 输 入: Drive:逻辑驱动器号
** Index:缓冲的扇区号
** 输 出: 无
**
** 全局变量: DiskCache
** 调用模块: CacheWriteBack2
********************************************************************************************************/
extern void AllCacheWriteBack(void);
/*********************************************************************************************************
** 函数名称: AllCacheWriteBack
** 功能描述: 把所有已改变的扇区写回逻辑盘
**
** 输 入: 无
**
** 输 出: 无
**
** 全局变量: DiskCache
** 调用模块: CacheWriteBack2
********************************************************************************************************/
extern uint16 GetCache(void);
/*********************************************************************************************************
** 函数名称: GetCache
** 功能描述: 获取一个cache
**
** 输 入: 无
**
** 输 出: cache索引
**
** 全局变量: DiskCache
** 调用模块: 无
********************************************************************************************************/
extern uint8 *OpenSec(uint8 Drive, uint32 Index);
/*********************************************************************************************************
** 函数名称: OpenSec
** 功能描述: 为逻辑盘上的一个扇区打开一个cache并锁定
**
** 输 入: Drive:磁盘号
** Index:扇区号
** 输 出: 指向指定扇区数据的指针
**
** 全局变量: DiskCache
** 调用模块: 无
**
** 作 者: 陈明计
** 日 期: 2003年9月3日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
extern uint8 ReadSec(uint8 Drive, uint32 Index);
/*********************************************************************************************************
** 函数名称: ReadSec
** 功能描述: 从逻辑盘读扇区
**
** 输 入: Disk:逻辑盘信息
** Index:扇区号
** 输 出: TRUE:成功
** FALSE:失败
** 全局变量: DiskCache
** 调用模块: GetDiskInfo
********************************************************************************************************/
extern void WriteSec(uint8 Drive, uint32 Index);
/*********************************************************************************************************
** 函数名称: WriteSec
** 功能描述: 说明指定逻辑盘的指定一个扇区被改写
**
** 输 入: Disk:逻辑盘信息
** Index:扇区号
** 输 出: 无
**
** 全局变量: DiskCache
** 调用模块: 无
********************************************************************************************************/
#endif
/*******************************************************************************************************/
#ifndef IN_FAT
extern uint32 FATGetNextClus(uint8 Drive, uint32 Index);
/*********************************************************************************************************
** 函数名称: FATGetNextClus
** 功能描述: 返回FAT表指定簇的下一个簇号
**
** 输 入: Drive:驱动器号
** Index:簇号
** 输 出: 下一个簇号
**
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/
void FATSetNextClus(uint8 Drive, uint32 Index, uint32 Next);
/*********************************************************************************************************
** 函数名称: FATSetNextClus
** 功能描述: 删除指定簇链
**
** 输 入: Drive:驱动器号
** Index:簇链中首簇号
** Next:下一个簇号
** 输 出: 无
**
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/
extern uint32 FATAddClus(uint8 Drive, uint32 Index);
/*********************************************************************************************************
** 函数名称: FATAddClus
** 功能描述: 为指定簇链增加一个簇
**
** 输 入: Drive:驱动器号
** Index:簇链中任意一个簇号,如果为0,则为一个空链增加一个簇
** 输 出: 增加的簇号
**
** 全局变量: 无
** 调用模块: 无
********************************************************************************************************/
extern void FATDelClusChain(uint8 Drive, uint32 Index);
/*********************************************************************************************************
** 函数名称: FATDelClusChain
** 功能描述: 删除指定簇链
**
** 输 入: Drive:驱动器号
** Index:簇链中首簇号
** 输 出: 无
**
** 全局变量: 无
** 调用模块: FATGetNextClus
********************************************************************************************************/
#endif
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -