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 pointer specifies the streaming read mode.
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 is less than btr, it means the read pointer has reached end of the file during read operation.

If a null pointer is given to the buff, the read data bytes are forwarded to the outgoing stream instead of the memory. The streaming function depends on each project will be typically built-in the disk_readp() function.

QuickInfo

Available when PF_USE_READ == 1.

References

pf_open, pf_write, FATFS

Return