EU1KY AA
diskio.h File Reference
#include "integer.h"

Go to the source code of this file.

Macros

#define _USE_WRITE   1 /* 1: Enable disk_write function */
 
#define _USE_IOCTL   1 /* 1: Enable disk_ioctl fucntion */
 
#define STA_NOINIT   0x01 /* Drive not initialized */
 
#define STA_NODISK   0x02 /* No medium in the drive */
 
#define STA_PROTECT   0x04 /* Write protected */
 
#define CTRL_SYNC   0 /* Complete pending write process (needed at _FS_READONLY == 0) */
 
#define GET_SECTOR_COUNT   1 /* Get media size (needed at _USE_MKFS == 1) */
 
#define GET_SECTOR_SIZE   2 /* Get sector size (needed at _MAX_SS != _MIN_SS) */
 
#define GET_BLOCK_SIZE   3 /* Get erase block size (needed at _USE_MKFS == 1) */
 
#define CTRL_TRIM   4 /* Inform device that the data on the block of sectors is no longer used (needed at _USE_TRIM == 1) */
 
#define CTRL_POWER   5 /* Get/Set power status */
 
#define CTRL_LOCK   6 /* Lock/Unlock media removal */
 
#define CTRL_EJECT   7 /* Eject media */
 
#define CTRL_FORMAT   8 /* Create physical format on the media */
 
#define MMC_GET_TYPE   10 /* Get card type */
 
#define MMC_GET_CSD   11 /* Get CSD */
 
#define MMC_GET_CID   12 /* Get CID */
 
#define MMC_GET_OCR   13 /* Get OCR */
 
#define MMC_GET_SDSTAT   14 /* Get SD status */
 
#define ATA_GET_REV   20 /* Get F/W revision */
 
#define ATA_GET_MODEL   21 /* Get model name */
 
#define ATA_GET_SN   22 /* Get serial number */
 

Typedefs

typedef BYTE DSTATUS
 

Enumerations

enum  DRESULT {
  RES_OK = 0, RES_ERROR, RES_WRPRT, RES_NOTRDY,
  RES_PARERR
}
 

Functions

DSTATUS disk_initialize (BYTE pdrv)
 Initializes a Drive. More...
 
DSTATUS disk_status (BYTE pdrv)
 Gets Disk Status. More...
 
DRESULT disk_read (BYTE pdrv, BYTE *buff, DWORD sector, UINT count)
 Reads Sector(s) More...
 
DRESULT disk_write (BYTE pdrv, const BYTE *buff, DWORD sector, UINT count)
 Writes Sector(s) More...
 
DRESULT disk_ioctl (BYTE pdrv, BYTE cmd, void *buff)
 I/O control operation. More...
 
DWORD get_fattime (void)
 Gets Time from RTC. More...
 

Macro Definition Documentation

#define _USE_IOCTL   1 /* 1: Enable disk_ioctl fucntion */
#define _USE_WRITE   1 /* 1: Enable disk_write function */
#define ATA_GET_MODEL   21 /* Get model name */
#define ATA_GET_REV   20 /* Get F/W revision */
#define ATA_GET_SN   22 /* Get serial number */
#define CTRL_EJECT   7 /* Eject media */
#define CTRL_FORMAT   8 /* Create physical format on the media */
#define CTRL_LOCK   6 /* Lock/Unlock media removal */
#define CTRL_POWER   5 /* Get/Set power status */
#define CTRL_SYNC   0 /* Complete pending write process (needed at _FS_READONLY == 0) */
#define CTRL_TRIM   4 /* Inform device that the data on the block of sectors is no longer used (needed at _USE_TRIM == 1) */
#define GET_BLOCK_SIZE   3 /* Get erase block size (needed at _USE_MKFS == 1) */
#define GET_SECTOR_COUNT   1 /* Get media size (needed at _USE_MKFS == 1) */
#define GET_SECTOR_SIZE   2 /* Get sector size (needed at _MAX_SS != _MIN_SS) */
#define MMC_GET_CID   12 /* Get CID */
#define MMC_GET_CSD   11 /* Get CSD */
#define MMC_GET_OCR   13 /* Get OCR */
#define MMC_GET_SDSTAT   14 /* Get SD status */
#define MMC_GET_TYPE   10 /* Get card type */
#define STA_NODISK   0x02 /* No medium in the drive */
#define STA_NOINIT   0x01 /* Drive not initialized */
#define STA_PROTECT   0x04 /* Write protected */

Typedef Documentation

typedef BYTE DSTATUS

Enumeration Type Documentation

enum DRESULT
Enumerator
RES_OK 
RES_ERROR 
RES_WRPRT 
RES_NOTRDY 
RES_PARERR 

Function Documentation

DSTATUS disk_initialize ( BYTE  pdrv)

Initializes a Drive.

Parameters
pdrvPhysical drive number (0..)
Return values
DSTATUSOperation status
DRESULT disk_ioctl ( BYTE  pdrv,
BYTE  cmd,
void buff 
)

I/O control operation.

Parameters
pdrvPhysical drive number (0..)
cmdControl code
*buffBuffer to send/receive control data
Return values
DRESULTOperation result
DRESULT disk_read ( BYTE  pdrv,
BYTE buff,
DWORD  sector,
UINT  count 
)

Reads Sector(s)

Parameters
pdrvPhysical drive number (0..)
*buffData buffer to store read data
sectorSector address (LBA)
countNumber of sectors to read (1..128)
Return values
DRESULTOperation result
DSTATUS disk_status ( BYTE  pdrv)

Gets Disk Status.

Parameters
pdrvPhysical drive number (0..)
Return values
DSTATUSOperation status
DRESULT disk_write ( BYTE  pdrv,
const BYTE buff,
DWORD  sector,
UINT  count 
)

Writes Sector(s)

Parameters
pdrvPhysical drive number (0..)
*buffData to be written
sectorSector address (LBA)
countNumber of sectors to write (1..128)
Return values
DRESULTOperation result
DWORD get_fattime ( void  )

Gets Time from RTC.

Parameters
None
Return values
Timein DWORD