这一帖,让你分清USB接口的种类
你是否想过为什么电脑上的USB口可以接键盘、鼠标等,而你的手机上的USB却不可以?是否想过电脑上的USB口可以接多少USB设备?是否想过为啥主板上面的USB口比起前面板的USB口要好用且稳定?是否想过为啥同样PCIE转USB的板卡,为啥有的很贵,有的很便宜。
如果都知道,你是否解释下一下,下面这张图是啥意思?
首先说 USB口除去物理尺寸,形状,颜色,款式的区别, 在他的内在也是有极大区别的。
一个USB口可以是以下三种规格中的一种:
1)USB主控制器又叫USB HOST。 可以有控制作用;
2)USB device(slave),就是被控制的;
3)USB OTG就是指既可以做Host口亦可以做device口。
&TImes;&TImes;&TImes;&TImes;×××××××××××××××××××××××××××××××××
USB Host是指驱动过后,板子就可以连接USB接口连接的器件,读取和装载数据了,类似PC。USB Device是指驱动过后,板子可以当做一个USB移动设备,通过USB连接到电脑上,类似U盘。
×××××××××××××××
所以说我们的手机上面的USB口属于 Device。但是我们的手机本质就是电脑,所以以后的趋势是手机的USB可以像电脑的主机的USB口那样,*外接设备。首先对 host controller 展开说明。一个电脑主机上面可以多少个 host controller ?
经过一番搜索,USB控制器有EHCI,UHCI,OHCI,XHCI 等多种,这些是常见的。UHCI,OHCI是USB 1.1的控制器,是用来支持低速设备的(鼠标,键盘);EHCI是USB2.0的控制器,支持高速设备(USB2.0 U盘,移动硬盘等);XHCI是USB3.0的控制器,支持超高速设备;于Win7原生系统没有带有XHCI驱动,因此100系列主板安装Win7系统会出现USB鼠标键盘失效的情况,而Win8和Win10原生系统由于内置了XHCI驱动。
×××××××××××××××××
正常来说一台PC只需要一个host controller就够了,但是现实中主机似乎不止一个host controller。
然后就是 Root hub。
××××××××××××××××××××××××
所有的usb设备最终都是连接到Root Hub上,或者说所有的根源都是从这里开始的。Root Hub 上可以连接别的设备,可以连接 U盘,可以连接 usb 鼠标,同样也可以连接另一个hub.所谓 hub,就是用来级连。
但是普通的 hub,它一头接上级 hub, 另一头可以有多个口,多个口就可以级连多个设备,也可以只有一个口,一个口的就像我们宿舍里常用的那种延长线。
而 Root Hub 呢?比较特殊,这当然也是一种 usb 设备,但是它属于一人之下万人之上的角色,它只属于被 Host Controller,换言之,通常做芯片的同志们会把 Host Controller和 Root Hub 集成在一起。特别是PC主机上,
通常你就只能看到接口,看不到 Root Hub,因为它在 Host Controller 的内部。下面这张图看得很清楚,其中的那个host hub其实就是 root hub.
Root HUB ,是什么??转载一篇文章 。
根据usb协议,root hub可以连接127个usb设备吧 ,直接连也是可以的,但是控制设备没那么多。每个USB Root HUB 会给每个连接到自己身上的 USB 设备分配 ID,这个ID是 8 位的二进制码。
所以每个USB Root Hub最多可以连接127可以USB外设。地址编号从0-127.据说现在USB HUB芯片最多可以连接处四个USB口,算是自己要占用一个,另外也就三个可以使用。那些10几个口HUB ,里面都是用了多个USB 芯片。再者,USB 的级联层数越多,越不稳定。所以最好减少级联的层数,增加每层的个数。
推荐阅读