USB接口介绍

    USB设备系统分为两个部分,USB Host端和USB Device端,以USB接口的U盘为例子,U盘自身是一个USB Device,PC机的USB接口以及相关的控制电路为USB Host部分。

    每个部分由硬件部分和软件部分组成,硬件部分由USB主机控制器和USB接口芯片来组成,固件(软件)由两侧的驱动程序组成。

   

    为了规范不同厂商的USB设备,IEEE指定了相应的规范,只要不同端的设备都符合此规范,就能正常的通讯。

主机控制器协议

     主机控制器协议有 OHCI、EHCI、UHCI、xHCI。

     对于协议规范里面的特定功能,由硬件来实现还是由软件来实现,这取决于不同的应用场合和环境,因此,就出现了针对USB1.1协议的OHCI和UHCI主机控制器协议。

     OHCI把一些功能实现放在硬件上面,因此,软件方面就比较容易开发,常用于嵌入式系统

     UHCI则把一些功能的实现更多的放在软件上面,因此,硬件上面就可以做的较为简单,适用于大规模生产,常用于PC中

     为了解决USB1.1传输速度低下的问题,USB规范升级到USB2.0,对应的主机控制器规范升级为 EHCI。

     进一步升级USB规范到USB3.0,对于的主机控制器规范为xHCI。下图是不同USB主机控制器的区别。

 

USB硬件接口

    USB的插头和插座,根据不同使用环境,分为三种类型,Type最大,Mini适中,Micro最小。每个类型中又分为A类和B类两个规格。

    

    

USB3.0的接口,USB3.0相比于USB2.0增加了4根线,不过在设计上,保持同USB2.0的兼容。

    

下图是不同规范的协议对比:

 

编码方式

    USB中用NRZI(非归零反转码),电平翻转代表逻辑0,电平不变代表逻辑1.USB的每个数据包都以同步域开头(0000_0001),通过编码成为方波。为了防止发送同样的数据造成的传输误差,USB规定了强制插0的协议,即如果要传输的数据中有7个连续的1,发送前会在第六个1的后面强制插入一个0,强制反转发送信号,使得两侧的接受频率同步。

 

USB的分类

    USB只是一种接口形式,基于此接口,可以有多重多样的设备,为了便于统一管理,对于不同的设备,USB规范规定了不同的设备类型,详细的USB的Class分类参加此链接:

    http://www.xat.nl/en/riscos/sw/usb/class.htm

 

USB的枚举

    USB的枚举,USB Emulation,就是USB初始化的意思,简单的说,就是USB的Host和Device之间的对话。

 

USB的数据传输

    一次USB的传输,由不同事务(Transaction)组成,一个事务是由不同的包(Packet)组成,一个包是由不同的域组成。见下图:

   

    数据传输分为两类:周期性的和非周期性的。

            周期性的有中断传输和等时传输。

            非周期性的有控制传输和批量传输

  参考链接:

USB设备简述:

http://blog.csdn.net/ljzcom/article/details/8574411

USB设备驱动开发:

http://blog.csdn.net/ljzcom/article/details/8574387

usb设备的probe过程:

http://blog.csdn.net/ljzcom/article/details/7419867

USB设备驱动开发之数据结构:

http://blog.csdn.net/ljzcom/article/details/7693209

http://blog.csdn.net/ljzcom/article/details/7693212

http://blog.csdn.net/ljzcom/article/details/7693219 

Technorati 标签: USB

时间: 2024-08-02 17:29:11

USB接口介绍的相关文章

【转】实战USB接口手机充电 看3.0/2.0谁更快

原文网址:http://mb.it168.com/a2012/0816/1385/000001385641_all.shtml [IT168 应用]当下,越来越多的电脑都已普及USB 3.0接口,新买的笔记本上,新装的台式机后,你都能发现这个跟过去2.0时代不一样的蓝汪汪的USB接口.那么,同样是给手机充电,USB 3.0和传统的USB 2.0相比,以及不同主板芯片组之间.台式机与笔记本的USB之间.主板I/O面板与主板扩展USB接口,这些USB3.0与2.0接口在充电速度上都有什么不同?这就是

