56 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*-----------------------------------------------------------------------
 | |
| /  Low level disk interface module include file
 | |
| /-----------------------------------------------------------------------*/
 | |
| 
 | |
| #ifndef _DISKIO_DEFINED
 | |
| #define _DISKIO_DEFINED
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
| #include "integer.h"
 | |
| 
 | |
| #include "../DataflashManager.h"
 | |
| 
 | |
| 
 | |
| /* Status of Disk Functions */
 | |
| typedef BYTE	DSTATUS;
 | |
| 
 | |
| /* Results of Disk Functions */
 | |
| typedef enum {
 | |
| 	RES_OK = 0,		/* 0: Successful */
 | |
| 	RES_ERROR,		/* 1: R/W Error */
 | |
| 	RES_WRPRT,		/* 2: Write Protected */
 | |
| 	RES_NOTRDY,		/* 3: Not Ready */
 | |
| 	RES_PARERR		/* 4: Invalid Parameter */
 | |
| } DRESULT;
 | |
| 
 | |
| 
 | |
| /*---------------------------------------*/
 | |
| /* Prototypes for disk control functions */
 | |
| 
 | |
| DSTATUS disk_initialize (BYTE);
 | |
| DSTATUS disk_status (BYTE);
 | |
| DRESULT disk_read (BYTE, BYTE*, DWORD, BYTE);
 | |
| #if	_READONLY == 0
 | |
| DRESULT disk_write (BYTE, const BYTE*, DWORD, BYTE);
 | |
| #endif
 | |
| DRESULT disk_ioctl (BYTE, BYTE, void*);
 | |
| 
 | |
| 
 | |
| /* Disk Status Bits (DSTATUS) */
 | |
| 
 | |
| #define STA_NOINIT		0x01	/* Drive not initialized */
 | |
| #define STA_NODISK		0x02	/* No medium in the drive */
 | |
| #define STA_PROTECT		0x04	/* Write protected */
 | |
| 
 | |
| /* Generic command */
 | |
| #define CTRL_SYNC			0	/* Mandatory for write functions */
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 | |
| 
 | |
| #endif
 |