pf_read

The pf_read function reads data from the file.

FRESULT pf_read (
  void* buff,  /* [OUT] Pointer to the read buffer */
  UINT btr,    /* [IN]  Number of bytes to read */
  UINT* br     /* [OUT] Number of bytes read */
);

Parameters

buff
Pointer to the buffer to store the read data. A NULL specifies the destination is an outgoing stream.
btr
Number of bytes to read.
br
Pointer to the variable to return number of bytes read.

Return Values

FR_OK (0)
The function succeeded.
FR_DISK_ERR
The function failed due to a hard error in the disk function, a wrong FAT structure or an internal error.
FR_NOT_OPENED
The file has not been opened.
FR_NOT_ENABLED
The volume has not been mounted.

Description

The file read/write pointer in the file system object advances in number of bytes read. After the function succeeded, *br should be checked to detect end of file. In case of *br < btr, it means the read pointer reached end of file during read operation.

If a NULL is given to the buff, the read bytes will be forwarded to the outgoing stream instead of the memory. The streaming function will be typically built-in the disk_readp() function.

QuickInfo

Available when _USE_READ == 1.

References

pf_open, pf_write, FATFS

Return