ffconf.h

00001 /*---------------------------------------------------------------------------/
00002 /  FatFs - FAT file system module configuration file  R0.07e  (C)ChaN, 2009
00003 /----------------------------------------------------------------------------/
00004 /
00005 / CAUTION! Do not forget to make clean the project after any changes to
00006 / the configuration options.
00007 /
00008 /----------------------------------------------------------------------------*/
00009 #ifndef _FFCONFIG
00010 #define _FFCONFIG 0x007E
00011 
00012 /*---------------------------------------------------------------------------/
00013 / Function and Buffer Configurations
00014 /----------------------------------------------------------------------------*/
00015 
00016 #define _FS_TINY        0               /* 0 or 1 */
00017 /* When _FS_TINY is set to 1, FatFs uses the sector buffer in the file system
00018 /  object instead of the sector buffer in the individual file object for file
00019 /  data transfer. This reduces memory consumption 512 bytes each file object. */
00020 
00021 
00022 #define _FS_READONLY    0       /* 0 or 1 */
00023 /* Setting _FS_READONLY to 1 defines read only configuration. This removes
00024 /  writing functions, f_write, f_sync, f_unlink, f_mkdir, f_chmod, f_rename,
00025 /  f_truncate and useless f_getfree. */
00026 
00027 
00028 #define _FS_MINIMIZE    0       /* 0, 1, 2 or 3 */
00029 /* The _FS_MINIMIZE option defines minimization level to remove some functions.
00030 /
00031 /   0: Full function.
00032 /   1: f_stat, f_getfree, f_unlink, f_mkdir, f_chmod, f_truncate and f_rename
00033 /      are removed.
00034 /   2: f_opendir and f_readdir are removed in addition to level 1.
00035 /   3: f_lseek is removed in addition to level 2. */
00036 
00037 
00038 #define _USE_STRFUNC    0       /* 0, 1 or 2 */
00039 /* To enable string functions, set _USE_STRFUNC to 1 or 2. */
00040 
00041 
00042 #define _USE_MKFS       1               /* 0 or 1 */
00043 /* To enable f_mkfs function, set _USE_MKFS to 1 and set _FS_READONLY to 0 */
00044 
00045 
00046 #define _USE_FORWARD    0       /* 0 or 1 */
00047 /* To enable f_forward function, set _USE_FORWARD to 1 and set _FS_TINY to 1. */
00048 
00049 
00050 
00051 /*---------------------------------------------------------------------------/
00052 / Locale and Namespace Configurations
00053 /----------------------------------------------------------------------------*/
00054 
00055 #define _CODE_PAGE      437
00056 /* The _CODE_PAGE specifies the OEM code page to be used on the target system.
00057 /  Incorrect setting of the code page can cause a file open failure.
00058 /
00059 /   932  - Japanese Shift-JIS (DBCS, OEM, Windows)
00060 /   936  - Simplified Chinese GBK (DBCS, OEM, Windows)
00061 /   949  - Korean (DBCS, OEM, Windows)
00062 /   950  - Traditional Chinese Big5 (DBCS, OEM, Windows)
00063 /   1250 - Central Europe (Windows)
00064 /   1251 - Cyrillic (Windows)
00065 /   1252 - Latin 1 (Windows)
00066 /   1253 - Greek (Windows)
00067 /   1254 - Turkish (Windows)
00068 /   1255 - Hebrew (Windows)
00069 /   1256 - Arabic (Windows)
00070 /   1257 - Baltic (Windows)
00071 /   1258 - Vietnam (OEM, Windows)
00072 /   437  - U.S. (OEM)
00073 /   720  - Arabic (OEM)
00074 /   737  - Greek (OEM)
00075 /   775  - Baltic (OEM)
00076 /   850  - Multilingual Latin 1 (OEM)
00077 /   858  - Multilingual Latin 1 + Euro (OEM)
00078 /   852  - Latin 2 (OEM)
00079 /   855  - Cyrillic (OEM)
00080 /   866  - Russian (OEM)
00081 /   857  - Turkish (OEM)
00082 /   862  - Hebrew (OEM)
00083 /   874  - Thai (OEM, Windows)
00084 /       1    - ASCII only (Valid for non LFN cfg.)
00085 */
00086 
00087 
00088 #define _USE_LFN        2               /* 0, 1 or 2 */
00089 #define _MAX_LFN        255             /* Maximum LFN length to handle (12 to 255) */
00090 /* The _USE_LFN option switches the LFN support.
00091 /
00092 /   0: Disable LFN. _MAX_LFN and _LFN_UNICODE have no effect.
00093 /   1: Enable LFN with static working buffer on the bss. NOT REENTRANT.
00094 /   2: Enable LFN with dynamic working buffer on the STACK.
00095 /
00096 /  The LFN working buffer occupies (_MAX_LFN + 1) * 2 bytes. When enable LFN,
00097 /  two Unicode handling functions ff_convert() and ff_wtoupper() must be added
00098 /  to the project. */
00099 
00100 
00101 #define _LFN_UNICODE    0       /* 0 or 1 */
00102 /* To switch the character code set on FatFs API to Unicode,
00103 /  enable LFN feature and set _LFN_UNICODE to 1.
00104 */
00105 
00106 
00107 #define _FS_RPATH       1               /* 0 or 1 */
00108 /* When _FS_RPATH is set to 1, relative path feature is enabled and f_chdir,
00109 /  f_chdrive function are available.
00110 /  Note that output of the f_readdir fnction is affected by this option. */
00111 
00112 
00113 
00114 /*---------------------------------------------------------------------------/
00115 / Physical Drive Configurations
00116 /----------------------------------------------------------------------------*/
00117 
00118 #define _DRIVES         1
00119 /* Number of volumes (logical drives) to be used. */
00120 
00121 
00122 #define _MAX_SS         512             /* 512, 1024, 2048 or 4096 */
00123 /* Maximum sector size to be handled.
00124 /  Always set 512 for memory card and hard disk but a larger value may be
00125 /  required for floppy disk (512/1024) and optical disk (512/2048).
00126 /  When _MAX_SS is larger than 512, GET_SECTOR_SIZE command must be implememted
00127 /  to the disk_ioctl function. */
00128 
00129 
00130 #define _MULTI_PARTITION        0       /* 0 or 1 */
00131 /* When _MULTI_PARTITION is set to 0, each volume is bound to the same physical
00132 / drive number and can mount only first primaly partition. When it is set to 1,
00133 / each volume is tied to the partitions listed in Drives[]. */
00134 
00135 
00136 
00137 /*---------------------------------------------------------------------------/
00138 / System Configurations
00139 /----------------------------------------------------------------------------*/
00140 
00141 #define _WORD_ACCESS    0       /* 0 or 1 */
00142 /* The _WORD_ACCESS option defines which access method is used to the word
00143 /  data on the FAT volume.
00144 /
00145 /   0: Byte-by-byte access. Always compatible with all platforms.
00146 /   1: Word access. Do not choose this unless following condition is met.
00147 /
00148 /  When the byte order on the memory is big-endian or address miss-aligned
00149 /  word access results incorrect behavior, the _WORD_ACCESS must be set to 0.
00150 /  If it is not the case, the value can also be set to 1 to improve the
00151 /  performance and code size. */
00152 
00153 
00154 #define _FS_REENTRANT   0
00155 #define _FS_TIMEOUT     1000            /* Timeout period in unit of time ticks of the OS */
00156 #define _SYNC_t         uSyncObject*    /* Type of sync object used on the OS. e.g. HANDLE, OS_EVENT*, ID and etc.. */
00157 /* The _FS_REENTRANT option switches the reentrancy of the FatFs module.
00158 /
00159 /   0: Disable reentrancy. _SYNC_t and _FS_TIMEOUT have no effect.
00160 /   1: Enable reentrancy. Also user provided synchronization handlers,
00161 /      ff_req_grant, ff_rel_grant, ff_del_syncobj and ff_cre_syncobj
00162 /      function must be added to the project. */
00163 
00164 
00165 #endif /* _FFCONFIG */
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines
Generated by  doxygen 1.6.3