⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 osfile.h

📁 单片机开发环境 windows+ads+hjtag
💻 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 + -