毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

USB通信程序开发+程序实现与调试 第6页

更新时间:2012-2-26:  来源:毕业论文
USB(Host)唯一通过描述符了解设备的有关信息,根据这些信息建立起通信,在这些描述符中,规定了设备所使用的协议、端点情况等。因此,正确地提供描述符,是USB设备正常工作的先决条件。USB海量存储设备(USB Mass Storage Class)包括General Mass Storage Subclass、CD-ROM、Tape、Solid State。Mass Storage Class只需要支持一个接口,即数据(Data)接口,选择缺省配置时此接口即被激活。数据接口允许与设备之间进行数据传输,它提供三个端点:Bulk Input 端点、Bulk Output 端点和中断端点。通用海量存储设备(General Mass Storage Device)是随机存取、基于块/扇区存储的设备。它只能存储和取回来自CPU 的数据。这种设备的接口遵循SCSI-2标准的直接存取存储设备(Direct Access Storage Device)协议。USB设置上的介质使用与SCSI-2设备相同的逻辑块(logical blocks)方式寻址。下面介绍基于Bulk Only(批量传输)模式的Mass Storage 设备的描述符:每个USB设备都必须有一个设备描述符。
 
图3.2 设备(Device)描述符
Mass Stroage设备的设备类型和子类代码均在接口描述符中设置,这里置0。其中iSerialNumber可为零,即不指定Serial Number。
配置描述符如下图:
 
图3.3 配置(Configuration)描述符
这里配置所支持的接口数应为1。即设置至少支持一个接口,这里为Bulk-Only Data接口,此接口使用三个端点:控制端点(默认)、Bulk-In和Bulk-Out。其中bInterfaceSubClass指定所使用的工业标准命令块,bInterfaceProtocol为所使用的传输协议。
 图3.4 bInterfaceSubClass 处的工业标准命令块代码
图3.5 Mass Storage 传输协议接口描述符如下图:
 图3.6 接口(Interface)描述符
由于控制端点为每个设备都使用的缺省端点,因此不需要定义,只需定义Bulk-In和Bulk-Out两个端点,其端点描述符如下:本文来自辣.文~论^文·网原文请找腾讯324-9114
 图3.7 Bulk-In端点描述符
图3.8 Bulk-Out端点描述符
3.2 Bulk-Only传输协议
设备插入到USB后,USB即对设备进行搜索,并要求设备提供相应的描述符。在USB Host 得到上述描述符后,即完成了设备的配置,识别出为Bulk-Only的Mass Storage设备,然后即进入Bulk-Only传输方式。在此方式下,USB与设备间的所有数据均通过Bulk-In和Bulk-Out来进行传输,不再通过控制端点传输任何数据。在这种传输方式下,有三种类型的数据在USB和设备之间传送,CBW、CSW 和普通数据。CBW(Command Block Wrapper,即命令块包)是从USB Host发送到设备的命令,命令格式遵从接口中的bInterfaceSubClass 所指定的命令块,这里为SCSI传输命令集。USB设备需要将SCSI命令从CBW中提取出来,执行相应的命令。完成以后,向Host发出反映当前命令执行状态的CSW(Command Status Wrapper,即命令状态包),Host根据CSW来决定是否继续发送下一个CBW或是数据。Host要求USB设备执行的命令可能为发送数据,则此时需要将特定数据传送出去,完毕后发出CSW,以使Host进行下一步的操作。USB设备所执行的操作可用下图描述:

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页

USB通信程序开发+程序实现与调试 第6页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。