Radio Datalogger Project  Version 2.0
Data Structures | Macros | Typedefs | Enumerations | Functions
ff.h File Reference
#include "integer.h"
#include "ffconf.h"

Data Structures

struct  FATFS
 
struct  FIL
 
struct  DIR
 
struct  FILINFO
 

Macros

#define _FATFS   8085 /* Revision ID */
 
#define _DF1S   0x81 /* DBC 1st byte range 1 start */
 
#define _DF1E   0x9F /* DBC 1st byte range 1 end */
 
#define _DF2S   0xE0 /* DBC 1st byte range 2 start */
 
#define _DF2E   0xFC /* DBC 1st byte range 2 end */
 
#define _DS1S   0x40 /* DBC 2nd byte range 1 start */
 
#define _DS1E   0x7E /* DBC 2nd byte range 1 end */
 
#define _DS2S   0x80 /* DBC 2nd byte range 2 start */
 
#define _DS2E   0xFC /* DBC 2nd byte range 2 end */
 
#define LD2PD(drv)   (drv) /* Physical drive# is equal to the logical drive# */
 
#define LD2PT(drv)   0 /* Always mounts the 1st partition */
 
#define _T(x)   x
 
#define _TEXT(x)   x
 
#define FA_READ   0x01
 
#define FA_OPEN_EXISTING   0x00
 
#define FA__ERROR   0x80
 
#define FA_WRITE   0x02
 
#define FA_CREATE_NEW   0x04
 
#define FA_CREATE_ALWAYS   0x08
 
#define FA_OPEN_ALWAYS   0x10
 
#define FA__WRITTEN   0x20
 
#define FA__DIRTY   0x40
 
#define FS_FAT12   1
 
#define FS_FAT16   2
 
#define FS_FAT32   3
 
#define AM_RDO   0x01 /* Read only */
 
#define AM_HID   0x02 /* Hidden */
 
#define AM_SYS   0x04 /* System */
 
#define AM_VOL   0x08 /* Volume label */
 
#define AM_LFN   0x0F /* LFN entry */
 
#define AM_DIR   0x10 /* Directory */
 
#define AM_ARC   0x20 /* Archive */
 
#define AM_MASK   0x3F /* Mask of defined bits */
 
#define CREATE_LINKMAP   0xFFFFFFFF
 
#define BS_jmpBoot   0
 
#define BS_OEMName   3
 
#define BPB_BytsPerSec   11
 
#define BPB_SecPerClus   13
 
#define BPB_RsvdSecCnt   14
 
#define BPB_NumFATs   16
 
#define BPB_RootEntCnt   17
 
#define BPB_TotSec16   19
 
#define BPB_Media   21
 
#define BPB_FATSz16   22
 
#define BPB_SecPerTrk   24
 
#define BPB_NumHeads   26
 
#define BPB_HiddSec   28
 
#define BPB_TotSec32   32
 
#define BS_55AA   510
 
#define BS_DrvNum   36
 
#define BS_BootSig   38
 
#define BS_VolID   39
 
#define BS_VolLab   43
 
#define BS_FilSysType   54
 
#define BPB_FATSz32   36
 
#define BPB_ExtFlags   40
 
#define BPB_FSVer   42
 
#define BPB_RootClus   44
 
#define BPB_FSInfo   48
 
#define BPB_BkBootSec   50
 
#define BS_DrvNum32   64
 
#define BS_BootSig32   66
 
#define BS_VolID32   67
 
#define BS_VolLab32   71
 
#define BS_FilSysType32   82
 
#define FSI_LeadSig   0
 
#define FSI_StrucSig   484
 
#define FSI_Free_Count   488
 
#define FSI_Nxt_Free   492
 
#define MBR_Table   446
 
#define DIR_Name   0
 
#define DIR_Attr   11
 
#define DIR_NTres   12
 
#define DIR_CrtTime   14
 
#define DIR_CrtDate   16
 
#define DIR_FstClusHI   20
 
#define DIR_WrtTime   22
 
#define DIR_WrtDate   24
 
#define DIR_FstClusLO   26
 
#define DIR_FileSize   28
 
#define LDIR_Ord   0
 
#define LDIR_Attr   11
 
#define LDIR_Type   12
 
#define LDIR_Chksum   13
 
#define LDIR_FstClusLO   26
 
#define LD_WORD(ptr)   (WORD)(*(WORD*)(BYTE*)(ptr))
 
#define LD_DWORD(ptr)   (DWORD)(*(DWORD*)(BYTE*)(ptr))
 
#define ST_WORD(ptr, val)   *(WORD*)(BYTE*)(ptr)=(WORD)(val)
 
#define ST_DWORD(ptr, val)   *(DWORD*)(BYTE*)(ptr)=(DWORD)(val)
 

Typedefs

typedef char TCHAR
 

Enumerations

enum  FRESULT {
  FR_OK = 0,
  FR_DISK_ERR,
  FR_INT_ERR,
  FR_NOT_READY,
  FR_NO_FILE,
  FR_NO_PATH,
  FR_INVALID_NAME,
  FR_DENIED,
  FR_EXIST,
  FR_INVALID_OBJECT,
  FR_WRITE_PROTECTED,
  FR_INVALID_DRIVE,
  FR_NOT_ENABLED,
  FR_NO_FILESYSTEM,
  FR_MKFS_ABORTED,
  FR_TIMEOUT,
  FR_LOCKED,
  FR_NOT_ENOUGH_CORE,
  FR_TOO_MANY_OPEN_FILES
}
 

Functions

FRESULT f_mount (BYTE, FATFS *)
 
FRESULT f_open (FIL *, const TCHAR *, BYTE)
 
FRESULT f_read (FIL *, void *, UINT, UINT *)
 
FRESULT f_lseek (FIL *, DWORD)
 
FRESULT f_close (FIL *)
 
FRESULT f_opendir (DIR *, const TCHAR *)
 
FRESULT f_readdir (DIR *, FILINFO *)
 
FRESULT f_stat (const TCHAR *, FILINFO *)
 
FRESULT f_write (FIL *, const void *, UINT, UINT *)
 
FRESULT f_getfree (const TCHAR *, DWORD *, FATFS **)
 
FRESULT f_truncate (FIL *)
 
FRESULT f_sync (FIL *)
 
FRESULT f_unlink (const TCHAR *)
 
FRESULT f_mkdir (const TCHAR *)
 
FRESULT f_chmod (const TCHAR *, BYTE, BYTE)
 
FRESULT f_utime (const TCHAR *, const FILINFO *)
 
FRESULT f_rename (const TCHAR *, const TCHAR *)
 
DWORD get_fattime (void)
 

Macro Definition Documentation

#define _DF1E   0x9F /* DBC 1st byte range 1 end */
#define _DF1S   0x81 /* DBC 1st byte range 1 start */
#define _DF2E   0xFC /* DBC 1st byte range 2 end */
#define _DF2S   0xE0 /* DBC 1st byte range 2 start */
#define _DS1E   0x7E /* DBC 2nd byte range 1 end */
#define _DS1S   0x40 /* DBC 2nd byte range 1 start */
#define _DS2E   0xFC /* DBC 2nd byte range 2 end */
#define _DS2S   0x80 /* DBC 2nd byte range 2 start */
#define _FATFS   8085 /* Revision ID */
#define _T (   x)    x
#define _TEXT (   x)    x
#define AM_ARC   0x20 /* Archive */
#define AM_DIR   0x10 /* Directory */
#define AM_HID   0x02 /* Hidden */
#define AM_LFN   0x0F /* LFN entry */
#define AM_MASK   0x3F /* Mask of defined bits */
#define AM_RDO   0x01 /* Read only */
#define AM_SYS   0x04 /* System */
#define AM_VOL   0x08 /* Volume label */
#define BPB_BkBootSec   50
#define BPB_BytsPerSec   11
#define BPB_ExtFlags   40
#define BPB_FATSz16   22
#define BPB_FATSz32   36
#define BPB_FSInfo   48
#define BPB_FSVer   42
#define BPB_HiddSec   28
#define BPB_Media   21
#define BPB_NumFATs   16
#define BPB_NumHeads   26
#define BPB_RootClus   44
#define BPB_RootEntCnt   17
#define BPB_RsvdSecCnt   14
#define BPB_SecPerClus   13
#define BPB_SecPerTrk   24
#define BPB_TotSec16   19
#define BPB_TotSec32   32
#define BS_55AA   510
#define BS_BootSig   38
#define BS_BootSig32   66
#define BS_DrvNum   36
#define BS_DrvNum32   64
#define BS_FilSysType   54
#define BS_FilSysType32   82
#define BS_jmpBoot   0
#define BS_OEMName   3
#define BS_VolID   39
#define BS_VolID32   67
#define BS_VolLab   43
#define BS_VolLab32   71
#define CREATE_LINKMAP   0xFFFFFFFF
#define DIR_Attr   11
#define DIR_CrtDate   16
#define DIR_CrtTime   14
#define DIR_FileSize   28
#define DIR_FstClusHI   20
#define DIR_FstClusLO   26
#define DIR_Name   0
#define DIR_NTres   12
#define DIR_WrtDate   24
#define DIR_WrtTime   22
#define FA__DIRTY   0x40
#define FA__ERROR   0x80
#define FA__WRITTEN   0x20
#define FA_CREATE_ALWAYS   0x08
#define FA_CREATE_NEW   0x04
#define FA_OPEN_ALWAYS   0x10
#define FA_OPEN_EXISTING   0x00
#define FA_READ   0x01
#define FA_WRITE   0x02
#define FS_FAT12   1
#define FS_FAT16   2
#define FS_FAT32   3
#define FSI_Free_Count   488
#define FSI_LeadSig   0
#define FSI_Nxt_Free   492
#define FSI_StrucSig   484
#define LD2PD (   drv)    (drv) /* Physical drive# is equal to the logical drive# */
#define LD2PT (   drv)    0 /* Always mounts the 1st partition */
#define LD_DWORD (   ptr)    (DWORD)(*(DWORD*)(BYTE*)(ptr))
#define LD_WORD (   ptr)    (WORD)(*(WORD*)(BYTE*)(ptr))
#define LDIR_Attr   11
#define LDIR_Chksum   13
#define LDIR_FstClusLO   26
#define LDIR_Ord   0
#define LDIR_Type   12
#define MBR_Table   446
#define ST_DWORD (   ptr,
  val 
)    *(DWORD*)(BYTE*)(ptr)=(DWORD)(val)
#define ST_WORD (   ptr,
  val 
)    *(WORD*)(BYTE*)(ptr)=(WORD)(val)

Typedef Documentation

typedef char TCHAR

Enumeration Type Documentation

enum FRESULT
Enumerator
FR_OK 
FR_DISK_ERR 
FR_INT_ERR 
FR_NOT_READY 
FR_NO_FILE 
FR_NO_PATH 
FR_INVALID_NAME 
FR_DENIED 
FR_EXIST 
FR_INVALID_OBJECT 
FR_WRITE_PROTECTED 
FR_INVALID_DRIVE 
FR_NOT_ENABLED 
FR_NO_FILESYSTEM 
FR_MKFS_ABORTED 
FR_TIMEOUT 
FR_LOCKED 
FR_NOT_ENOUGH_CORE 
FR_TOO_MANY_OPEN_FILES 

Function Documentation

FRESULT f_chmod ( const TCHAR ,
BYTE  ,
BYTE   
)
FRESULT f_close ( FIL )
FRESULT f_getfree ( const TCHAR ,
DWORD ,
FATFS **   
)
FRESULT f_lseek ( FIL ,
DWORD   
)
FRESULT f_mkdir ( const TCHAR )
FRESULT f_mount ( BYTE  ,
FATFS  
)
FRESULT f_open ( FIL ,
const TCHAR ,
BYTE   
)
FRESULT f_opendir ( DIR ,
const TCHAR  
)
FRESULT f_read ( FIL ,
void *  ,
UINT  ,
UINT  
)
FRESULT f_readdir ( DIR ,
FILINFO  
)
FRESULT f_rename ( const TCHAR ,
const TCHAR  
)
FRESULT f_stat ( const TCHAR ,
FILINFO  
)
FRESULT f_sync ( FIL )
FRESULT f_truncate ( FIL )
FRESULT f_unlink ( const TCHAR )
FRESULT f_utime ( const TCHAR ,
const FILINFO  
)
FRESULT f_write ( FIL ,
const void *  ,
UINT  ,
UINT  
)
DWORD get_fattime ( void  )