Teste

Dependents:   BlueUSB-new

Committer:
carlos_nascimento08
Date:
Sun Jul 22 20:25:28 2012 +0000
Revision:
0:621dafe47f1a
FatFileSystem
;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
carlos_nascimento08 0:621dafe47f1a 1 /*-----------------------------------------------------------------------
carlos_nascimento08 0:621dafe47f1a 2 / Low level disk interface modlue include file R0.06 (C)ChaN, 2007
carlos_nascimento08 0:621dafe47f1a 3 /-----------------------------------------------------------------------*/
carlos_nascimento08 0:621dafe47f1a 4
carlos_nascimento08 0:621dafe47f1a 5 #ifndef _DISKIO
carlos_nascimento08 0:621dafe47f1a 6
carlos_nascimento08 0:621dafe47f1a 7 #define _READONLY 0 /* 1: Read-only mode */
carlos_nascimento08 0:621dafe47f1a 8 #define _USE_IOCTL 1
carlos_nascimento08 0:621dafe47f1a 9
carlos_nascimento08 0:621dafe47f1a 10 #include "integer.h"
carlos_nascimento08 0:621dafe47f1a 11
carlos_nascimento08 0:621dafe47f1a 12 #ifdef __cplusplus
carlos_nascimento08 0:621dafe47f1a 13 extern "C" {
carlos_nascimento08 0:621dafe47f1a 14 #endif
carlos_nascimento08 0:621dafe47f1a 15
carlos_nascimento08 0:621dafe47f1a 16 /* Status of Disk Functions */
carlos_nascimento08 0:621dafe47f1a 17 typedef BYTE DSTATUS;
carlos_nascimento08 0:621dafe47f1a 18
carlos_nascimento08 0:621dafe47f1a 19 /* Results of Disk Functions */
carlos_nascimento08 0:621dafe47f1a 20 typedef enum {
carlos_nascimento08 0:621dafe47f1a 21 RES_OK = 0, /* 0: Successful */
carlos_nascimento08 0:621dafe47f1a 22 RES_ERROR, /* 1: R/W Error */
carlos_nascimento08 0:621dafe47f1a 23 RES_WRPRT, /* 2: Write Protected */
carlos_nascimento08 0:621dafe47f1a 24 RES_NOTRDY, /* 3: Not Ready */
carlos_nascimento08 0:621dafe47f1a 25 RES_PARERR /* 4: Invalid Parameter */
carlos_nascimento08 0:621dafe47f1a 26 } DRESULT;
carlos_nascimento08 0:621dafe47f1a 27
carlos_nascimento08 0:621dafe47f1a 28
carlos_nascimento08 0:621dafe47f1a 29 /*---------------------------------------*/
carlos_nascimento08 0:621dafe47f1a 30 /* Prototypes for disk control functions */
carlos_nascimento08 0:621dafe47f1a 31
carlos_nascimento08 0:621dafe47f1a 32 DSTATUS disk_initialize (BYTE);
carlos_nascimento08 0:621dafe47f1a 33 DSTATUS disk_status (BYTE);
carlos_nascimento08 0:621dafe47f1a 34 DRESULT disk_read (BYTE, BYTE*, DWORD, BYTE);
carlos_nascimento08 0:621dafe47f1a 35 #if _READONLY == 0
carlos_nascimento08 0:621dafe47f1a 36 DRESULT disk_write (BYTE, const BYTE*, DWORD, BYTE);
carlos_nascimento08 0:621dafe47f1a 37 #endif
carlos_nascimento08 0:621dafe47f1a 38 DRESULT disk_ioctl (BYTE, BYTE, void*);
carlos_nascimento08 0:621dafe47f1a 39 void disk_timerproc (void);
carlos_nascimento08 0:621dafe47f1a 40
carlos_nascimento08 0:621dafe47f1a 41 #ifdef __cplusplus
carlos_nascimento08 0:621dafe47f1a 42 };
carlos_nascimento08 0:621dafe47f1a 43 #endif
carlos_nascimento08 0:621dafe47f1a 44
carlos_nascimento08 0:621dafe47f1a 45
carlos_nascimento08 0:621dafe47f1a 46 /* Disk Status Bits (DSTATUS) */
carlos_nascimento08 0:621dafe47f1a 47
carlos_nascimento08 0:621dafe47f1a 48 #define STA_NOINIT 0x01 /* Drive not initialized */
carlos_nascimento08 0:621dafe47f1a 49 #define STA_NODISK 0x02 /* No medium in the drive */
carlos_nascimento08 0:621dafe47f1a 50 #define STA_PROTECT 0x04 /* Write protected */
carlos_nascimento08 0:621dafe47f1a 51
carlos_nascimento08 0:621dafe47f1a 52
carlos_nascimento08 0:621dafe47f1a 53 /* Command code for disk_ioctrl() */
carlos_nascimento08 0:621dafe47f1a 54
carlos_nascimento08 0:621dafe47f1a 55 /* Generic command */
carlos_nascimento08 0:621dafe47f1a 56 #define CTRL_SYNC 0 /* Mandatory for read/write configuration */
carlos_nascimento08 0:621dafe47f1a 57 #define GET_SECTOR_COUNT 1 /* Mandatory for only f_mkfs() */
carlos_nascimento08 0:621dafe47f1a 58 #define GET_SECTOR_SIZE 2
carlos_nascimento08 0:621dafe47f1a 59 #define GET_BLOCK_SIZE 3 /* Mandatory for only f_mkfs() */
carlos_nascimento08 0:621dafe47f1a 60 #define CTRL_POWER 4
carlos_nascimento08 0:621dafe47f1a 61 #define CTRL_LOCK 5
carlos_nascimento08 0:621dafe47f1a 62 #define CTRL_EJECT 6
carlos_nascimento08 0:621dafe47f1a 63 /* MMC/SDC command */
carlos_nascimento08 0:621dafe47f1a 64 #define MMC_GET_TYPE 10
carlos_nascimento08 0:621dafe47f1a 65 #define MMC_GET_CSD 11
carlos_nascimento08 0:621dafe47f1a 66 #define MMC_GET_CID 12
carlos_nascimento08 0:621dafe47f1a 67 #define MMC_GET_OCR 13
carlos_nascimento08 0:621dafe47f1a 68 #define MMC_GET_SDSTAT 14
carlos_nascimento08 0:621dafe47f1a 69 /* ATA/CF command */
carlos_nascimento08 0:621dafe47f1a 70 #define ATA_GET_REV 20
carlos_nascimento08 0:621dafe47f1a 71 #define ATA_GET_MODEL 21
carlos_nascimento08 0:621dafe47f1a 72 #define ATA_GET_SN 22
carlos_nascimento08 0:621dafe47f1a 73
carlos_nascimento08 0:621dafe47f1a 74
carlos_nascimento08 0:621dafe47f1a 75 #define _DISKIO
carlos_nascimento08 0:621dafe47f1a 76 #endif