----------------------------------------------------------------------------------------------------------------------------
开发板 :NanoPC-T4
开发板eMMC
:16GB
LPDDR3
:4GB
显示屏 :15.6
英寸HDMI
接口显示屏u-boot
:2023.04
linux
:6.3
----------------------------------------------------------------------------------------------------------------------------
一、USB OTG
USB
是主从模式的总线,主机称为Host
,丛机称为Device
(设备)。从机与从机之间、主机与主机之间(不包括USB4.0
),不能互联。每次通信都是由主机发起,从机不能主动发起通信,只能被动的应答主机的请求。
USB OTG
(On-The-Go
)是一个扩展的USB
标准,允许USB
设备之间直接进行通信,而无需通过主机。这意味着设备可以在作为主机和设备之间切换角色,实现了更灵活的连接方式。例如,两台智能手机之间可以通过USB OTG
直接连接并共享文件,而无需依赖计算机作为中介。
1.1 概述
对于标准USB2.0
来说,一共有4根引脚,一对差分线D+
/D-
,还有地线GND
、电源线VBUS
。
对于标准USB3.0
来说:一共有9根引脚,为了兼容USB2.0
除了拥有USB2.0
的一对差分线D+
/D-
、以及地线GND
、电源线VBUS
外,还会拥有两对差分线(SSTX+
和SSTX-
及SSRX+
和SSRX-
)和一根屏蔽地线;
USB2.0 OTG
在标准USB2.0
基础上增加了一根USB ID
线,使用USB2.0 OTG
的设备是可以通过ID
脚位来判断其做为主机或是普通设备用途;
引脚 | 名称 | 线缆颜色 | 描述 |
---|---|---|---|
1 | VBUS | 红色 | +5V供电 |
2 | D- | 白色 | 差分数据- |
3 | D+ | 绿色 | 差分数据+ |
4 | ID | N/A | 可以用来区分另一端接口类型 主机:接地 设备:不连接 |
5 | GND | 黑色 | 地 |
对于支持OTG
功能的USB
控制器,我们称之为USB OTG
控制器。USB OTG
控制器的工作模式有三种(通过程序控制):OTG
、Device
、Host
;
OTG
:同时支持主机/设备,工作在这种模式时,我们可以通过ID
和VBUS
两个脚的状态来识别是否接入了USB
主机或USB
设备;Device
:作为USB
设备使用,由连接的USB
主机提供VBUS
电源;Host
:作为USB
主机使用,可以外接USB
设备,比如鼠标,键盘,并为所连接的USB
设备提供VBUS
电源;
USB
常见的接口有USB Type-A/B/C
三种,其中Type-A/B
又有标准A/B
、Mini-A/B
和Micro-A/B
三种。无论是 Type-A
、Type-B
还是Type-C
接口,只要设备支持USB OTG
功能,就可以在两个设备之间实现直接连接和数据传输。实物图如下图所示:
接下来我们介绍一下这三种不同的接口是如何识别接入的是USB
主机还是USB
设备。