搜索
 找回密码
 立即注册

简单一步 , 微信登陆

知道HDMI、CA的插拔检测,但你知道USB是如何实现热插拔的?

作者:huhaiqiang | 时间:2016-6-15 18:57:11 | 阅读:4370| 只看该作者
对于HDMI、CA等接口,有一根专门的信号线用来告知该接口是否连接,在HDMI线插入/CA卡插入的时候,该信号线要么从高变低,要么从低变高,从而通知CPU对相应模块进行通讯。但USB接口只有一组差分线+电源+地线,并没有类似的一个专门用于通知CPU的喜好线,那么它是如何实现热插拔的呢?

其实原理也是差不多的,USB端口(主设备host)的D+、D-数据线上有15K左右的“高值”下拉电阻,从而使USB的数据线悬空电平为低。USB设备(外设,例如U盘)的D+(高速High Speed或全速Full Speed)或D-(低速Low Speed)上具有1.5K左右的“低值”上拉电阻,而USB端口的VCC和GND引出线长于数据线,这保证了USB设备插入后,,USB外设先上电,并将对应的数据线拉高,当数据线接触后,主设备通过检测到的高电平在D+还是D-上确定设备的插入及对应的速率,这样就实现了热插拔,检测到设备插入后再通过软件上的一系列什么枚举啊什么的来建立通讯(楼主搞硬件的,软件的东东等大拿来补充),最后它俩就绑在一起了~~~

收藏
收藏0
分享
分享
点赞
点赞0
反对
反对0
回复

使用道具 举报

大神点评1

沙发#
huhaiqiang 发表于:2016-6-15 18:57:38
好贴自己先顶一个
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册
手机版