基于OHCI的USB主机 —— UFI数据结构2
UFI命令块
/**
* UFI命令块
*/
typedef union _CDB_RBC
{
READ_10 ufiRead10; //!< 读命令
WRITE_10 ufiWrite10; //!< 写命令
INQUIRY_SPC ufiInquiry; //!< 查询命令
READ_CAPACITY ufiReadCapacity; //!< 读容量命令
} CDB_RBC, *PCDB_RBC;
|
命令块数据包(CBW)
/**
* CBW命令块
*/
typedef struct _COMMAND_BLOCK_WRAPPER{
UINT32 dCBW_Signature; //!< CBW信号标记
UINT32 dCBW_Tag; //!< CBW命令标签
UINT32 dCBW_DataXferLen; //!< 数据包传输长度
UINT8 bCBW_Flag; //!< 传输方向,0 - 主机到设备,0x80 - 设备到主机
UINT8 bCBW_LUN; //!< 逻辑单元号,应为0
UINT8 bCBW_CDBLen; //!< CDB_RBC的长度
CDB_RBC cdbRBC; //!< UFI命令块
} CBW, *PCBW;
|
命令状态包(CSW)
/**
* CSW状态包
*/
typedef struct _COMMAND_STATUS_WRAPPER{
UINT32 dCSW_Signature; //!< CSW信号标记
UINT32 dCSW_Tag; //!< CSW命令标签
UINT32 dCSW_DataResidue; //!< 实际处理数据量与CBW规定的数据量之差
UINT8 bCSW_Status; //!< CBW命令执行结果
UINT8 rsvd[51]; //!< 保留
} CSW, *PCSW;
|
基于OHCI的USB主机 —— UFI数据结构2相关推荐
- 基于OHCI的USB主机 —— UFI数据结构1
根据上面的介绍,定义相应命令的数据结构如下: 查询(Inquiry) /** * Inquiry命令数据结构 */ typedefstruct _INQUIRY_SPC { UINT8Operatio ...
- 基于OHCI的USB主机 —— UFI数据结构3
UFI命令运行状态结构,用于判断UFI命令是否执行完毕. typedef struct _UFI_CMD_RUNNING{ unsigned char state; //!< ...
- 基于OHCI的USB主机 —— UFI命令 USB Mass Storage Class Bulk-Only Transport协议介绍
USB Mass Storage Class Bulk-Only Transport Microsoft公司至Windows98后,USB主机 都支持Bulk-Only标准,所以现在的大容量存储类设备 ...
- 基于OHCI的USB主机 —— UFI命令监视代码
在调用完上面的UFI命令后,ufiCmdRunning.state就被设置为UFI_STATE_BEGIN态,在主循环中调用本函数,用来判断UFI命令是否执行完毕,以及是否执行成功. /** * U ...
- 基于OHCI的USB主机——UFI查询命令(Inquiry)
查询命令(INQUIRY)请求获取UFI设备参数的信息.他被用作主机上的驱动器访问FUI设备的配置,特别是在接通电源和硬件复位之后使用.命令内容如下表: 位 字节 7 6 5 4 3 2 1 0 0 ...
- 基于OHCI的USB主机——UFI读扇区命令(Read10)
读命令要求UFI设备传输数据到主机,记录在逻辑块地址的最新数据值将被返回,命令格式如下表: 位 字节 7 6 5 4 3 2 1 0 0 操作代码(0x28) 1 逻辑单元号(LUN) DPO FU ...
- 基于OHCI的USB主机 —— UFI查询代码
/** * 磁盘查询命令 * @param *buf 数据缓冲区指针 * @return 0 - 成功 */ short ufiInquiry(BYTE *buf) { INQUIRY ...
- 基于OHCI的USB主机 —— UFI读容量代码
/** * 读磁盘容量命令 * @param *buf 数据缓冲区指针 * @return 0 - 成功 */ short ufiReadCapacity(BYTE *buf) { R ...
- 基于OHCI的USB主机 —— UFI写扇区代码
/** * 写磁盘扇区命令 * @param sect 物理扇区号 * @param *buf 数据缓冲区指针 * @return 0 - 成功 */ short ufiWriteSect( ...
最新文章
- IDEA 2017 安装后 关联SVN
- FPGA之道(65)代码中的约束信息(二)乘法器的相关约束
- mac下使用n管理node版本
- 想学C语言?这些你一定要知道
- 你有过什么令你难忘的约会经历?
- NB-IoT 连接数过亿,开发者如何抓住新机遇?
- websphere一直安装部署_构建独立部署系统,从部署规范开始
- TCP 协议(包含三次握手,四次挥手)
- linux arm 携程,如何安装ARM toolchain
- 程序员自编 “购房宝典” 火爆 GitHub !
- 微信小程序 web-view 无法外链 和 不支持打开非业务域名
- 一款开源好用的车辆管理系统源码,基于SSH框架和SaaS模式
- 阿里巴巴国际站九月大促直播准备工作及流程
- 【深度学习】第二章:全连接神经网络
- 三元一次方程组例题_三元一次方程组典型例题讲解.doc
- MLCC陶瓷电容详解
- 回忆当年高考的一道数学证明题
- 团队成员分工及绩效评估
- CTFHub----RCE
- 记一次 vivo x21 Android 8.1.1 调试Apk填坑
热门文章
- 2016百度之星 - 测试赛 1002 列变位法解密 (模拟)
- 周易六十四卦——地天泰卦
- 基于Qt、opencv的规则工件尺寸识别
- mysql中用于实现事务提交的语句是什么,实现事务提交的语句是什么
- Python爬虫——aiohttp异步协程爬取同程旅行酒店评论
- 为什么科学家如此担心人工智能?
- 202009-4 星际旅行【CCF-CSP认证真题】
- 在微型计算机中 多媒体信息包括,公务员考试常识题:1、具有多媒体功能的微型计算机系统中,常用的CD-ROM是...
- 计算机组成原理 - 计算机的硬件组成 (存储器 + CPU +I/O设备)
- ORACLE集群管理-核心资源分析-MDNS