用USB Monitor监视USB枚举(配置识别)过程(USB枚举过程分析.docxVIP

用USB Monitor监视USB枚举(配置识别)过程(USB枚举过程分析.docx

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用USB Monitor监视USB枚举(配置识别)过程(USB枚举过程分析

搭个简单电路验证USB主机是如何检测USB设备的插入和拨出动作的 ------分隔线----------------------------   USB设备是一种即插即用设备,即插即用的英文缩写为PNP(Plug and Play),在不用关主机的情况即可直接拨插USB设备,而且插上即可使用,那么USB主机是如何检测USB设备的插入和拨出动作的呢?   总结来说USB主机是通过监视USB端口上的电压变化来判断设备的插入和拨出动作的。   USB集线器端口的两根信号线D+和D-(《USB物理模型简介》一文有介绍) 的每一根都有15kΩ的下拉电阻,而在设备端,在D+或D-上接了1.5kΩ的上拉电阻,当未插入设备时,即集线器的端口悬空时,两根信号线都被下拉电阻拉到了低电平。当USB设备插入时,由于上拉电阻的存在,由1.5K的上拉电阻和15K的下拉电阻分压,两要信号线中有一根被拉到了高电平,集线器检测到这个状态后,它就报告给USB主控制器(或者通过它上一层的集线器报告给USB主控制器),这样就检测到设备的插入了。对于全速和高速设备,上拉电阻是接在D+上的,而低速设备则是上拉电阻接在D-上的,集线器通过判断哪根线被拉高来区分是低速设备还是全速和高速设备。USB高速设备先是被识别为全速设备,然后通过主机和设备两者之间的数据通讯进一步确认,再切换到高速模式的。在高速模式下,是电流传输模式,这时会将D+上的上拉电阻断开。当USB主机检测设备的插入后,主机将会向设备发出一系列枚举请求,设备作出正确响应来完成USB设备枚举过程。   我们做个简单的实验,自已搭一个电路,只用一个上拉电阻接在USB的+5V(VBUS)和D+或者D-上,这个电路插入电脑上的USB端口后同样会提示发现USB设备,只是不能安装驱动程序而已(因为安装驱动力程序需要设备枚举过后,设备枚举过程需要USB设备对主机发来的命令请求数据包作出正确的回复),这时打开设备管理器看看,有显示未知USB设备,并且其VID和PID为0,根据这个,我们可以简单的判断设备是否枚举成功。电路图如下: ? ? 图1 USB插入检测实验电路 ?   下面我们来搭这个电路,如果手上没有USB插座,可以用一根USB电缆,一头剪掉,记得插电脑那头扁平接头连线不要留得太短,将一个1.5K电阻焊到上VBUS和D+之间即可,如如何找出USB电缆里这两根线的位置呢,请看下面图所示: ? ? 图2 USB电缆及插头信号定义   这里介绍另一种方法,如果您的手上有USB插座的话,这种方法不用把USB电剪断,所以建议使用下面的方法。这种方法直接把电阻焊到另外准备的USB插座上,各种类型USB插座信号脚定义如下所示: ? ? 图3 USB插座引脚编号(电气含义见图2) ?  在USB插座的VBUS和D+(即第1和第3脚)之间焊上1.5K电阻后的效果(我用的是贴片电阻): ? ? 图3 在USB-B插座上搭个电阻做USB设备插入检测实验   然后把这个电路插入电脑主机,Windows真的发现有USB设备插入电脑了,只是不能安装驱动程序而已,如下图所示: ? ? 图4? Windows真的发现这个假的USB设备了   打开设备管理器查看这个假的USB设备,发现PID和VID都为0,这也是判断USB枚举成功与否的标志。 ? 图5 USB插入检测实验-查看PID和VID? 用USB Monitor监视USB枚举(配置、识别)过程(USB枚举过程分析 ------分隔线----------------------------   这是原来发表在百合电子工作室主站的,现在由于成立了百合电子工作室的USB专题站(USB开发网),所以将这篇文章移到了这里,除了本文介绍的用USB Monitor监控USB枚举过程,分析USB枚举过程外,由于大部分网友对bus hound使用比较熟悉,所以USB开发网还另外发表了一篇《用BUS HOUND监视USB枚举(配置、识别)过程(USB枚举过程分析)》。 准备工具   在发表此文之前,网上讲的监控USB通信都是介绍的bus hound,这里我们介绍另一个工具:USB Monitor。USB Monitor可以监控到USB枚举初始阶段一些数据,不过这些数据对于大多数开发人员来说不需要去关心,另外USB Monitor还可以对截获的数据进行简单解析,给出其含义。用USB Monitor的缺点是目前好像还找不到它的破解版,只能试用大约一个月的时间,不过已经够了。? ? USB Monitor2.26 ? 优盘一个 USB Monitor的安装   非常简单,安装一路next下去即可,安装完成后将会提示您重新启动系统,照做。 监控设置 1、运行安装好后的USB Monitor,点击菜单“File

文档评论(0)

youshen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档