(九)打印机驱动设置—USB接口的设置

USB接口的打印机有两种,一种为UTP,就是直接的USB接口打印,市面上绝大部分是这一种.一种为虚拟串口.就是USB当串口使用.下面介绍这两种方式的驱动设置. 一.USB虚拟串口打印机. 以GP58N为例,这一款是虚拟串口打印机,需要安装两个驱动,一个是虚拟串口驱动,一个是打印机的驱动.这两个驱动在佳博的官网上能下载,虚拟串口驱动名为VCPDriver_V1.1_Setup.rar 和 GP58系列驱动.如图9.1.                图9.1 将两个驱动装完之后,插上打印机的接口后

cypress的EZ-USB对于USB的介绍

Host is MasterThis is a fundamental USB concept. There is exactly onemaster in a USB system: the host computer. USB devicesrespond to host requests. USB devices cannot send information among themselves, as they could if USB were apeer-to-peer topolog

电源故障导致的USB接口失效

案例: USB接口不好用,串口可以正常使用 解决办法: 更换电源故障解除

如何mac下安装virtual,并识别usb接口

为了感谢广大网友无私的奉献,并让我成功的解决了其中的问题,虽然还是花了我一下午的时间去整理,但最终还是有效果的,唯一感到不满的就是,网上答案千千万万,要找到正确的答案其实不多,大多数都是零散的,所以我决定愿意做那个幕后的搬运工,节约大家时间. 那么如何才能在mac上安装微软系统呢,并成功识别到usb接口呢,开始前你可以先准备以下几个软件. 一,在Mac上安装了virtualbox虚机,之所以选择它,是因为完全是个免费的家伙,至于比较其他虚机软件,我也没有亲自尝试,只是网上大多数都是表示支持的,尤

SPI、I2C、UART三种串行总线协议的区别和SPI接口介绍(转)

SPI.I2C.UART三种串行总线协议的区别 第一个区别当然是名字: SPI(Serial Peripheral Interface:串行外设接口); I2C(INTER IC BUS) UART(Universal Asynchronous Receiver Transmitter:通用异步收发器) 第二,区别在电气信号线上: SPI总线由三条信号线组成:串行时钟(SCLK).串行数据输出(SDO).串行数据输入(SDI).SPI总线可以实现多个SPI设备互相连接.提供SPI串行时钟的SPI

UART接口介绍

1. 简介 UART, Universal Asynchronous Receiver-Transmitter, 通用异步收发传输器 UART协议规定了通信双方所遵守的规定,属于数据链路层RS232接口标准规定了电气特性.逻辑电平和各种信号线功能,属于物理层 2. RS232 RS232接口是PC机上串行接口标配,有DB9和DB25两种,通常为DB9 其接口定义如下 RS-232将设备分为- 数据终端设备(DTE,Data Terminal Equipment, For example, PC)

[国嵌攻略][161][USB总线介绍]

USB发展史 USB(universal serial bus),通用串行总线,是一种外部总线标准.用于规范电脑与外部设备的连接和通讯.USB是在1994年底由英特尔.康柏.IBM.Microsoft等多家公司联合提出的.自1996年堆出后,已经成功替代了串口和并口.成为当今个人电脑和大量智能设备的必备接口之一. USB1.0出现在1996年,速度只有1.5Mbps.1998年升级为USB1.1,速度也提升到了12Mbps,称之为full speed. USB2.0规范是由USB1.1规范演变而

虚拟化环境USB接口解决方案

虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的.运行在一个完全隔离环境中的完整计算机系统.随着科技的发展,虚拟化技术越来越成熟稳定,虚拟计算机应用也越来越广泛.然而,由于虚拟计算机是从一个物理机上虚拟出来的,它自己并没有物理接口.当需要接入设备,如虚拟机上需要用到Ukey.加密狗等设备时,需要把物理机的接口切换给虚拟机才能使用,切换过程比较麻烦.加上 物理机的接口是有限的,虚拟机占用之后接口就更少了.如果一台物理机虚拟的多台计算机需要同时使用USB设备,那么物理机