天天看點

基于OHCI的USB主機 —— UFI資料結構1

根據上面的介紹,定義相應指令的資料結構如下:

/**

 * Inquiry指令資料結構

 */

<b>typedef</b><b>struct</b> _INQUIRY_SPC

{

    UINT8OperationCode; //!&lt; 操作碼,應為0x12

    UINT8Lun;           //!&lt; 邏輯單元号,應為0

    UINT8PageCode;      //!&lt; 頁代碼,應為0

    UINT8Reserved1;     //!&lt; 保留,應為0

    UINT8AllocationLen; //!&lt; 存儲空間長度,常為0x24

    UINT8Reserved[7];       //!&lt; 保留,應為0

} INQUIRY_SPC, *PINQUIRY_SPC;

 * 讀容量指令

<b>typedef</b><b>struct</b> _READ_CAPACITY

    UINT8OperationCode; //!&lt; 操作碼,應為0x25

    UINT8Reserved[15];   //!&lt; 保留,應為0

}READ_CAPACITY;

 * 讀指令

<b>typedef</b><b>struct</b> _READ_10

    UINT8OperationCode; //!&lt; 操作碼,應為0x28

    UINT8LBA_3;         //!&lt; 邏輯塊位址3

    UINT8LBA_2;         //!&lt; 邏輯塊位址2

    UINT8LBA_1;          //!&lt; 邏輯塊位址1

    UINT8LBA_0;         //!&lt; 邏輯塊位址0

    UINT8Reserved2;     //!&lt; 保留,應為0

    UINT8XferLen_1;     //!&lt; 傳輸扇區數,高位元組

    UINT8XferLen_0;     //!&lt; 傳輸扇區數,低位元組

    UINT8Reserved3[4]; //!&lt; 保留,應為0

}READ_10;

 * 寫指令

<b>typedef</b><b>struct</b> _WRITE_10

    UINT8OperationCode; //!&lt; 操作碼,應為0x2A

}WRITE_10;

本文轉自 tywali 51CTO部落格,原文連結:http://blog.51cto.com/lancelot/310335,如需轉載請自行聯系原作者