查看: 1227|回复: 3

[其他] 每天解决一个问题8:USB基础之四—— USB设备的插入检测机制

[复制链接]

该用户从未签到

61

主题

965

帖子

0

金牌会员

Rank: 6Rank: 6

积分
2394
最后登录
1970-1-1
发表于 2015-9-9 09:15:54 | 显示全部楼层 |阅读模式

        USB主机是如何检测到设备的插入的呢?首先,在USB集线器的每个下游端口的D+和D-上,分别接了一个15K欧姆的下拉电阻到地。这样,在集线器的端口悬空时,就被这两个下拉电阻拉到了低电平。而在USB设备端,在D+或者D-上接了1.5K欧姆上拉电阻。对于全速和高速设备,上拉电阻是接在D+上;而低速设备则是上拉电阻接在D-上。这样,当设备插入到集线器时,由1.5K的上拉电阻和15K的下拉电阻分压,结果就将差分数据线中的一条拉高了。集线器检测到这个状态后,它就报告给USB主控制器(或者通过它上一层的集线器报告给USB主控制器),这样就检测到设备的插入了。USB高速设备先是被识别为全速设备,然后通过HOST和DEVICE两者之间的确认,再切换到高速模式的。在高速模式下,是电流传输模式,这时将D+上的上拉电阻断开。
    一个简单的实验:只用一个上拉电阻接在USB的+5V和D+或者D-上,WINDOWS也会提示发现新硬件,但是无法找到驱动程序。这时去设备管理器里面看,有显示未知USB设备,并且其VID和PID为0。根据这个,我们可以简单的判断设备是否枚举成功。如下图所示,分别是枚举不成功和枚举成功的图。

—— USB设备的插入检测机制[图]" action-data="http%3A%2F%2Fwww.baiheee.com%2FDocuments%2F081126%2F081126111838%2Fpic2.gif" action-type="show-slide" style="border: 0px; list-style: none;">


我知道答案 目前已有3人回答
回复

使用道具 举报

该用户从未签到

61

主题

965

帖子

0

金牌会员

Rank: 6Rank: 6

积分
2394
最后登录
1970-1-1
 楼主| 发表于 2015-9-9 09:17:40 | 显示全部楼层
是USB基础之五了,没改过来
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

42

帖子

0

注册会员

Rank: 2

积分
133
最后登录
2016-8-23
发表于 2015-9-9 09:59:23 | 显示全部楼层
这个不错,USB开发还没学习呢。先MARK
回复 支持 反对

使用道具 举报

该用户从未签到

61

主题

965

帖子

0

金牌会员

Rank: 6Rank: 6

积分
2394
最后登录
1970-1-1
 楼主| 发表于 2015-9-9 10:47:57 | 显示全部楼层
USB弄明白了也就和串口一样。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-20 22:19 , Processed in 0.094257 second(s), 24 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表