USB有三类接口A类接口                     -----------最常见的扁平接口,四芯  VCC   GND   D+   D-

B类接口                                                   -----------方形的梯形接口         相同是四芯

MINI AB类接口                                       -----------介绍例如以下。

USB设备分两类                                    A类设备 (默认是主设备)

                                                                   B类设备 (默认是从设备)

USB OTG是USB2.0版本号的补充。并非独立的标准,它保留了USB2.0的全部特点。

OTG使2个USB外设在脱离PC的情况下能够直接通信。为了实现这样的功能。在OTG中有一个新的概念——双功能设备(DRD:Dual-Role Device)。1个DRD能满足下列特征:
具有一定的USB主机能力和提供1个外设列表; 
作为外设时能够实现全速操作(或快速操作); 
作为主控机时能支持全速操作(低速或快速) 
支持主机协商协议(HNP)和会话请求协议(SRP); 
仅有1个微型AB连接port。 
能够向电源总线提供不小于8mA的电流。
要实现主机功能。主机必须存储大量的设备驱动程序。而且向电源总线提供一定的电流。对于嵌入式USB主机来说,提供大量的设备驱动程序是不现实的也没有必要,1个嵌入式USB主机仅仅需支持部分特定设备,这些设备就是它的外设列表。
主机协商协议(HNP)
在USB标准中,主机採用A型接口,称为A类设备(A-Device);外设採用B型接口,称为B类设备(B-Device)。1个DRD既能够作为主机,也能够作为外设。那么。当2个DRD互连时,哪个设备作为主机,为什么要作为主机?

为了解决这两个问题。在OTG中提出了新的协议——主机协商协议(HNP)。在OTG中还定义了一种新的接口——微型AB插座(mini-AB receptacle)以及微型A插头(mi-ni-A plug)和微型B插头(mini-B plug)。在微型AB插座、微型A插头和微型B插头中添加了1个引脚——ID引脚,如图1所看到的:

在微型A插头中,ID引脚接地。在微型B插头中,ID引脚悬空。

在OTG中,假设设备的ID引脚接地(即mini-A插头连接的设备。如图1右側的设备),则此设备默觉得主机,否则为外设。

同一时候,在设备连接使用过程中。通过主机协商协议,同意主机和外设功能互换。

比如。假设图1左边的B-Device为1个手持PDA,右边的A-Device为1个打印机。

因为连接线的关系,打印机初始化为主机。可是打印机的驱动程序存在PDA中。这时须要PDA作为主机,打印机作为外设。通过HNP能够方便实现此功能,而不必拔下连接线调换插头方向,又一次连接打印机和PDA。

会话请求协议(SRP)
OTG收发器一般用在嵌入式设备中。这类设备普遍採用电池供电。对功耗要求非常严。为了节省电源,在OTG标准中,当电源总线没有使用时,同意A类设备挂起电源总线。当1个B类设备要工作时,它必须通过某种方法通知A类设备向电源总线供电。

为了实现这一功能,在OTG中提出了会话请求协议(SRP)。

在OTG中,1个会话定义为A类设备向电源总线VBUS有效供电的时间。须要注意的是,在OTG中电源一直都是由A类设备(连接mini-Aplug的DRD)提供的。

因为主机协商协议,A类设备也可能作为外设使用。此时。电源也必须由A类设备提供。当A类设备挂起VBUS后,B类设备进入休眠状态。

当B类设备须要再次工作时,它能够通过向数据线发送1个脉冲信号(Data-linePulsing)或向电源总线发送一个脉冲信号(VBUSPulsing)来请求A类设备向电源总线供电。OTG要求不管是DRD设备还是普通的B类设备,都必须具有发送会话请求的功能;同一时候,普通的A类设备或者DRD设备都必须能够响应1个会话请求。

OTG线与普通USB线的差别

USB数据线是我们常见的设备。OTG线作为近年来随着手机行业的快速发展,逐步进入了我们的日常使用范围。

OTG线与普通USB线的有什么差别?

USB数据线用来连接手机和电脑,可通过电脑訪问手机里面的照片、音乐,把手机当做U盘使用。OTG数据线则无需PC,手机可直接通过OTG数据线与U盘、鼠标、键盘等USB设备连接。接U盘直接查找资料。接鼠标方便玩游戏,接键盘可快速打字。接相机直接浏览图片。即拍即传。OTG扩展了手机的功能。


手机通过绿联OTG线给USB风扇供电

OTG线与普通USB线的差别,USB数据线连接电脑的时候。由电脑供电,而OTG数据线连接U盘等设备的时候,手机必须给U盘等外设供电。那么手机是怎样识别USB数据线和OTG数据线的?拆解两根线之后。会发现USB数据线的第4pin是悬空的。OTG数据线的第4pin是短接到地的,手机芯片应该是通过第4pin推断插入的是OTG数据线还是USB数据线,并以此来决定是否打开OTG供电。

硬件上的差异就是,OTG 线一端有一根PIN多接了个GND接地线。让机器分辨谁是主机、谁是Device外设,单以外观是无法分辨OTG线与普通USB线的差别的。

传统 usb 接口出pin 有
1. vbus (5v)
2. GND
3. D+
4. D-


OTG线 接线示意图

