USB Host、USB Device和USB otg的理论简析
最近在弄USB Host、USB Device和USB otg的电路。先理论上分析一下这三者之间的区别与联系。
一、先说USB的引脚定义:
我们PC上目前常用的USB接口为USB3.0和USB2.0,但是以个人短浅的经验,在ARM上基本还都是以USB2.0和USB1.1为主。接口定义以这个为准。一般的USB接口为四根线:红绿白黑-->从左至右!![USB接口定义](https://img-blog.csdn.net/20151117222824739)红色-USB电源 标有-VCC、Power、5V、5VSB字样绿色-USB数据线(正)-DATA+、USBD+、DP+、、USBDT+白色-USB数据线(负)-DATA-、USBD-、DM-、USBDT+黑色-地线 -GND、GroundUSB接口的输出电压和电流是:+5V/500mA 实际上有误差,最大不能超过+/-0.2V 也就是4.8-5.2V 。USB2.0规范是由USB1.1规范演变而来的。它的传输速率达到了480Mbps,折算为MB为60MB/s。因此,USB2.0可以驱动程序上可以兼容USB1.1。各种USB接口的定义如下图所示:![常用USB接口类型](https://img-blog.csdn.net/20151117223636432)从左往右依次为:miniUSB公口(A型插头)、miniUSB公口(B型插头)、USB公口(B型)、USB母口(A型插座)、USB公口(A型插头)![A/B型USB接口](https://img-blog.csdn.net/20151117223426600)![Mini-USB接口](https://img-blog.csdn.net/20151117223457869)Micro-USB接口跟Mini-USB接口的定义是一样的,在我们的手机中普遍应用,这里就不再附图说明。
二、三种方式的理论简析
USB,英文全称:Universal Serial Bus,即通用串行总线。 Host就是主,可以起到控制作用;device(slave)就是从,是被控制的。例如主机的USB口,可以识别U盘或者是其它USB设备,所以主机的USB就是Host接口,而U盘的就是device。OTG就是指既可以做Host口亦可以做device口。Mini-USB和Micro-USB的ID脚在OTG功能中才使用。在OTG中,初始主机设备称为A设备,外设称为B设备。Mini-A插头(即A外设)中的ID引脚接地,Mini-B插头(即B外设)中的ID引脚浮空,默认上拉为高电平。当OTG设备检测到ID引脚接地时,表示默认的是A设备(主机),而检测到ID引脚浮空则认为是B设备(外设)。如果你的系统仅仅是用做Slave,那么就使用B接口。系统控制器会判断ID脚的电平判断是什么样的设备插入,如果是高电平,则是B接头插入,此时系统就做主模式(master mode)。如果ID为低,则是A接口插入,然后系统就会使用HNP对话协议来决定哪个做Master,哪个做Slave。也就是说,手机既可以做外设,又可以做主机来传送数据,可用电缆的连接方式来决定初始角色(由ID线的状态来决定)。简单说就是:USB Host是指驱动过后,板子就可以连接USB接口连接的器件,读取和装载数据了,类似PC。USB Device是指驱动过后,板子可以当做一个USB移动设备,通过USB连接到电脑上,类似U盘。实际的USB连接线中,是没有USB_ID这根线的。 都是在接口部分直接拉死的的。对于Host端,只需将连接线的USB_ID pin和地短接即可,对于Slave端,USB连接线的USB_ID pin是悬空的。(设备内部上拉)。
USB Host、USB Device和USB otg的理论简析相关推荐
- usb host 驱动 - device 拔插
1. usbhid 设备拔插 1.1 usb device disconnect 1.1.1 上层卸载usb 设备驱动 生成应用通过ioctl 卸载usb 设备. [ 709.471619] [T29 ...
- 关于usb host和device 相关内容网址
1.USB+HOSTDEVICE控制器的设计与验证: http://wenku.baidu.com/link?url=5HsA8qaSWFqpUEseNb9U9YC3fbRmrhb5IkTuZJByv ...
- USB host、usb device、USB OTG的判断
USB host.usb device.USB OTG的判断 经典博客 概念 host.device OTG 识别 host.device OTG 实际开发中遇到的问题 总结 经典博客 文章 链接 O ...
- Real6410移植linux-2.6.39.1记录(3)-USB驱动移植(USB HOST以及USB OTG)
// 主题:Real6410移植linux-2.6.39.1 // 作者:kevinjz2010@gmail.com // 版权:kevinjz原创 // 平台:linux-2.39.1 real64 ...
- S3C2440 WINCE6将USB DEVICE改成USB HOST,实现两个USB HOST
S3C2440一般默认的是一个USB DEVICE,一个USB HOST,即一个主口,一个从口,先来看看USB Device与USB Host相关知识. USB Host: 最底层就是USB Host ...
- 安卓USB开发教程 一 USB Host 与 Accessory
安卓通过两种模式:USB Accessory 与 USB Host 模式支持多种 USB 外设与安卓 USB 配件(实现安卓配件协议的硬件).在 USB 配件模式下,外部 USB 硬件充当 USB 主 ...
- RT-thread应用讲解——U盘(usb host)
RT-thread应用讲解--U盘(usb host) 目录 RT-thread应用讲解--U盘(usb host) 前言 一.STM32CubeMX配置 二.ENV配置 1.使能USB Host 2 ...
- 魅族MX答疑:魅族MX USB Host功能测试
转自:http://deepin.org/thread-2088852-1-1.html 相信魅友们都知道魅族MX支持USB Host,而很多魅友并不知道USB Host是什么,怎么使用.今天笔者为大 ...
- Android 通过USB与PLC设备通信(USB转串口)
经朋友介绍接的一个外包,要求用USB和PLC设备通信,于是乎就有了本文.内容不深,权当做个记录整理一下当时的思路. 一.解决思路 1. 首先,PLC设备通常都是用串口进行通讯,走的Modbus协议.这 ...
- USB接口(2)——USB控制器EHCI、OHCI、UHCI与usb hub芯片
EHCI和OHCI,UHCI概念 USB控制器类型: OHCI.UHCI都是USB1.1的接口标准,而EHCI是对应USB2.0的接口标准,最新的xHCI是USB3.0的接口标准. OHCI( Ope ...
最新文章
- 项目发布后 Tomcat中只有web-INF文件夹
- Sysnoise5.6安装教程
- leetcode40. 组合总和 II(回溯)
- linux xchgl 汇编含义,替换x86 xchgl 汇编指令
- 使用WebStorm将项目部署到IIS
- JavaGUI实现科学计算器
- 中兴笔试题:打家劫舍【动态规划】
- 计算机程序员带什么手表,程序员只爱格子衫?这些手表程序员也喜欢!
- 台式计算机开机不自检不起动,台式机开机一直自检的解决方法
- python 源代码 macd双底 高 低_利用Python实现MACD''顶底背离''形态,并实现自动化交易!...
- EndNote安装教程与使用教程 关联加载word
- Janitor Troubles
- mybatis type-aliases-package
- 照相机的计算机微处理器芯片是什么,芯片到底是什么?
- 统计学 假设检验 P值
- 使用图像扫描控件ScanOnWeb实现在线图像扫描
- 制药实验室信息管理系统(LIMS)
- 粗点心之NodeList和Array
- 计算机应用基础excel数据,《计算机应用基础》excel操作练习题集
- JS-ES6 jsdoc通过注解生成-更具规格的API文档