USB的插入检测机制

USB主机是如何检测到USB的插入的呢?这要从USB集线器接收端说起。

这里我们用单片机和电脑PC分别作从机设备和主机举例子。

那么电脑PC的USB端口的D+和D-上面会分别接一个15kΩ的下拉电阻。这样的话,当电脑PC的端口悬空时(也就是没有设备插入时),D+和D-一直处于低电平状态。

但是在单片机上,D+或者D-会接1.5kΩ的上拉电阻到3.3V上,具体1.5kΩ是接在D+还是D-上面,是由设备的速度决定的。对于全速设备和高速设备,上拉电阻是接在D+上面的,而低速设备是接在D-上面的。在这里我们加上设备是全速设备,也就是这个1.5kΩ的上拉电阻是在D+上面的。

当我们的单片机和电脑PC通过USB线连接时,电脑PC的D+上面的电平就会因为单片机的插入而拉高,电脑PC端口检测到这个状态就会报告为USB主控制器,这样就检测到了USB设备的插入。然后会根据检测被拉高的数据线是D+还是D-来判断插入的是什么速度类型的设备。USB高速设备先是被识别为全速设备,然后通过集线器和设备两者的确认,再切换到高速模式下。再高速模式下,是电流传输模式,这时要将D+上的上拉电阻断开。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值