www.pudn.com > usbcode.rar > Scsi.h


/*++ 
 
Module Name: 
 
	  Scsi.h 
 
Abstract: 
 
         Header file related to D12 module 
 
Environment: 
 
        ICCAVR 6.29 
 
Revision History: 
 
        04/23/2004      chenchi   created 
 
--*/ 
/******************************************************************/ 
extern void Bulk_Out_Packet(unsigned char); 
extern void Bulk_In_Packet(void); 
extern void Usb_BoCommand(void); 
extern void Usb_BoBulkInData(void); 
extern void SCSICMD_TestUnitReady(void); 
extern void SCSICMD_Inquiry(void); 
extern void Usb_Set_Csw(void); 
extern void Bulk_submit(void); 
extern void SCSICMD_ReadFormatCapacities(void); 
extern void SCSICMD_ReadCapacity(void); 
extern void SCSICMD_Read10(void); 
extern void SCSICMD_RequestSense(void); 
extern void SCSICMD_ModeSense06(void); 
extern void SCSICMD_PreventAllowMediumRemoval(void); 
extern void SCSICMD_Write10(void); 
extern void SCSICMD_Verify10(void); 
extern void SCSICMD_ModeSense10(void); 
 
#define CommandPhase 	0x00 
#define OutDataPhase   	0x01 
#define InCSWPhase 	0x08 
 
/********CBW结构体*************/ 
typedef struct  
{ 
        unsigned char   dCBWSignature[4]; 
        unsigned char   dCBWTag[4]; 
        unsigned char   dCBWDataTransferLength[4]; 
        unsigned char   bmCBWFlags; 
        unsigned char   bCBWLUN; 
        unsigned char   bCBWCBLength; 
        unsigned char   CBWCB[16]; 
} CBW_STRUCT; 
 
/********CSW结构体*************/ 
typedef struct  
{ 
        unsigned char   dCSWSignature[4]; 
        unsigned char   dCSWTag[4]; 
        unsigned char   dCSWDataResidue[4]; 
        unsigned char   bCSWStatus; 
} CSW_STRUCT;