USB-OTG
USB
USB是什么?
USB(Universal Serial Bus)是一种通用的总线标准,用于连接主机和外设设备。USB 主机(USB Host)可以通过 USB 接口与 USB 设备(UBS Device)连接,实现 数据传输、电源供给 等功能。
USB IF(USB Implementers Forum)是 USB 标准的制定者,它制定了 USB 标准,包括 USB 1.1、USB 2.0、USB 3.0 等,定义了 USB 接口的物理层、数据链路层、传输层、会话层、表示层等协议,以及 USB 设备类(Device Class)标准,常见的设备类包括 HID(Human Interface Device,人机接口设备)、MSC(Mass Storage Class,大容量存储设备)、CDC(Communication Device Class,通信设备)、Audio、Video 等。
USB协议版本(协议版本向下兼容):
- USB 1.0/1.1(low/full speed),传输速率最大为12Mbps
- USB 2.0(high speed),传输速率最大480Mbps
- USB 3.0(super speed),传输速率最大5Gbps
USB接口类型:
- Type A,即使我们电脑上的那种接口。
- Type B,不太常见,比较方正的T型接口,有的嵌入式开发板会用。
- Type C,2013年公布该接口类型,现在开始流行起来了,最大的好处就是可以盲插,而不用区分正反。后续电子产品接口将实现 Typc-C 接口大一统。
- Micro/mini,早期的安卓手机上使用Micro USB比较常见。
USB各种接口图片:https://www.usbzh.com/article/detail-144.html
引脚:
USB Device:
USB Device 是连接到USB Host的外设,它响应Host的命令和请求,提供特定的功能或服务。USB Device可以是简单的输入设备(如键盘、鼠标)、存储设备(如U盘、外置硬盘)、打印机、摄像头等。
USB Host:
USB Host 是USB通信中的控制者,负责初始化和管理所有USB通信。它通常是一个计算设备,如个人计算机、笔记本电脑、平板电脑或某些嵌入式系统(如支持USB OTG的微控制器)。
USB OTG:
USB On-The-Go 通常缩写为USB OTG,是USB 2.0规格的补充标准。它可使USB设备,例如播放器或手机,从USB周边设备变为USB主机,与其他USB设备连接通信。在正常情况下,这些支持OTG的USB设备和USB主机(例如:PC),仍然作为USB周边设备使用。
支持OTG的设备,如USB打印机,可以不连接电脑的情况下直接接入U盘来读取设备内文件进行打印;或平板电脑可以直接接入USB存储碟、键盘或鼠标来扩充外界硬件功能。
疑问
1、USB Type-C OTG 口自身怎么判断当前只是供电,还是既供电又传输数据?
USB Type-C 母头针脚定义:
针脚 | 定义 | 作用 |
---|---|---|
A1/B1 | GND | 接地针脚 |
A2/B2 | TX1+/TX2+ | SuperSpeed 差分信号发送针脚正极 |
A3/B3 | TX1-/TX2- | SuperSpeed 差分信号发送针脚负极 |
A4/B4 | VBUS | 供电针脚 |
A5/B5 | CC1/CC2 | 配置通道信号针脚 |
A6/B6 | D+ | 数据针脚正极 |
A7/B7 | D- | 数据针脚负极 |
A8/B8 | SBU1/SBU2 | 边带使用针脚 |
A9/B9 | VBUS | 供电针脚 |
A10/B10 | RX2-/RX1- | SuperSpeed 差分信号接收针脚负极 |
A11/B11 | RX2+/RX1+ | SuperSpeed 差分信号接收针脚正极 |
A12/B12 | GND | 接地针脚 |
DFP、UFP和DRP概念:
DFP:Downstream Facing Port,也就是Host
UFP:Upstream Facing Port,也就是Device
DRP:Dual Role port,既可以做DFP,也可以做UFP,也就是OTG
CC线(CC1或CC2):CC线用于协商电源角色和数据角色,以及检测连接的设备类型(电源适配器或USB设备)。电源适配器通常只提供电源,不支持数据传输。USB设备会通过CC线与USB Host进行通信,协商电源和数据角色。
VBUS线:通过检测VBUS线有5V电压来确认连接的设备提供电源。
D+和D-线:两根查分信号线,支持USB2.0用于传输高速数字信号,最高传输速率可达480 Mbps。或支持Type-C 耳机的左右声道信号。
TX和RX:支持USB 3.2/4.0 信号传输