📄 file_api.h
字号:
/*
**************************************************************************************************************
* uC-USBH
* USB Host Stack
*
* (c) Copyright 2008, OnChip Technologies LLC
* All Rights Reserved
*
* www.onchiptech.com
*
* LICENSING TERMS:
*
* This software is protected by international copyright laws. Knowledge of the source code may not be used to
* write a similar product. This file may only be used in accordance with a license and should not be
* redistributed in any way. We appreciate your understanding, fairness and honesty.
*
* This material or any other copies thereof may not be provided or otherwise made available to any other
* person without written permission by Onchip Technologies. Its receipt and/or possession does
* not convey any right to alter, reproduce, disclose, transmit, manufacture, use or sell anything it may
* describe.
*
* File : file_api.h
* Programmer(s) : Ravikanth.P
* Version : V1.00
*
**************************************************************************************************************
*/
#if !defined(FILE_API_H)
#define FILE_API_H
/*
**************************************************************************************************************
* INCLUDE FILES
**************************************************************************************************************
*/
#include "ot_types.h"
/*
**************************************************************************************************************
* DEFINITIONS
**************************************************************************************************************
*/
#define RDONLY 1
#define RDWR 2
/*
**************************************************************************************************************
* TYPE DEFINITIONS
**************************************************************************************************************
*/
typedef struct file_nav {
CPU_INT32U EntClus;
CPU_INT32U EntClusOff;
CPU_INT08U NbrEnt;
CPU_INT32U PartHandle;
CPU_INT32U DataClus;
CPU_INT08U FileAttr;
} FILE_NAV;
typedef struct file_info {
CPU_INT08U DIR_Lfn[256]; /* Long file name */
CPU_INT08U DIR_Sfn[13]; /* Short file name */
CPU_INT08U DIR_Attr; /* Attributes */
CPU_INT08U DIR_NTRes; /* Reserved for NT */
CPU_INT08U DIR_CrtTimeTenth; /* Time stamp in milli seconds */
CPU_INT16U DIR_CrtTime; /* Time file was created */
CPU_INT16U DIR_CrtDate; /* Date file was created */
CPU_INT16U DIR_LstAccDate; /* Last access date */
CPU_INT16U DIR_FstClusHI; /* High word of the starting cluster */
CPU_INT16U DIR_WrtTime; /* Time of last write */
CPU_INT16U DIR_WrtDate; /* Date of last write */
CPU_INT16U DIR_FstClusLO; /* Low word of the starting cluster */
CPU_INT32U DIR_FileSize; /* File size */
} FILE_INFO;
/*
**************************************************************************************************************
* FILE SYSTEM API FUNCTION PROTOTYPES
**************************************************************************************************************
*/
CPU_INT08U FS_IsDevConn (void);
CPU_INT32U FILE_Open (CPU_INT08U *file_path,
CPU_INT32U mode,
CPU_INT32S *err);
CPU_INT32U FILE_Read (CPU_INT32U fd,
CPU_INT08U *buff,
CPU_INT32U bytes_to_read,
CPU_INT32S *err);
CPU_INT32U FILE_Write (CPU_INT32U fd,
CPU_INT08U *wrt_buf,
CPU_INT32U byts_to_wrt,
CPU_INT32S *err);
void FILE_Close (CPU_INT32U file_des);
CPU_INT32S FILE_Del (CPU_INT08U *file_path);
CPU_INT32S FILE_CreatDir (CPU_INT08U *file_path);
CPU_INT32S FILE_DelDir (CPU_INT08U *file_path);
CPU_INT32S FILE_NavStart (CPU_INT08U *file_path,
FILE_NAV *file_nav);
CPU_INT32S FILE_NavChild (FILE_NAV *parent_nav,
FILE_NAV *child_nav);
CPU_INT32S FILE_NavNxt (FILE_NAV *file_nav,
FILE_NAV *nxt_nav);
CPU_INT32S FILE_GetInfo (FILE_NAV *file_nav,
FILE_INFO *file_info);
void FILE_PrintInfo(FILE_INFO *file_info);
void FILE_NavCpy (FILE_NAV *dest_nav,
FILE_NAV *src_nav);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -