SciTech-EE-Mobile-OTG: 切换Host与Device角色由手机USB接口取电为外部设备供电的方法
SciTech-EE-Mobile-OTG: 由手机USB接口取电为外部设备供电的方法
- OTG接口与转换器
OTG是"On The Go"的英文缩写,字面上可以理解为“安上即可用”。
USB传输是Host-Device的主从结构,一切USB传输都有Host发起:比如:
- 在开发板上插入U盘,这时开发板作为USB Host;
- 但开发板插在PC上,开发板却作为USB Device;
- 开发板既要能作为USB Host、也要能作为USB Device两种角色,
就要使用OTG插口:
它根据硬件电路自动识别自己的角色, 切换为USB Host或USB Deivce。
OTG插口有多种形态,常用的有Micro USB、Type C,如下:

1.1 Micro USB
对于Micro USB插座,它有5条引脚:

引脚作用如下表所示:
| 引脚名 | 作用 |
|---|---|
| VBUS | 作为Host时,对外供电; 作为Device时,接收外部输入的电源 |
| DM | 数据信号 |
| DP | 数据信号 |
| ID | Host/Device角色切换引脚, 拉低电位为Host, 拉高电位作Device(默认值) |
| GND | 地线 |
开发板作为USB Device时跟PC上的USB相连:
PC的USB接口只有VBUS、DM、DP、GND,
所以开发板的ID引脚跟PC的USB口并无连接,ID引脚被板子上的上拉电阻拉高。开发板作为USB Host时,需要接入一个"OTG转换器",如下图黑色的转换器:
![]()
此时电路连接如下图:
![]()
SciTech-EE-Mobile-OTG: 切换Host与Device角色由手机USB接口取电为外部设备供电的方法的更多相关文章
- RK3288 OTG切换为Host模式
OTG = On The Go,是USB的一种工作模式 USB协议中规定了两类设备,一类是Host.一类是Device. Host为主控设备,如PC,Device为从设备,如鼠标.U盘等,Device ...
- I.MX6 OTG set as slave device hacking
/****************************************************************************** * IMX6 OTG set as sl ...
- Android开发切换host应用
由于在工作过程中常需要切换手机的host来测试不同服务器上的接口,所以想到需要这么个软件. SwitchHost在PC上是一款很好用的修改Host的软件,手机上也需要这么一款App(当然手机需要已经R ...
- switchhost -- 切换host的工具
https://github.com/oldj/SwitchHosts/downloads 下载链接: 1,290 downloads SwitchHosts! _v0.2.2.1790.dmg - ...
- usb host和device的关系-ARM 论坛 - 21ic电子技术论坛
usb host和device的关系 疑问1:我们通常所用的u盘应该是usb device吧?我想这个不用多说,呵呵. ===============恩.============== 疑问2:我们通常 ...
- firefox插件hostadmin自由切换host
在Mac下firefox插件hostadmin切换host,遇到的第一个问题就是提示权限不足,解决办法,在终端输入以下命令即可: sudo chmod og+w /etc/hosts chmod修改权 ...
- [usb]usb otg和host
USB OTG 设备既能做主机,又能做设备.USB HOST是指主机.当OTG 插到 HOST 上,OTG 的角色 就是 device.当device 插到 OTG 上,OTG 的角色就是 HOST. ...
- !带有指针的类和struct赋值的本质 - host to device
//这个变量必须在while循环外面 //原因是当将loadModels[modelNum].g_3DModel[0]赋值给新建类后 //里面的数值拷贝过去了,而里头的指针只给了地址 //所以如果这个 ...
- jquery mobile页面切换效果(Flip toggle switch)(注:jQuery移动使用的数据属性的列表。 )
1.页面切换(data-transition)
- Mac下chrome的webapp hostadmin 快速切换host
首先是安装 app ,https://chrome.google.com/webstore/detail/hostadmin-app/mfoaclfeiefiehgaojbmncmefhdnikeg ...
随机推荐
- nndeploy开源推理框架教程来袭,模型推理全流程,轻松上手,一键精通!
大家好,我们是 nndeploy 开源团队.我们专注于打造一款端到端的模型推理和部署框架 -- nndeploy,旨在为用户提供高效.便捷.灵活且兼容主流框架的模型推理和部署体验. 此次,我们开发了 ...
- 国际化利器 Intl Messageformat
我们是袋鼠云数栈 UED 团队,致力于打造优秀的一站式数据中台产品.我们始终保持工匠精神,探索前端道路,为社区积累并传播经验价值. 本文作者:霜序 Formats ICU Message string ...
- css_初阶
s10.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
- Tableau 我常用函数整理
日期函数 dateadd datedadd (date_part, interval, date) 表示在日期 date 的基础上, 以date_part 为单位, 与之间隔 interval的日期 ...
- 为Java虚拟机分配堆内存大于机器物理内存会怎么样?
之前在某个地方看到的一个问题,"如果为Java虚拟机指定的堆内存大于物理内存会怎么样?",今天正好又看到了HotSpot VM中关于为堆分配内存的源代码实现,顺便从源代码角度解答一 ...
- 探索Rust:所有权和借用的魅力与应用
@charset "UTF-8"; .markdown-body { line-height: 1.75; font-weight: 400; font-size: 15px; o ...
- ZeRO:一种去除冗余的数据并行方案
ZeRO:一种去除冗余的数据并行方案 目前训练超大规模语言模型主要有两条技术路线: TPU + XLA + TensorFlow/JAX GPU + Pytorch + Megatron + Deep ...
- java常用包的介绍
java.* java.lang 包含Java程序所需要的基本类(默认导入) java.util 包含丰富的常用工具类,如集合框架.事件模式.日期时间等 java.math ...
- React-Native开发鸿蒙NEXT-蓝牙与图片处理的更正补充
.markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rg ...
- Java 批量重命名文件
以下实例演示了使用java I/O流读取文件夹中所有的文件名,并基于for循环使用 File 类的 oldFile.renameTo(newFile) 方法批量重命名文件. import java ...

