[USB接口] 为什么只有USB主机驱动Vbus变为高电平后才能上拉D+或D-。

[复制链接]
4426|5
 楼主| xmuhwei 发表于 2014-12-24 13:42 | 显示全部楼层 |阅读模式
自供电设备里如果没有这么做,会出现什么情况?
zjwyczj 发表于 2014-12-24 15:43 | 显示全部楼层
usb设备一上电就拉高D+的话,主机立马检测到设备,但是mcu还没初始化好,不会去响应usb主机,所有就会发生无法识别的usb设备
 楼主| xmuhwei 发表于 2014-12-24 16:20 | 显示全部楼层
zjwyczj 发表于 2014-12-24 15:43
usb设备一上电就拉高D+的话,主机立马检测到设备,但是mcu还没初始化好,不会去响应usb主机,所有就会发生 ...

USB设备自己供电,上电初始化了然后D+一直拉高,mcu准备好了呀。有问题吗?
le062 发表于 2014-12-24 21:39 | 显示全部楼层
xmuhwei 发表于 2014-12-24 16:20
USB设备自己供电,上电初始化了然后D+一直拉高,mcu准备好了呀。有问题吗? ...

没问题的,只要你能立即响应reset事件就可以
通宵敲代码 发表于 2014-12-25 22:00 | 显示全部楼层

主要是给MCU留足预处理的时间,算是一种保护机制吧!
跟USB接口电源引脚比数据引脚长的原理一样!
xiuwen89 发表于 2014-12-26 14:11 | 显示全部楼层
zjwyczj 发表于 2014-12-24 15:43
usb设备一上电就拉高D+的话,主机立马检测到设备,但是mcu还没初始化好,不会去响应usb主机,所有就会发生 ...

这解释不对的。枚举的时候,如果USB设备没有及时响应主机,主机会等待并重试的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

92

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部