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连接端口; 
能够向电源总线提供不小于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 to PC USB API简介

    USB OTG to PC USB API简介 本API分为四部分:Linux或Android内核 (主要是gadget驱动).linux端API及其DEMO.Windows 驱动.Windows A ...

  2. USB host、usb device、USB OTG的判断

    USB host.usb device.USB OTG的判断 经典博客 概念 host.device OTG 识别 host.device OTG 实际开发中遇到的问题 总结 经典博客 文章 链接 O ...

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

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

  4. USB OTG ID 检测原理

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

  5. 认识USB OTG miniAB

    作者:风中之哨 转自:http://blog.csdn.net/coder_jack/article/details/5622511 本文内容载自网络 USB2.0仅定义了如下允许的cable类型: ...

  6. USB OTG原理简述

    USB OTG即USB On-The-Go的缩写,他目的是实现在没有Host的情况下,实现设备间的数据传送.例如数码相机直接连接到打印机上,通过OTG技术,连接两台设备间的USB口,将拍出的相片立即打 ...

  7. USB OTG的检测原理及使用

    USB OTG标准允许设备既可作为主机,也可作为外设.USB OTG技术可实现没有主机时,设备和设备之间的数据传输. USB OTG接口中有5条线: 2条用来传输数据(D+.D-) 1条是电源线(VB ...

  8. otg android 键盘,使用USB OTG将手机、平板连上键盘、U盘

    偶是比较比较少用智能手机的,一是对于整天待在电脑前的我来讲,智能手机能完成的东西,我在电脑上能随时更方便地处理:二是,智能手机的屏实在太小了,看什么东西翻来翻去的浪费时间:三就是因为输入文字什么的太不 ...

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

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

最新文章

  1. 在ubuntu 14.04 64bit上安装酷我音乐盒Linux客户端kwplayer
  2. 22条API设计的最佳实践
  3. CSS 知识(13---)
  4. makefile与make
  5. 物联网创新领域的三大驱动性趋势
  6. 动手造轮子:实现一个简单的基于 Console 的日志输出
  7. iphone已停用怎么解锁_两种无密码解锁iPhone锁屏密码的方法
  8. 定时任务(Spring Cloud Task)
  9. 图片播放器小项目(详解)
  10. GhostNet网络
  11. 火焰传感器感应有火亮灯代码_史上最全燃气壁挂炉故障代码,这个值得收藏
  12. 解决python2.7.9以下版本requests访问https的问题
  13. python双目视觉三维重建代码_双目立体视觉的三维重建方法与流程
  14. python51课视频_【Python 课堂】第51课—— and-or技巧
  15. thinkphp5.0如何隐藏index.php入口文件
  16. 使用DIDatepicker
  17. MATLAB2017a安装破解教程
  18. 【网络设备】单臂路由和STP配置及理论
  19. 深度linux卡在logo,记录一次深度deepin开机卡logo解决方案
  20. 5G聚合路由器助力无人机监控盲区打好疫情阻击战

热门文章

  1. 计算机专业英语词组,[计算机专业英语词组.doc
  2. ubuntu中把软件放在桌面
  3. 留个念想,clipper库的使用效果
  4. android目录结构
  5. 电信计费模拟系统c语言,电信计费模拟实现(C语言).doc
  6. Jumping Frog
  7. Python的PyAutoGUI库整理中文文档,可以让所有GUI都实现自动化。
  8. 【编译原理】-- 第二章(二)(短语、简单短语、句柄、文法二义性、语法树、例题)
  9. B2B行业的支付的那些事。
  10. Win10系统Jdk环境变量配置遇到'javac' 不是内部或外部命令,也不是可运行的程序 或批处理文件 解决办法。