USB协议-检测设备连接与速度
在USB设备连接时,USB系统能自动检测到这个连接,并识别出其采用的数据传输速率。USB采用在D+或D-线上增加上拉电阻的方法来识别低速和全速设备。
USB支持3种类型的传输速率:1.5Mb/s的低速传输、12Mb/s的全速传输和480Mb/s的高速传输。
当主控制器或集线器的下行端口上没有USB设备连接时,其D+和D-线上的下拉电阻使得这两条数据线的电压都接近低电平(0V);当低速/全速设备连接以后,电流流过由集线器的下拉电阻和设备在D+/D-的上拉电阻构成分压器。由于下拉电阻的阻值是15kΩ,上拉电阻的阻值是1.5kΩ,所以在D+/D-线上会出现大小为(Vcc*15/(15+1.5))的直流高电平电压。如图所示,用实线所画电阻连接为低速设备连接,而虚线所画电阻为全速设备连接。当USB主机探测到D+/D-线的电压已经接近高电平,而其他的线保持接地时,它就知道全速/低速设备已经连接了。

高速设备在连接起始时,需要以全速速率与主机进行通信,以完成其配置操作。这时需要在D+线上连接1.5kΩ的上拉电阻。当高速设备正常工作时,如果采用高速传输,则D+线不可上拉;但如果仍采用全速传输,则在D+线上必须使用上拉电阻。因此,为识别出高速设备,需要在上拉电阻与D+线之间连接一个由软件控制的开关,它通常被集成在USB设备接口芯片的内部。
(全速上拉接D+,低速上拉接D-,高速上拉需控制)
USB协议-检测设备连接与速度的更多相关文章
- 如何忽略usb host 模式设备连接确认对话框
<li class="alt"><span><span>package android.hardware.usb; </span> ...
- USB协议-USB设备的枚举过程
USB主机在检测到USB设备插入后,就要对设备进行枚举了.为什么要枚举?枚举就是从设备读取各种描述符信息,这样主机就可以根据这些信息来加载合适的驱动程序,从而知道设备是什么样的设备,如何进行通信等. ...
- USB协议[转]_基本上涵盖了所有最基础的USB协议相关知识。
背景: 需要使用到USB协议,我一直尝试着去强记这个流程,现在看来,其实不用.看多了,把这个过程具象出来,就牢牢记住了. 正文: 正文转自:http://fangjian0518.blog.163.c ...
- 【转】USB协议架构及驱动架构
1. USB协议 1.1 USB主机系统 在USB主机系统中,通过根集线器与外部USB从机设备相连的处理芯片,称为USB主机控制器.USB主机控制器包含硬件.软件和固件一部分. 1.2 USB设备系统 ...
- 接口与协议学习笔记-USB协议_USB2.0_USB3.0不同版本(三)
USB(Universal Serial Bus)全称通用串口总线,USB为解决即插即用需求而诞生,支持热插拔.USB协议版本有USB1.0.USB1.1.USB2.0.USB3.1等,USB2.0目 ...
- 基于Linux的USB 主/从设备之间通讯的三种方式
转载:http://archive.eet-china.com/www.eet-china.com/ART_8800323770_617693_TA_eda530e7.HTM 随着简单易用的USB接口 ...
- 《网蜂A8实战演练》——8.Linux USB 主机控制器和设备驱动
USB 的全称是 Universal Serial Bus,顾名思义:通用串行总线. 提到总线,联想一下,在你心目中总线总是用来干嘛的?还记得 I2C 总线? I2C 总线上挂有二条信号线,一条是 S ...
- USB协议[转]__总结得很好
一 枚举过程:◆ 用户将一个USB设备插入USB端口,主机为端口供电,设备此时处于上电状态.◆主机检测设备.◆集线器使用中断通道将事件报告给主机.◆主机发送Get_Port_Status(读端口状态) ...
- USB协议基础知识
ref : https://blog.csdn.net/u010142953/article/details/82627591 USB 基本知识 USB的重要关键概念: 1. 端点:位于USB设备 ...
随机推荐
- mac iterm2快捷键
快捷揵 这大概是item吸引用户的魅力所在了. 1.⌘ +数字在各 tab标签直接来回切换 2.选择即复制 + 鼠标中键粘贴,这个很实用 3.⌘ + f所查找的内容会被自动复制 4.⌘ + d 横着分 ...
- PHP中的include、include_once、require、require_once
include.include_once().require.require_once() 作用: 通过 include 或 require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件( ...
- Linux 中 10 个有用的命令行补全例子
在 Linux 系统中,当你输入一个命令,再按两次 TAB 键,就会列出所有以你输入字符开头的可用命令.这并不新鲜,可能你已经知道了.这个功能被称作命令行补全bash completion.默认情况下 ...
- JS访问剪切板中的图片
google出来一个html2canvas,它利用canvas来渲染读取的DOM树,也就是说它只能截取document里的内容,如果要像qq截图那样,应该怎么做?用过百度的Ueditor编辑器的朋友都 ...
- elasticsearch插件之一:bigdesk
bigdesk是elasticsearch的一个集群监控工具,可以通过它来查看es集群的各种状态,如:cpu.内存使用情况,索引数据.搜索情况,http连接数等. 可用项目git地址:https:// ...
- 简易模仿手机拨号盘浮在ListView之上并且展开,折叠效果
2013-12-24 16:56:45 有时候可以看到很多手机会将Call log list和Dailer放在同一个页面中,同时Dialer是可以折叠.打开的,自己做了一个Demo,能实现这种效果,简 ...
- RM报表预览,只有固定的1个订单页面
明明选了多个记录,预览时,只显示最后一个. 原因: 主项数据的数据集选了报表自带的虚拟数据集了.
- python3使用requests发闪存
闪存ing.cnblogs.com是博客园类似推特.饭否的服务, 我写了以下程序可以完成发闪存的操作,目的是顺便练习使用requests库. requests是一个python 轻量的http客户端库 ...
- 系统的 host文件的作用
有些用户可能已经注意到,我们在上网时除了可使用常规的 http://www.xxx.com或http://www.xxx.com.cn等形式的网站域名之外,还可以使用类似于“202.106.184.2 ...
- Java私有构造器
Java私有构造器:使用private关键字声明的构造函数.由于类的构造函数时私有的,所以此类不能被实例化,同时也不能被继承.<Effective Java>第三条:用私有构造器或者枚举强 ...