http://blog.csdn.net/zhandoushi1982/archive/2010/08/16/5814741.aspx

(1)USB

(2)Mini USB

USB设备分为三种:HOST,OTG,DEVICE。其中ID脚在OTG功能中才使用。

A,如果你的系统自己仅仅是用做Slave,那么就使用B接口。任何时候都悬空,都做Slave。

如果是OTG设备,它的系统控制器会判断外部设备的ID脚的电平,决定是什么样的设备插入:

B,如果是高电平,则是B接头插入,此时OTG设备就做主模式(master mode);

C,如果ID为低,则是A接口插入,然后OTG设备就会使用HNP对话协议来决定它跟外设哪个做Master,哪个做Slave。

D,还有种主动OTG设置,就是接入外设后,在OTG设备中点击HOST使能,会强制ID拉低。此时的Master和Slave关系确定。
      我们手机上一般用的都是B型Mini-USB口
(3)总结

从左往右依次为:miniUSB公口(A型插头)、miniUSB公口(B型插头)、USB公口(B型)、USB母口(A型插座)、USB公口(A型插头) 。

(4)OTG

特性:既能充当HOST又能用做Device,即DRD(Dual-role-devices);OTG 设备依然可以连接到PC上用做普通的外设,即POD(Peripheral-Only Device)。协议简述:USB OTG 中引入了两个新的协议, SRP(Session Request Protocol)和HNP(Host Negotiation Protocol),即会话请求协议和主机交流协议。

(5)SRP

SRP 用于B设备向A设备请求建立会话和使用总线。OTG系统中的A设备一般采用电池供电,因此,OTG系统电源管理是非常重要的。为了节省OTG系统的功耗,OTG规定A设备在没有总线活动的时候,可以关掉VBus上的电源。这样,当一个B设备连接到A设备上之后,就要初始化SRP,并发送给A设备,请求A设备在VBus上提供电流支持,进而进行通信。在OTG中,1个会话定义为A类设备向电源总线VBUS有效供电的时间。DRD既可作为A设备,也可作为B设备,因此 DRD必须支持初始化SRP和响应SRP,POD只能作B设备,所以只能初始化SRP。

(6)HNP

HNP 用于两个OTG设备互连时角色切换。当2个DRD互连时,哪个设备作为主机,为什么要作为主机?为了解决这两个问题,在OTG中提出了新的协议——主机协商协议(HNP)。在OTG中还定义了一种新的接口——微型AB插座(mini-AB receptacle)以及微型A插头(mi-ni-A plug)和微型B插头(mini-B plug)。在微型AB插座、微型A插头和微型B插头中增加了1个引脚——ID引脚,为了实现HNP,简而言之,两个OTG设备互连时,可以通过HNP协议协商主从地位。协商过程如下:

在微型A插头中,ID引脚接地,在微型B插头中,ID引脚悬空。在OTG中,如果设备的ID引脚接地(如图l右侧的设备),则此设备默认为主机,否则为外设。同时,在设备连接使用过程中,通过主机协商协议,允许主机和外设功能互换。例如,假设图1左边的B-Device为1个手持PDA,右边的A-Device为1个打印机。由于连接线的关系,打印机初始化为主机。但是打印机的驱动程序存在PDA中,这时需要PDA作为主机,打印机作为外设。通过HNP可以方便实现此功能,而不必拔下连接线调换插头方向,重新连接打印机和PDA。

标准USB/Mini-USB接口,及OTG相关推荐

  1. Mini USB接口定义的秘密

    原文地址::http://www.eepw.com.cn/article/269206.htm 相关文章 1.Mini USB-百度百科----http://baike.baidu.com/link? ...

  2. USB TYPE C接口拆解及定义、USB3.1标准说明

    FROM:http://www.lulian.cn/article-279-cn.html USB TYPE C接口以其纤薄.正反可插拔等诸多优势,得到了广泛运用,我们先看看USB TYPE C接头拆 ...

  3. mini usb耳机接口转3.5mm全过程

    手机坏了,但是手机上的耳机还能用,特别是一些音乐手机,音质非常的棒,但是耳机上的接口和普通3.5mm或者2.5mm标准的不一样,扔了实在可惜. 淘宝上很容易找到的mini usb转3.5mm的转接头[ ...

  4. linux minicon usb配置,USB、Mini-USB、Micro-USB接口的引脚定义

    看到网络上有很多USB.Mini-USB(迷你USB)接口的文章,里面有很多手工画的贴图要么不清楚,要么就是错误的(按照它的标法,插头都插不到插座里),考虑到USB连线和接口应用的广泛性,特重新整理编 ...

  5. STM32 之三 标准外设版USB驱动库详解(架构+文件+函数+使用说明+示例程序)

    写在前面 目前,ST的USB驱动有两套,一套是早期的独立版USB驱动,官方培训文档中称为Legacy library:一套为针对其Cube 系列的驱动,根据芯片不同可能有区别,具体见对应芯片的Cube ...

  6. libusb usb设备访问接口库

    libusb 是一个用C语言开发的跨平台的USB设备访问接口库. 驱动开发向来是内核开发中工作量最多的一块,随着USB设备的普及,大量的USB设备的驱动开发也成为驱动开发者手头上做的最多的事情.本文主 ...

  7. Android+usb+spi,Android设备如何使用USB的硬件接口

    你知道Android设备如何使用USB的硬件接口吗?下面将由学习啦小编带大家来解答这个疑问吧,希望对大家有所收获! 如何处理硬件接口问题 最近业界的发展显示,智能手机/便携系统与自动化系统或机械系统之 ...

  8. 有没有Type-C接口的无线投屏器?HDMI、USB、Type-C接口的无线投屏器又有什么区别呢?

    目前我们看到市面上主流的企业级无线投屏器接口都是以USB或者HDMI+USB的方式.而我们知道Apple公司最新推出的MacBook放弃了之前的雷电口,采用了Type-C接口,但是众多的果粉连接到投影 ...

  9. 高通平台USB 2.0和USB 3.0接口充电器识别原理

    1 BC 1.2 1.1 充电器类型探测 1)DCD:DP上有150mV(= 10uA x 15K欧姆下拉电阻)的电压,DM上电压为0 2)Primary Det(DP发起检测DM): - DP上加载 ...

  10. ft232 android,微雪电子FT232(mini)USB转USART简介

    FT232 USB转UART串口模块 USB mini接口 采用原装FT232RL 支持3种供电模式 支持Mac.Linux.Android.WinCE.Windows 7/8/8.1/10... 型 ...

最新文章

  1. apache http server指的是什么
  2. python 的常用时间操作,取得当前时间等
  3. python递归函数讲解_Python递归函数实例讲解
  4. 岗岭集团打造中国最大的线上线下一体化的医药健康平台
  5. hj212协议如何和php通讯,5G/4G边缘计算网关如何实现HJ212协议上报
  6. 这么说吧,NIO很简单,其实就是个牛逼IO
  7. MySQL MHA详解(一)——基本原理
  8. tomcat打印日志乱码_针对tomcat日志乱码问题
  9. math.floor javascript
  10. java满天星星代码_纯Java代码实现流星划过天空
  11. UG二次开发 创建圆柱和简单孔UF_MODL_create_simple_hole
  12. c语言直方图最大矩形面积,利用枚举法求直方图中最大矩形面积的方法实例
  13. 从水处理速度梯度的公式,复习一下物理学常用公式,擦边爱因斯坦质能方程
  14. nohup sh xxx.sh /dev/null
  15. bom更改编号 sap_SAP ERP系统如何通过LSMW批量更改BOM
  16. 曹操捷龙鸿宇CAD铝单板钣金展开插件
  17. Google+推出相册管理器Album Organizer
  18. JavaScript进阶:如何写出优雅的JavaScript代码
  19. win10下基于wsl-Ubuntu 的LAMMPS超便捷安装
  20. 迷宫(2017省赛C/C++填空)

热门文章

  1. Android内存优化之图片优化
  2. Android 在应用图标上设置未读消息数量
  3. python卸载及python 0x80070643 安装发生严重错误
  4. 8b/10b编码是什么?
  5. 小目标---时钟的实现
  6. Netty 学习之旅:ByteBuf 篇之 ByteBuf 内部结构与 API 学习
  7. 7款开源ERP系统比较
  8. 瞄准前沿科技,美团是不务正业还是另有所图?
  9. 新推荐个百度网盘不限速下载神器
  10. Ubuntu20中使用AirSim--亲测可用