Compact Flash I/O test

Dependencies:   mbed

Committer:
emh203
Date:
Fri Dec 30 21:02:16 2011 +0000
Revision:
1:dc171f34db9b
Parent:
0:6b1e6c9e48ba

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
emh203 0:6b1e6c9e48ba 1 /*---------------------------------------------------------------------------/
emh203 0:6b1e6c9e48ba 2 / FatFs - FAT file system module configuration file R0.09 (C)ChaN, 2011
emh203 0:6b1e6c9e48ba 3 /----------------------------------------------------------------------------/
emh203 0:6b1e6c9e48ba 4 /
emh203 0:6b1e6c9e48ba 5 / CAUTION! Do not forget to make clean the project after any changes to
emh203 0:6b1e6c9e48ba 6 / the configuration options.
emh203 0:6b1e6c9e48ba 7 /
emh203 0:6b1e6c9e48ba 8 /----------------------------------------------------------------------------*/
emh203 0:6b1e6c9e48ba 9 #ifndef _FFCONF
emh203 0:6b1e6c9e48ba 10 #define _FFCONF 6502 /* Revision ID */
emh203 0:6b1e6c9e48ba 11
emh203 0:6b1e6c9e48ba 12
emh203 0:6b1e6c9e48ba 13 /*---------------------------------------------------------------------------/
emh203 0:6b1e6c9e48ba 14 / Functions and Buffer Configurations
emh203 0:6b1e6c9e48ba 15 /----------------------------------------------------------------------------*/
emh203 0:6b1e6c9e48ba 16
emh203 0:6b1e6c9e48ba 17 #define _FS_TINY 0 /* 0:Normal or 1:Tiny */
emh203 0:6b1e6c9e48ba 18 /* When _FS_TINY is set to 1, FatFs uses the sector buffer in the file system
emh203 0:6b1e6c9e48ba 19 / object instead of the sector buffer in the individual file object for file
emh203 0:6b1e6c9e48ba 20 / data transfer. This reduces memory consumption 512 bytes each file object. */
emh203 0:6b1e6c9e48ba 21
emh203 0:6b1e6c9e48ba 22
emh203 0:6b1e6c9e48ba 23 #define _FS_READONLY 0 /* 0:Read/Write or 1:Read only */
emh203 0:6b1e6c9e48ba 24 /* Setting _FS_READONLY to 1 defines read only configuration. This removes
emh203 0:6b1e6c9e48ba 25 / writing functions, f_write, f_sync, f_unlink, f_mkdir, f_chmod, f_rename,
emh203 0:6b1e6c9e48ba 26 / f_truncate and useless f_getfree. */
emh203 0:6b1e6c9e48ba 27
emh203 0:6b1e6c9e48ba 28
emh203 0:6b1e6c9e48ba 29 #define _FS_MINIMIZE 0 /* 0 to 3 */
emh203 0:6b1e6c9e48ba 30 /* The _FS_MINIMIZE option defines minimization level to remove some functions.
emh203 0:6b1e6c9e48ba 31 /
emh203 0:6b1e6c9e48ba 32 / 0: Full function.
emh203 0:6b1e6c9e48ba 33 / 1: f_stat, f_getfree, f_unlink, f_mkdir, f_chmod, f_truncate and f_rename
emh203 0:6b1e6c9e48ba 34 / are removed.
emh203 0:6b1e6c9e48ba 35 / 2: f_opendir and f_readdir are removed in addition to 1.
emh203 0:6b1e6c9e48ba 36 / 3: f_lseek is removed in addition to 2. */
emh203 0:6b1e6c9e48ba 37
emh203 0:6b1e6c9e48ba 38
emh203 0:6b1e6c9e48ba 39 #define _USE_STRFUNC 0 /* 0:Disable or 1-2:Enable */
emh203 0:6b1e6c9e48ba 40 /* To enable string functions, set _USE_STRFUNC to 1 or 2. */
emh203 0:6b1e6c9e48ba 41
emh203 0:6b1e6c9e48ba 42
emh203 0:6b1e6c9e48ba 43 #define _USE_MKFS 0 /* 0:Disable or 1:Enable */
emh203 0:6b1e6c9e48ba 44 /* To enable f_mkfs function, set _USE_MKFS to 1 and set _FS_READONLY to 0 */
emh203 0:6b1e6c9e48ba 45
emh203 0:6b1e6c9e48ba 46
emh203 0:6b1e6c9e48ba 47 #define _USE_FORWARD 0 /* 0:Disable or 1:Enable */
emh203 0:6b1e6c9e48ba 48 /* To enable f_forward function, set _USE_FORWARD to 1 and set _FS_TINY to 1. */
emh203 0:6b1e6c9e48ba 49
emh203 0:6b1e6c9e48ba 50
emh203 0:6b1e6c9e48ba 51 #define _USE_FASTSEEK 0 /* 0:Disable or 1:Enable */
emh203 0:6b1e6c9e48ba 52 /* To enable fast seek feature, set _USE_FASTSEEK to 1. */
emh203 0:6b1e6c9e48ba 53
emh203 0:6b1e6c9e48ba 54
emh203 0:6b1e6c9e48ba 55
emh203 0:6b1e6c9e48ba 56 /*---------------------------------------------------------------------------/
emh203 0:6b1e6c9e48ba 57 / Locale and Namespace Configurations
emh203 0:6b1e6c9e48ba 58 /----------------------------------------------------------------------------*/
emh203 0:6b1e6c9e48ba 59
emh203 0:6b1e6c9e48ba 60 #define _CODE_PAGE 437
emh203 0:6b1e6c9e48ba 61 /* The _CODE_PAGE specifies the OEM code page to be used on the target system.
emh203 0:6b1e6c9e48ba 62 / Incorrect setting of the code page can cause a file open failure.
emh203 0:6b1e6c9e48ba 63 /
emh203 0:6b1e6c9e48ba 64 / 932 - Japanese Shift-JIS (DBCS, OEM, Windows)
emh203 0:6b1e6c9e48ba 65 / 936 - Simplified Chinese GBK (DBCS, OEM, Windows)
emh203 0:6b1e6c9e48ba 66 / 949 - Korean (DBCS, OEM, Windows)
emh203 0:6b1e6c9e48ba 67 / 950 - Traditional Chinese Big5 (DBCS, OEM, Windows)
emh203 0:6b1e6c9e48ba 68 / 1250 - Central Europe (Windows)
emh203 0:6b1e6c9e48ba 69 / 1251 - Cyrillic (Windows)
emh203 0:6b1e6c9e48ba 70 / 1252 - Latin 1 (Windows)
emh203 0:6b1e6c9e48ba 71 / 1253 - Greek (Windows)
emh203 0:6b1e6c9e48ba 72 / 1254 - Turkish (Windows)
emh203 0:6b1e6c9e48ba 73 / 1255 - Hebrew (Windows)
emh203 0:6b1e6c9e48ba 74 / 1256 - Arabic (Windows)
emh203 0:6b1e6c9e48ba 75 / 1257 - Baltic (Windows)
emh203 0:6b1e6c9e48ba 76 / 1258 - Vietnam (OEM, Windows)
emh203 0:6b1e6c9e48ba 77 / 437 - U.S. (OEM)
emh203 0:6b1e6c9e48ba 78 / 720 - Arabic (OEM)
emh203 0:6b1e6c9e48ba 79 / 737 - Greek (OEM)
emh203 0:6b1e6c9e48ba 80 / 775 - Baltic (OEM)
emh203 0:6b1e6c9e48ba 81 / 850 - Multilingual Latin 1 (OEM)
emh203 0:6b1e6c9e48ba 82 / 858 - Multilingual Latin 1 + Euro (OEM)
emh203 0:6b1e6c9e48ba 83 / 852 - Latin 2 (OEM)
emh203 0:6b1e6c9e48ba 84 / 855 - Cyrillic (OEM)
emh203 0:6b1e6c9e48ba 85 / 866 - Russian (OEM)
emh203 0:6b1e6c9e48ba 86 / 857 - Turkish (OEM)
emh203 0:6b1e6c9e48ba 87 / 862 - Hebrew (OEM)
emh203 0:6b1e6c9e48ba 88 / 874 - Thai (OEM, Windows)
emh203 0:6b1e6c9e48ba 89 / 1 - ASCII only (Valid for non LFN cfg.)
emh203 0:6b1e6c9e48ba 90 */
emh203 0:6b1e6c9e48ba 91
emh203 0:6b1e6c9e48ba 92
emh203 0:6b1e6c9e48ba 93 #define _USE_LFN 0 /* 0 to 3 */
emh203 0:6b1e6c9e48ba 94 #define _MAX_LFN 255 /* Maximum LFN length to handle (12 to 255) */
emh203 0:6b1e6c9e48ba 95 /* The _USE_LFN option switches the LFN support.
emh203 0:6b1e6c9e48ba 96 /
emh203 0:6b1e6c9e48ba 97 / 0: Disable LFN feature. _MAX_LFN and _LFN_UNICODE have no effect.
emh203 0:6b1e6c9e48ba 98 / 1: Enable LFN with static working buffer on the BSS. Always NOT reentrant.
emh203 0:6b1e6c9e48ba 99 / 2: Enable LFN with dynamic working buffer on the STACK.
emh203 0:6b1e6c9e48ba 100 / 3: Enable LFN with dynamic working buffer on the HEAP.
emh203 0:6b1e6c9e48ba 101 /
emh203 0:6b1e6c9e48ba 102 / The LFN working buffer occupies (_MAX_LFN + 1) * 2 bytes. To enable LFN,
emh203 0:6b1e6c9e48ba 103 / Unicode handling functions ff_convert() and ff_wtoupper() must be added
emh203 0:6b1e6c9e48ba 104 / to the project. When enable to use heap, memory control functions
emh203 0:6b1e6c9e48ba 105 / ff_memalloc() and ff_memfree() must be added to the project. */
emh203 0:6b1e6c9e48ba 106
emh203 0:6b1e6c9e48ba 107
emh203 0:6b1e6c9e48ba 108 #define _LFN_UNICODE 0 /* 0:ANSI/OEM or 1:Unicode */
emh203 0:6b1e6c9e48ba 109 /* To switch the character code set on FatFs API to Unicode,
emh203 0:6b1e6c9e48ba 110 / enable LFN feature and set _LFN_UNICODE to 1. */
emh203 0:6b1e6c9e48ba 111
emh203 0:6b1e6c9e48ba 112
emh203 0:6b1e6c9e48ba 113 #define _FS_RPATH 0 /* 0 to 2 */
emh203 0:6b1e6c9e48ba 114 /* The _FS_RPATH option configures relative path feature.
emh203 0:6b1e6c9e48ba 115 /
emh203 0:6b1e6c9e48ba 116 / 0: Disable relative path feature and remove related functions.
emh203 0:6b1e6c9e48ba 117 / 1: Enable relative path. f_chdrive() and f_chdir() are available.
emh203 0:6b1e6c9e48ba 118 / 2: f_getcwd() is available in addition to 1.
emh203 0:6b1e6c9e48ba 119 /
emh203 0:6b1e6c9e48ba 120 / Note that output of the f_readdir fnction is affected by this option. */
emh203 0:6b1e6c9e48ba 121
emh203 0:6b1e6c9e48ba 122
emh203 0:6b1e6c9e48ba 123
emh203 0:6b1e6c9e48ba 124 /*---------------------------------------------------------------------------/
emh203 0:6b1e6c9e48ba 125 / Physical Drive Configurations
emh203 0:6b1e6c9e48ba 126 /----------------------------------------------------------------------------*/
emh203 0:6b1e6c9e48ba 127
emh203 0:6b1e6c9e48ba 128 #define _VOLUMES 1
emh203 0:6b1e6c9e48ba 129 /* Number of volumes (logical drives) to be used. */
emh203 0:6b1e6c9e48ba 130
emh203 0:6b1e6c9e48ba 131
emh203 0:6b1e6c9e48ba 132 #define _MAX_SS 512 /* 512, 1024, 2048 or 4096 */
emh203 0:6b1e6c9e48ba 133 /* Maximum sector size to be handled.
emh203 0:6b1e6c9e48ba 134 / Always set 512 for memory card and hard disk but a larger value may be
emh203 0:6b1e6c9e48ba 135 / required for on-board flash memory, floppy disk and optical disk.
emh203 0:6b1e6c9e48ba 136 / When _MAX_SS is larger than 512, it configures FatFs to variable sector size
emh203 0:6b1e6c9e48ba 137 / and GET_SECTOR_SIZE command must be implememted to the disk_ioctl function. */
emh203 0:6b1e6c9e48ba 138
emh203 0:6b1e6c9e48ba 139
emh203 0:6b1e6c9e48ba 140 #define _MULTI_PARTITION 0 /* 0:Single partition, 1/2:Enable multiple partition */
emh203 0:6b1e6c9e48ba 141 /* When set to 0, each volume is bound to the same physical drive number and
emh203 0:6b1e6c9e48ba 142 / it can mount only first primaly partition. When it is set to 1, each volume
emh203 0:6b1e6c9e48ba 143 / is tied to the partitions listed in VolToPart[]. */
emh203 0:6b1e6c9e48ba 144
emh203 0:6b1e6c9e48ba 145
emh203 0:6b1e6c9e48ba 146 #define _USE_ERASE 0 /* 0:Disable or 1:Enable */
emh203 0:6b1e6c9e48ba 147 /* To enable sector erase feature, set _USE_ERASE to 1. CTRL_ERASE_SECTOR command
emh203 0:6b1e6c9e48ba 148 / should be added to the disk_ioctl functio. */
emh203 0:6b1e6c9e48ba 149
emh203 0:6b1e6c9e48ba 150
emh203 0:6b1e6c9e48ba 151
emh203 0:6b1e6c9e48ba 152 /*---------------------------------------------------------------------------/
emh203 0:6b1e6c9e48ba 153 / System Configurations
emh203 0:6b1e6c9e48ba 154 /----------------------------------------------------------------------------*/
emh203 0:6b1e6c9e48ba 155
emh203 0:6b1e6c9e48ba 156 #define _WORD_ACCESS 0 /* 0 or 1 */
emh203 0:6b1e6c9e48ba 157 /* Set 0 first and it is always compatible with all platforms. The _WORD_ACCESS
emh203 0:6b1e6c9e48ba 158 / option defines which access method is used to the word data on the FAT volume.
emh203 0:6b1e6c9e48ba 159 /
emh203 0:6b1e6c9e48ba 160 / 0: Byte-by-byte access.
emh203 0:6b1e6c9e48ba 161 / 1: Word access. Do not choose this unless following condition is met.
emh203 0:6b1e6c9e48ba 162 /
emh203 0:6b1e6c9e48ba 163 / When the byte order on the memory is big-endian or address miss-aligned word
emh203 0:6b1e6c9e48ba 164 / access results incorrect behavior, the _WORD_ACCESS must be set to 0.
emh203 0:6b1e6c9e48ba 165 / If it is not the case, the value can also be set to 1 to improve the
emh203 0:6b1e6c9e48ba 166 / performance and code size.
emh203 0:6b1e6c9e48ba 167 */
emh203 0:6b1e6c9e48ba 168
emh203 0:6b1e6c9e48ba 169
emh203 0:6b1e6c9e48ba 170 /* A header file that defines sync object types on the O/S, such as
emh203 0:6b1e6c9e48ba 171 / windows.h, ucos_ii.h and semphr.h, must be included prior to ff.h. */
emh203 0:6b1e6c9e48ba 172
emh203 0:6b1e6c9e48ba 173 #define _FS_REENTRANT 0 /* 0:Disable or 1:Enable */
emh203 0:6b1e6c9e48ba 174 #define _FS_TIMEOUT 1000 /* Timeout period in unit of time ticks */
emh203 0:6b1e6c9e48ba 175 #define _SYNC_t HANDLE /* O/S dependent type of sync object. e.g. HANDLE, OS_EVENT*, ID and etc.. */
emh203 0:6b1e6c9e48ba 176
emh203 0:6b1e6c9e48ba 177 /* The _FS_REENTRANT option switches the reentrancy (thread safe) of the FatFs module.
emh203 0:6b1e6c9e48ba 178 /
emh203 0:6b1e6c9e48ba 179 / 0: Disable reentrancy. _SYNC_t and _FS_TIMEOUT have no effect.
emh203 0:6b1e6c9e48ba 180 / 1: Enable reentrancy. Also user provided synchronization handlers,
emh203 0:6b1e6c9e48ba 181 / ff_req_grant, ff_rel_grant, ff_del_syncobj and ff_cre_syncobj
emh203 0:6b1e6c9e48ba 182 / function must be added to the project. */
emh203 0:6b1e6c9e48ba 183
emh203 0:6b1e6c9e48ba 184
emh203 0:6b1e6c9e48ba 185 #define _FS_SHARE 0 /* 0:Disable or >=1:Enable */
emh203 0:6b1e6c9e48ba 186 /* To enable file shareing feature, set _FS_SHARE to 1 or greater. The value
emh203 0:6b1e6c9e48ba 187 defines how many files can be opened simultaneously. */
emh203 0:6b1e6c9e48ba 188
emh203 0:6b1e6c9e48ba 189
emh203 0:6b1e6c9e48ba 190 #endif /* _FFCONFIG */