USB硬件设计.ppt

上传人:创****公 文档编号:1868776 上传时间:2019-10-29 格式:PPT 页数:28 大小:634KB
返回 下载 相关 举报
USB硬件设计.ppt_第1页
第1页 / 共28页
USB硬件设计.ppt_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《USB硬件设计.ppt》由会员分享,可在线阅读,更多相关《USB硬件设计.ppt(28页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、USB规范讲解及简单设计实例,要进行USB的硬件软件设计就先要了解USB规范,今天简要介绍以下内容 1.usb规范的版本发展 2.使用USB设备的优缺点 3.USB设计所要使用的软硬件资源和具体流程, 4.usb规范内容 5.最后通过一个简单实例介绍一下usb设备设计的概况,1.Usb规范版本,Usb规范的前身是access.bus规范,access.bus规范是由philips和数字设备公司所制定而公开的标准,Access.bus是由I2C synchronics serial bus发展来的 USB规范版本 发表日期 1.0 1996.1.15 1.1 1998.9.23 2.0 2000

2、.4.27,2.1USB的优点,容易使用:系统自动检测,不需重开机,容易连接,不需外加电源传输速度快:usb支持三种信道速度:低速 1.5Mb/s(鼠标,键盘,游戏机),全速 12Mb/s(电话,音频,麦克风),高速 480Mb/s(影像,储存设备) 价位低低能耗稳定性操作系统支持外围设备支持有弹性 usb实施者论坛支持 usb implementers forum,inc.,USB-IF www.usb.org,2.2USB的缺点,缺乏对旧硬件的支持点对点的通信速度的限制 usb高速模式480Mb/s可与ieee-1394 400Mb/s匹敌.但ieee-1394b速度达到3.2Gb/s距离

3、的限制 电缆长度最长5M远 如果要延伸必须通过集线器 最长可以达到30M 需要6条5M长电缆 需要5个集线器硬件的错误和故障 协议的复杂性版权费,3.USB开发准备,所需组件 支持usb的主机 主机上的设备驱动程序 设备上的软硬件 主机应用程序软件开发工具 一个汇编或C语言编译器(keil c51) 一个监视程序,协议分析器 帮助开发固件 一个烧录设备和烧录程序(top851) 一个主机上的程序语言和开发环境,来编写调试主机软件(VC+),4.Usb协议概述,4.1一些概念包标识符PID:USB包的同步字段后都紧跟着包标识符(PID)。如图8-1所示,包标识符由4位的包类型字段和其后的4位的校

4、验字段构成。包标识符指出了包的类型,并由此隐含地指出了包的格式和包上所用错误检测的类型。,标记包:图8-5显示了标记包的字段格式。标记由PID,ADDR和ENDP构成,其中PID指定了包是输入,输出还是建立类型。对于输出和建立事务,地址和端口字段唯一地确定了接下来将收到数据包的端口。对于输入事务的,这些字段唯一地确定了哪个端口应该传送数据包。只有主机能发出标记包。输入PID定义了从功能部件到主机的数据事务。输出和建立PID定义了从主机到功能部件的数据事务。 标记包包括了覆盖地址和端口字段的5位CRC。CRC并不覆盖PID,因为它有自己的校验字段。,传输:制造与携带一个通信要求的过程 每一个传输

5、包含一笔或多笔事物,而每一笔事物包含一个,两个或是三个信息包,每个信息包包含一个信息包标识符,CRC校验位,以及额外的信息.每一笔事物包含一个令牌信息包,并且可能包含一个数据信息包或联络信息包.,帧开始(SOF,Start-of-Frame)包主机以每1.00 ms 0.0005 ms一次的额定速率发出帧开始(SOF)包。如图8-6中所示,SOF包是由指示包类型的PID和其后的11位的帧号字段构成。 SOF标记组成了仅有标记的(token-only)事务,它以相对于每帧的开始精确计算的时间间隔发送SOF记号(Marker)和伴随的帧数。包括集线器的所有全速功能部件都可收到SOF包。SOF标记不

6、会使得接收功能部件产生返回包;因此,不能保证向任何给定的功能部件发送的SOF都能被收到。,数据包:数据包由PID,包括至少0个字节数据的数据区和CRC构成。有2种类型的数据包,根据不同的PID:DATA0和DATA1来识别。2种数据包PID是为了支持数据切换同步(Data Toggle Synchronization)而定义的。数据必须以整数的字节数发出。数据CRC仅通过对包中的数据字段计算而得到,而不包括PID,它有自己的校验字段。,4.2 控制传输: Usb包括四种传输类型:控制传输,中断传输,批量传输,实时传输,主机使用控制传输与设备交换配置的设置信息,同时设备也使用控制传输来传输任何类

7、型的信息.每一个控制传输都有一定的格式包括一个设置阶段,一个数据阶段,一个状态阶段4.2.1设置阶段: 令牌信息包 PID:setup 数据信息包 PID:data0 联络信息包 PID:ack,4.2.2. 数据阶段: 令牌信息包 PID:out in 数据信息包 PID:data1/data0 联络信息包 ACK,NAK,STALL 4.2.3. 状态阶段:,4.3描述符:4.3.1设备描述符号,4.3.2.配置描述符,4.3.3.接口描述符bNUMEndpoints除端点零外支持的端点数目bInterfaceclass 与bdeviceclass类似4.3.4.端点描述符 bendpoi

8、ntaddress 1byte端点数目与方向Bmattributes 1byte支持的传输类型 控制 实时 批量 中断Wmaxpacketsize 2byte 端点能够传输的最大信息包大小Binterval 1byte 轮询中断端点的最大延迟或是轮询实时端点的时距或是高速批量输出或控制端点的最大NAK速率.4.3.5.字符串描述符 Wlangid或bstring 1byte 语言ID或产品名,5.控制传输实例:功能:主机要求返回一个指定的描述符数据来源:设备wValue:高字节是描述符类型,低字节是描述符数值wIndex:如果是字符串描述符表示语言的ID,其他描述符为0.数据阶段的数据信息:要

9、求的描述符.,5.USB硬件软件设计实例,本实例通过使用philips公司的usb1.1 controller pdiusbd12,下位机mcu使用89C738,驱动程序系统支持,上位机使用VC+编程.5.1usb开发需要知识和工具5.1.1具体开发需要准备的工具和掌握的知识1.下位机程序设计C512.VC+程序设计3.驱动程序一般了解4.收集资料的能力5.选择控制芯片的能力,5.1.2.必备资源1.首先要搜集软件工具,上位机 下位机编译器2.编程器3.能够买到要使用的芯片4.协议分析软件或硬件工具5.示例代码5.2.PDIUSBD12芯片引脚图5.3.usb定义的类别码 bdevicecla

10、ss binterfaceclass例如 HID 0x00 0x03 HUB 0x09 0x09 Mass storage 0x00 0x085.4.下位机电路图5.5.下位机程序function block diagram,以下是PDIUSBD12发送数据或命令的子程序Void outportb(unsigned int Addr,unsigned char Data)*(unsigned char xdata*)Addr)=Data;Addr是PDIUSBD12的地址,Data是输出的数据或和命令.当Addr为奇数时表示输出的是命令,Addr为偶数时表示输出的是数据下面的程序为从PDIUS

11、BD12器件读取数据,addr为偶数Unsigned char inportb (unsigned int Addr)return *(unsigned char xdata*)addr);#define D12_DATA 0xff02 /定义数据地址(偶数地址)#define D12_COMMAND 0xff03 /定义数据地址(偶数地址),5.6.上位机程序设计:,应用程序要和某个设备通信前要获得这个设备的独特识别码GUID(128bit)码,通过API函数调用获得接口信息,获取设备路径名然后就是打开这个设备,获取设备句柄打开设备获取句柄通过API函数CreateFile实现读写设备由ReadFile WriteFile函数完成关闭设备CloseHandle函数完成 THE END,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > pptx模板 > 工作办公

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com