USB2.0学习笔记连载(二):USB基础知识简介
USB接口分为USB A型、USB B型、USBmini型、USBmicro型、USB3.0其中每种都有相应的插座和插头。

图1

图2
上图是USBA型接口,图1为插座,图2为插头。插座指向下行方向,插头指向上行方向。
USB中一般常用有4根线,两边两根线一般为VBUS(5V的接入或接出线,对应上图中的1引脚)和GND(对应上图中的4引脚)。中间两根为D+(对应上图中的3引脚),D-(对应上图中的2引脚),还有外加一个屏蔽层。

图3

图4
USB B型所对应的各信号和USB A型一致。在各种开发板上比较喜欢用USB B型接口,占PCB面积较小。

图5

图6
图5是插座,图6是插头。和USB A和USB B不同的是,USB mini型接口多了一个引脚,那么这个引脚对应图中的4,此引脚作为ID,只有在OTG情况下才有用。关于OTG笔者搜索了一下资料,现整理如下:
USB OTG是USB On-The-Go的缩写,是近年发展起来的技术,2001年12月18日由USB Implementers Forum公布,主要应用于各种不同的设备或移动设备间的联接,进行数据交换。特别是PAD、移动电话、消费类设备。
由上面的介绍可以得到一个结论,此技术就是实现不同设备之间的连接,并进行数据交换,由于USB设备分为主(Host)和从(Slave),只有当一个主设备和从设备连接时才能实现数据传输。而OTG技术也是遵从主从关系,只不过主可能不是PC机,可以是任意其他的设备,然后对于ID引脚,作为主设备,可以将其接地,作为从设备一端的4引脚悬空,这样就可以区分开谁是主和从的关系。

图7

图8
上图是USB micro的插座和插头,最常见的例子就是我们的手机数据线,插入手机一端就是USB micro接口。上图中micro-AB是可以插入USB micro A型插头或USB micro B型插头。

图9

图10
USB3.0 A型接口。 上图是USB3.0的靓照,感觉看一个数据线是不是USB3.0的接口,估计最明显的标注就是在插头上会有SS标志。USB2.0最大速度也就是高速情况下可以达到480Mbps(60MB/s)半双工,而USB3.0高速情况下可以达到5.0Gbps(500MB/s)全双工,注意这里不是5Gb/s除以8得到的640MB/s,而是除以10bit,采用与SATA相同的10bit传输模式,编码规则采用8/10的方法,存在2bit的控制信号,所以USB3.0的理论数据传输速率是5Gbps/10bitt=500MB/s。

图11
USB3.0接口和USB2.0接口有很大的不同。USB3.0接口有9根线,前4根线和普通的USB线一样,后5根线是为超高速做准备。其中超高速输入引脚5脚为SSRX-,6脚SSRX+,超高速输出引脚8脚SSTX-,9脚SSTX+,7脚为GND引脚,还包括屏蔽层。
USB3.0在高速情况下之所以比USB2.0快,是因为额外增加两对传输线,如图11所示。
USB3.0能够实现较好的电源管理,USB3.0接口供电能力为1A,USB2.0为0.5A。实现USB充电电池,LED照明和mini风扇提供更多的功率。这意味着通过USB3.0来充电可以更快完成充电。能够使主机更快地识别器件,处理数据效率更高。
转换到USB 3.0,功耗也是要考虑的很重要的一个问题,因此有效的电源管理就很必要,可以保证设备的空闲的时候减少电力消耗。
大量的数据流传输需要更快的性能支持,同时传输的时候,空闲时设备可以转入到低功耗状态。甚至可以空下来去接收其他的指令,完成其他动作。其实,在USB 3.0中也并不是所有的东西都更新换代了,比如线缆的长度。当在某些应用中需要尽可能高的吞吐量的时候,往往线缆依旧会成为瓶颈。虽然在USB 3.0规范中,没有明确指定USB线缆有多长,但是电缆材质和信号质量还是影响了传输的效果。因此在传输数百兆大数据流的时候,线缆长度最好不要超过3米。
虽然USB 2.0 Hi-Speed的数据传输速率是480Mpbs,也就是理想状况下应该为60MB/s,但是在Windows based操作系统下,由于default driver的限制,实际的效能大约为30MB/s~35MB/s,与60MB/s有一大段距离。


图12
图12是USB2.0和USB3.0的主要区别。