otg线 仅仅有 micro接口, 总共出5pin
1. vbus
2. GND
3. D+
4. D-
5. ID

USB线材里面都是跑4条线。仅仅差在接头,手机/平板都是micro USB, 接普通USB线,ID pin悬空, 所以运作在 client/peripheral mode。

假设把 ID GND接地掉, 就会进入 host mode。

USB OTG简单介绍、与普通USB线的差别的更多相关文章

  1. USB OTG简单介绍

    1 引言 随着USB2.0版本号的公布,USB越来越流行,已经成为一种标准接口.如今,USB支持三种传输速率:低速(1.5Mb/s).全速(12Mb/s)和快速(480Mb/s),四种传输类型:块传输 ...

  2. USB OTG简介、与普通USB线的区别

    USB有三类接口A类接口                     -----------最常见的扁平接口,四芯  VCC   GND   D+   D- B类接口                    ...

  3. USB OTG简要

    1 介绍 随着USB2.0发布版本号,USB更受欢迎.它已成为一种标准接口.现在,USB它支持三种速度:低速(1.5Mb/s).全速(12Mb/s)速(480Mb/s),四种传输类型:块传输.同步传输 ...

  4. [RK3288][Android6.0] USB OTG模式及切换【转】

    本文转载自:https://blog.csdn.net/kris_fei/article/details/78620960 Platform: RK3288 OS: Android 6.0 Kerne ...

  5. USB HOST与 USB OTG的区别及工作原理

    在SmartQ 7上面,同时存在USB HOST与 USB OTG两个接口,我想问一下,这两个接口有什么区别么?我怎么认为HOST属于是多余呢? 麻烦高手解答,感激不尽!!! 转自USB HOST与 ...

  6. USB OTG介绍(转载)

    1. 概要 OTG设备使用插头中的ID引脚来区分A/B Device,ID接地被称作为A-Device,为连接时候的USB Host,A-Device始终为总线提供电力,ID悬空被称作为B-Devic ...

  7. USB OTG插入检测识别

    转载请标注原文地址:http://blog.csdn.net/uranus_wm/article/details/9838847 一 USB引脚一般四根线,定义如下: 为支持OTG功能,mini/mi ...

  8. 详述USB OTG发展及协议标准

    USB On-The-Go 扩大了USB 的应用领域,将USB 从传统的PC 与外设通讯的模式,扩展到移动电子和嵌入式领域中,抛开主机PC,实现通常的外设与外设之间点对点(Point to Point ...

  9. USB OTG原理+ ID 检测原理

    OTG 检测的原理是: USB OTG标准在完全兼容USB2.0标准的基础上,增添了电源管理(节省功耗)功能,它允许设备既可作为主机,也可作为外设操作(两用OTG).USB OTG技术可实现没有主机时 ...

随机推荐

  1. Linux系统运维笔记(五),CentOS 6.4安装java程序

    Linux系统运维笔记(五),CentOS 6.4安装java程序 用eclipse编译通的java程序,现需要实施到服务器.实施步骤: 一,导出程序成jar包. 1,在主类编辑界面点右健,选  ru ...

  2. qString转char*

    char *vi_name = new char[vi_rsc_name.length()]; strcpy(vi_name,vi_rsc_name.toStdString().data()); de ...

  3. Storm介绍及核心组件和编程模型

    离线计算 离线计算:批量获取数据.批量传输数据.周期性批量计算数据.数据展示 代表技术:Sqoop批量导入数据.HDFS批量存储数据.MapReduce批量计算数据.Hive批量计算数据.azkaba ...

  4. Xcode6.1 模拟器路径

    Xcode 5的iOS模拟器的应用的目录是在~/Library/Application Support/iPhone Simulator/<iOS_Version>/Application ...

  5. ubuntun 18.04 desktop安装jupyter-notebook

    在ubuntu18.04要安装jupyter-notebook,当然前提是先安装python,然后按如下步骤安装jupyter-notebook,现在记录如下: 1.sudo apt-get upda ...

  6. Docker容器与镜像管理

    目录 容器管理 运行容器 容器的启停操作 容器导入导出 容器生命周期管理 容器资源限制 内存限制 CPU限制 io 限制 镜像管理 镜像命名规范 镜像基本操作 容器管理 运行容器 1.运行一个容器示例 ...

  7. 【Ray Tracing The Next Week 超详解】 光线追踪2-4 Perlin noise

     Preface 为了得到更好的纹理,很多人采用各种形式的柏林噪声(该命名来自于发明人 Ken Perlin) 柏林噪声是一种比较模糊的白噪声的东西:(引用书中一张图) 柏林噪声是用来生成一些看似杂乱 ...

  8. BZOJ1712 : [Usaco2007 China]Summing Sums 加密

    设$s[i]$为进行$i$次加密后所有奶牛数字的和,有$s[i]=(n-1)s[i-1]$. 设$c[i]$为某头固定的奶牛进行$i$次加密后的数字, 若$i$为奇数,有: \[c[i]=((1-n) ...

  9. UVALive 6916 Punching Robot dp

    Punching Robot 题目连接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid= ...

  10. ORA-01591 锁定已被有问题的分配事务处理--解决方法(转)

    转载自love wife & love life —Roger 的Oracle技术博客 本文链接地址: ORA-01591: lock held by in-doubt distributed ...