Sd card

Dependents:   final_proj1 RoboPanorama Andar_Linha_Reta_Robo_Claw_v1

Fork of FatFileSystem by mbed unsupported

Committer:
carlos_nascimento08
Date:
Sun Sep 16 15:00:15 2012 +0000
Revision:
4:6ce49c16703c
Parent:
0:97df4125f18d
Test with board RoboClaw 15A

Who changed what in which revision?

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