图13
上图是USB3.0 B型接口,可以兼容USB2.0和USB3.0接口,买过移动硬盘的朋友应该见过这种接口。
USB2.0学习笔记连载(二):USB基础知识简介的更多相关文章
- USB2.0学习笔记连载(三):通用USB驱动程序解析
对于USB驱动的开发,读者可以使用Windows DDK.DriverStudio等多种开发工具来实现USB的驱动,但是驱动程序的开发过程都比较复杂,而且很容易致使USB主机内存泄露而死机.那么对于笔 ...
- USB2.0学习笔记连载(十四):USB驱动安装及固件程序的编写
在之前的博客中已经讲过,驱动程序最核心的两个文件,一个是xxx.sys文件,一个是xxx.inf文件,主机是寻找xxx.inf文件. 在下面的文件中有相关关于USB驱动的说明.对于用户来说,xxx.s ...
- USB2.0学习笔记连载(一):CY7C68013特性简介
上一篇博客已经给出了整个视频板卡架构,那么对于USB接口部分需要着重理解和学习. 对于目前来说,若是利用FPGA去模拟USB2.0内核,难度还是挺大的,整个状态的收发都不好控制.现在目前都在使用桥接芯 ...
- USB2.0学习笔记连载(十九):EZ-USB TRM手册重要部分介绍
TRM手册中给出了所有的寄存器配置,在 slave fifo模式或者 GPIF模式等,所以对于用到的各种寄存器配置需要查看此手册,当然还可以配合着应用手册<AN61345>. ...
- USB2.0学习笔记连载(十七):keil实现寄存器的配置及相关函数讲解(一)
首先要实现对寄存器的配置,可以参考手册<Development kit User Guide>,如下图所示: 此文件包含在 文件中.上述的应用文档详细介绍了如何利用KEIL实现对固件程序 ...
- USB2.0学习笔记连载(六):USB2.0硬件设计需要注意事项
笔者在设计USB2.0时找到了一个官方给的硬件设计正确设计指南,其中有些内容还挺nice的.不单单只是USB的设计,其中有些思想可以应用到其他的场合中. 对于USB2.0而言,全速状态下可以达到480 ...
- USB2.0学习笔记连载(十八):keil实现寄存器的配置及相关函数讲解(二)
其实之前也有提及过,Cypress公司提供的官方文件和应用手册真的可以解决很多问题.做的也很人性化,操作也及其简单,几乎只要在 TD_int()里面配置一些常用的参数即可,其他都可以不用操作. 作为一 ...
- USB2.0学习笔记连载(九):USB设备驱动的安装
在第一次插入USB设备时(笔者用的是自己做的USB最小系统来测试),插入电脑后,在设备管理器中会显示 未知设备,如下图所示: 点击右键,选择属性,在详细信息中可以看到硬件ID以及PID等,如下图所示. ...
- USB2.0学习笔记连载(五):EZ-USB重要寄存器的配置
本篇博客主要讲解EZ-USB一些重要寄存器的配置,首先对于本篇博客所讲的内容,读者应该到官网上去下载相关的手册,其中包括<EZ-USB Technical Reference Manual> ...
随机推荐
- 什么是FSK制式?什么是DTMF制式?
目前国内来电显示制式有FSK.DTMF(双音频)两种,普通推广的是FSK."来电显示"又称"主叫号码显示"(Calling Identity Delivery) ...
- PLSQL_统计信息系列10_统计信息过旧导致程序出现性能问题
2014-11-15 Created By BaoXinjian
- [Android&Java]浅谈设计模式-代码篇:观察者模式Observer
观察者,就如同一个人,对非常多东西都感兴趣,就好像音乐.电子产品.Game.股票等,这些东西的变化都能引起爱好者们的注意并时刻关注他们.在代码中.我们也有这种一种方式来设计一些好玩的思想来.今天就写个 ...
- SIPp常用脚本之二:UAS
看名字就能猜出来,这是作为SIP消息服务端的存在,启动uas,等着接受SIP消息并且给出响应. 一.uas.xml <?xml version="2.0" encoding= ...
- Oracle 11gR2数据库使用
1很奇怪,不太懂原理 一.Oracle 12c创建用户是出现“ORA-65096: invalid common user or role name”的错误 - CalvinR http://www. ...
- 机器学习(3):支持向量机(SVM)
1. 背景: 1.1 最早是由 Vladimir N. Vapnik 和 Alexey Ya. Chervonenkis 在1963年提出 1.2 目前的版本(soft margi ...
- [hihoCoder] #1089 : 最短路径·二:Floyd算法
时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 万圣节的中午,小Hi和小Ho在吃过中饭之后,来到了一个新的鬼屋! 鬼屋中一共有N个地点,分别编号为1..N,这N个地点之间 ...
- SyntaxError: missing ] after element list 火狐问题
关于火狐运行var obj = eval('(' + data + ')');时 报SyntaxError: missing ] after element list错误,Chrome和IE正常 情形 ...
- JavaScript Array 对象方法
data.sort(function(a,b){return a.time>b.time?1:-1}); http://www.w3school.com.cn/jsref/jsref_obj_a ...
- GPIO实验(二)
=============第三个实验============用c语言轮流点亮3个LED=================== 1.crt0.S.text.global _start_start: ...