电脑主机的两个 USB 接口用一根数据线连起来

链接:https://www.zhihu.com/question/336104107/answer/795676460

USB Host端的DP和DM是有挂15K的下拉电阻,但回答中图配错了。

这个图实际上主要展示了Device端的电气特性,其中Rs是几十欧的小电阻,用来做阻抗匹配的。

正确的配图应该是这张:

图示分别为低速设备和全/高速设备的电气连接

“USB口靠不同的电阻来识别设备速度”这句话其实不严谨,电阻是相同的1.5k,一般上拉到3.3V(范围3.0 V - 3.6 V),USB Host端靠识别不同的信号线是否上拉到3.3v来区分Device是低速设备还是全/高速设备,从图中也能看出来,当DP上拉1.5K时为全/高速设备,当DM上拉1.5K时为低速设备。(其中全速设备FS为12Mbps,高速设备HS为480Mbps,全速设备和高速设备都是DP上拉,通过后续的通信过程确定是全速还是高速)

然后再来看题目,VCC、GND的各种混联情况其它答案都分析了,VCC-GND短路的情况也说了,新的主板有自恢复保险(这个我没有考究过)。VCC-VCC,GND-GND这个大概是没问题的,同一个电脑这些应该是等效电位。

比较麻烦的就是对于差分信号线DP和DM有没有影响,首先有一点是这跟DP、DM挂15k下拉没有关系,这个有自己用单片机做过简单信号处理的都知道,那么VCC、GND接到DP和DM上到底会不会有影响?

GND接入是安全的,将信号线拉低不会产生什么影响,而VCC接入的话就涉及到CMOS器件的一个特性:

CMOS结构内部寄生有可控硅结构,当输入或输入管脚高于VCC一定值(比如一些芯片是0.7V)时,电流足够大的话,可能引起 闩锁效应,导致 芯片的烧毁。

USB的VCC即Vbus通常略大于5V(5.1V左右?),而Host端的主控制器VCC是不是也是这个电压也说不准,但是一般情况下不会超过0.7v这个门限值,所以一般也不会发生什么。但是不建议这么去做,有较低的风险。

所以两个USB口用一根数据线连起来,除了短路的情况,啥也不会发生,但是如果将VCC接到信号线上了,可能会拉高信号而让某一Host端误认为接入了低速或者全/高速设备,电脑也许会提示未找到合适的驱动程序,这是因为电脑产生了获取设备描述符的操作,而设备没有响应(实际上没有设备)。如果感兴趣的话,你可以把一根USB线剪了,找出VCC和DP,跨接一个10K电阻,再插入电脑,应该会产生上述现象,但是不保证会不会有其它意外情况发生。


关于闩锁效应,USB接口上有专门的设计为了避免它

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值