The following defines must be included in a
conf_explorer.h header file :
#define LIB_MEM <string.h>
#define LIB_CTRLACCESS "ctrl_access.h"
#define FS_FAT_12 ENABLED
#define FS_FAT_16 ENABLED
#define FS_FAT_32 ENABLED
#define FS_ASCII DISABLED
#define FS_UNICODE ENABLED
#define FS_MULTI_PARTITION DISABLED
#define FS_LEVEL_FEATURES (FSFEATURE_READ | FSFEATURE_WRITE_COMPLET)
#define FS_NB_CACHE_CLUSLIST 3
#define FS_NB_NAVIGATOR 3
#define FS_NAV_ID_COPYFILE 2 // Must be different of current ID used when the paste routine is called.
- FAT System
- It is the module low level, this one decodes the FAT structure.
All routines of the module are private and can't be called by a user. See fat.c,fat_unusual.c
- Navigation
- This module provides the routines :
- to select an ID navigator
- to move in directory tree
- to modify directory tree
- to get information about disk/dir/file
The complete user interface is the public routine provided in the navigation.c C files.
- File
- This module provides the file I/O control.
The routines file_getc() and file_putc() are too slow to transfer many data.
The file_read_buf() and file_write_buf() are developed to transfer many data between the RAM and a file on a memory.
- Note:
- These routines optimize the transfer and if a DMA exists between RAM and memory then it is used.
The
file_read() and
file_write() are developed to transfer many data between a file and another memory or a specific interface.
- Note:
- These routines don't transfer data, but provide an information on the disk segment corresponding to the file.
Overside, it is not necessary to transfer data in the RAM and the chip can use a DMA between two disks to save time.
The complete user interface is the public routine provided in the file.c C files.
- Memory interface
- The interfaces with the memory are :