📄 osfile.h
字号:
/*******************************************************************************
(C) Copyright 2006, RAE Systems Inc. All rights reserved
----------------- File Information ---------------------------------------------
File Name: OSFILE.H
Last Modify Date: 9/19/2006
Discription: File system interface to uCOS-II header file
---------------- Important Notes -----------------------------------------------
----------------- Rivision History ---------------------------------------------
Version: V1.00
Last Modify Date: 9/17/2006
Discription: Initial version, imported from ZLG_FS V1.00
*******************************************************************************/
#ifndef __OSFILE_H__
#define __OSFILE_H__
#ifndef FILE_Q_SIZE
#define FILE_Q_SIZE 32 /* 可以保存的未处理的命令数目 */
#endif
typedef enum _OSFileCommand /* 命令代码 */
{
OS_RemoveFile, /* 删除文件 */
OS_FileOpen, /* 打开文件 */
OS_FileClose, /* 关闭文件 */
OS_FileGetCh, /* 从文件中读取一个字节数据 */
OS_FileRead, /* 从文件中读取多个字节数据 */
OS_FilePutCh, /* 写一个字节数据到文件 */
OS_FileWrite, /* 写多个字节数据到文件 */
OS_FileCloseAll, /* 关闭所有文件 */
OS_FileEof, /* 判断文件是否结束 */
OS_FileSeek, /* 移动文件指针 */
OS_MakeDir, /* 建立目录 */
OS_RemoveDir, /* 删除空目录 */
OS_ChangeDir, /* 改变当前目录 */
OS_GetDrive, /* 获取指定目录所在的逻辑盘的内部表示法 */
OS_ChangeDrive, /* 改变当前逻辑盘 */
OS_GetFDTInfo, /* 获取指定FDT信息 */
OS_AddFileDriver, /* 增加底层驱动程序 */
OS_RemoveFileDriver, /* 删除底层驱动程序 */
OS_AllCacheWriteBack /* 同步cache和逻辑盘 */
} OSFileCommand;
typedef union _Parameter
{
INT8U Puint8;
INT16U Puint16;
INT32U Puint32;
INT8S Pint8;
INT16S Pint16;
INT32S Pint32;
HANDLE Handle;
INT8S *cp;
INT8U *ucp;
void *Pvp;
} Parameter;
/* OS下文件系统参数数据结构 */
typedef struct _OSFileParameter
{
OSFileCommand Command; // 命令
OS_EVENT *Rt; // 用于返回
Parameter P1; // 第一个参数及返回值
Parameter P2; // 第二个参数
Parameter P3; // 第三个参数
Parameter P4; // 第四个参数
}OSFileParameter;
extern INT8U OSRemoveFile(INT8S *DirFileName);
extern HANDLE OSFileOpen(INT8S *DirFileName, INT8S *Type);
extern INT8U OSFileClose(HANDLE Handle);
extern INT8U OSFileGetCh( INT8S *Ch, HANDLE Handle );
extern INT32U OSFileRead(void *Buf, INT32U Size, HANDLE Handle);
extern INT8U OSFilePutCh(INT8U Ch, HANDLE Handle);
extern INT32U OSFileWrite(void *Buf, INT32U Size, HANDLE Handle);
extern INT8U OSFileCloseAll(void);
extern INT8U OSFileEof(HANDLE Handle);
extern INT8U OSFileSeek(HANDLE Handle, INT32S offset, INT8U Whence);
extern INT8U OSMakeDir(INT8S *Path);
extern INT8U OSRemoveDir(INT8S *Path);
extern INT8U OSChangeDir(INT8S *Path);
extern INT8U OSGetDrive(INT8S *Path);
extern INT8U OSChangeDrive(INT8S *Drive);
extern INT8U OSGetFDTInfo(FDT *Rt,INT8U Drive, INT32U ClusIndex, INT32U Index);
extern INT8U OSAddFileDriver(INT16U (* DiskCommand)(INT8U Cammand, void *Parameter));
extern INT8U OSRemoveFileDriver(INT8U Drive);
extern INT8U OSAllCacheWriteBack( void );
extern void OSFileTask(void *pdata);
#endif /* #ifndef __OSFILE_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -