- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
USB接口協议
USB接口协议简介1.USB以及协议简介USB(Universal Serial Bus)是近年来应用在PC领域的新型接口技术,它是由一些PC大厂商如Microsoft、Intel等为了解决日益增加的PC外设与有限的主板插槽和端口之间的矛盾而制定的一种通用串行接口。数据通信协议部分是USB的核心内容。主要包括:以差模串行信号为载体传送二进制代码来传输信号;数据包作为最基本的完整信息单元,包含一系列数据信息。 数据包可以分解为更小的单元—域;以包为基础,构成USB的三种事务。进而,组合不同的传输类型,传输各种类型的数据,实现USB的各种功能。2.USB通信机制为了细化USB的通信机制,USB协议的开发者采用了分层的概念,每一层传输的数据结构对其他逻辑层是透明的,USB设备和USB主机通信的逻辑结构和每 层的逻辑通道。在HSOT 端,应用软件(Client SW)不能直接访问USB 总线,而必须通过USB系统软件和USB主机控制器来访问USB 总线,在USB总线上和USB 设备进行通讯。从逻辑上可以分为功能层、设备层和总线接口层三个层次。其中功能层完成功能级的描述、定义和行为;设备级则完成从功能级到传输级的转换,把一次功能级的行为转换为一次一次的基本传输;USB 总线接口层则处理总线上的Bit 流,完成数据传输的物理层实现和总线管理。途中黑色箭头代表真实的数据流,灰色箭头代表逻辑上的通讯。如图所示:主机 物理设备 功能层 设备层 总线接口层 逻辑上的数据流 实际数据流以USB摄像头设备为例,视频播放软件想通过USB总线得到USB摄像头捕捉的视频数据,这就相当于在功能层上。应用软件是视频播放软件,功能硬件是USB摄像头。而这些数据的读取需要USB设备层提供的服务,在这一层上,主要是USB设备的驱动调度主机控制器控制器向USB摄像头发出读请求。每个USB设备会有多个管道,使用哪个管道,传输的大小都需要指定。这个层次的USB 系统软件就是USB摄像头的驱动程序。而在USB设备一端一般会有小单片机或者处理芯片负责响应这种读请求,而这一层的传输又依赖于USB总线接口层的服务。 在这一层,完全是USB的物理协议,包括如何分成更小的包(packages)传输,如何保证每次包传输不丢失数据等。3.USB传输的数据格式其他传输协议一样,在物理层,USB当然也是通过二进制数据进行传输的,首先二进制数据构成域(有七种),域再构成包,包再构成事务(IN、OUT、SETUP),事务最后构成传输。3.1域:是USB数据最小的单位,由若干位组成(至于是多少位由具体的域决定),域可分为七个类型:3.1.1同步域(SYNC)八位,值固定为0000 0001,用于本地时钟和输入同步。3.1.2标识域(PID)由四位标识符+四位标识符反码构成,表明包的类型和格式,这是个很重要的部分,这里能够计算出,USB的标识码有16种。3.1.3地址域(ADDR)七位地址,代表了设备在主机上的地址,地址000 0000被命名为零地址,是任何一个设备第一次连接到主机时,在被主机配置、枚举前的默认地址,由此能够知道为什么一个USB主机只能接127个设备的原因。3.1.4端点域(ENDP)四位,由此可知一个USB设备有的端点数量最大为16个。3.1.5帧号域(FRAM)11位,每一个帧都有一个特定的帧号,帧号域最大容量0x800,对于同步传输有重要意义。3.1.6数据域(DATA)长度为0~1023字节,在不同的传输类型中,数据域的长度各不相同,但必须为整数个字节的长度。3.1.7校验域(CRC)对令牌包和数据包(对于包的分类请看下面)中非PID域进行校验的一种方法,CRC校验在通讯中应用很泛,是一种很好的校验方法。3.2 包 由域构成的包有四种类型,分别是令牌包、数据包、握手包和特别包。3.2.1 令牌包可分为输入包、输出包、配置包和帧起始包(注意这里的输入包是用于配置输入命令的,输出包是用来配置输出命令的,而不是放据数的)。其中输入包、输出包和配置包的格式都是相同的:SYNC+PID+ADDR+ENDP+CRC5(五位的校验码)(上面的缩写解释请看上面域的介绍,PID码即产品识别码)。帧起始包的格式:SYNC+PID+11位FRAM+CRC5(五位的校验码)3.2.2 数据包分为DATA0包和DATA1包,当USB发送数据的时候,当一次发送的数据长度大于相应端点的容量时,就需要把数据包分为好几个包,分批发 送,DATA0包和DATA1包交替发送,即假如第一个数据包是DATA0,那第二个数据包就是DATA1。但也有例外情况,在同步传输中(四类传输类型 中之一),任何的数据包都是为DATA0,格式如下:SYNC+PID+0~1023字节+CRC16(16位的校验码)3.2.3 握手包
您可能关注的文档
- UL與ETL认证产品设计和生产的相关要求指.doc
- UML在ERP銷售系统中的应用分析与设计.doc
- UML對基于BS模式的图书管理系统的模块分析与设计.doc
- UML課程设计-学籍管理系统.doc
- UNICA-webexperience-whitepaper_C思維领导力白皮书.doc
- UML課程设计-网络教学系统.doc
- Unit12Don’teatinclass教學设计方案.doc
- Unit12Youresupposedtoshakehands全單元5课时教案.doc
- Unit1Howoftendoyouexercise第一課时教学设计.doc
- Unit1MySchool教案必威体育精装版2014版PEP四年級英语下册.doc
文档评论(0)