User manual
mikroC PRO for dsPIC
MikroElektronika
319
Cf_Fat_Get_File_Size
Prototype
unsigned long Cf_Fat_Get_File_Size();
Description This function reads size of currently assigned le in bytes.
Parameters None.
Returns Size of the currently assigned le in bytes.
Requires CF card and CF library must be initialized for le operations. See Cf_Fat_Init.
File must be previously assigned. See Cf_Fat_Assign.
Example
unsigned long my_le_size;
...
my_le_size = Cf_Fat_Get_File_Size();
Notes None.
Cf_Fat_Get_Swap_File
Prototype
unsigned long Cf_Fat_Get_Swap_File(unsigned long sectors_cnt, char *lename,
char le_attr);
Description This function is used to create a swap le of predened name and size on the CF media. If a le
with specied name already exists on the media, search for consecutive sectors will ignore sectors
occupied by this le. Therefore, it is recommended to erase such le if it exists before calling this
function. If it is not erased and there is still enough space for a new swap le, this function will delete
it after allocating new memory space for a new swap le.
The purpose of the swap le is to make reading and writing to CF media as fast as possible, by using
the Cf_Read_Sector() and Cf_Write_Sector() functions directly, without potentially damaging
the FAT system. Swap le can be considered as a “window” on the media where the user can freely
write/read data. It’s main purpose in the this library is to be used for fast data acquisition; when the
time-critical acquisition has nished, the data can be re-written into a “normal” le, and formatted in
the most suitable way.
Parameters - sectors_cnt: number of consecutive sectors that user wants the swap le to have.
- lename: name of the le that should be assigned for le operations. The le name should be in
DOS 8.3 (le_name.extension) format. The le name and extension will be automatically padded with
spaces by the library if they have less than length required (i.e. “mikro.tx” -> “mikro .tx “), so the user
does not have to take care of that. The le name and extension are case insensitive. The library will
convert them to proper case automatically, so the user does not have to take care of that.
Also, in order to keep backward compatibility with the rst version of this library, le names can be
entered as UPPERCASE string of 11 bytes in length with no dot character between the le name and
extension (i.e. “MIKROELETXT” -> MIKROELE.TXT). In this case the last 3 characters of the string
are considered to be le extension.
- le_attr: le creation and attributes ags. Each bit corresponds to the appropriate le attribute: