User manual
292
mikoBasic PRO for dsPIC30/33 and PIC24
MikroElektronika
Cf_Fat_Get_File_Size
Prototype
sub function Cf_Fat_Get_File_Size() as longword
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
dim my_le_size as longword
...
my_le_size = Cf_Fat_Get_File_Size()
Notes None.
Cf_Fat_Get_Swap_File
Prototype
sub function Cf_Fat_Get_Swap_File(dim sectors_cnt as longword, dim byref
lename as string[11], dim le_attr as byte) as longword
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: