发新帖我要提问
12
返回列表
打印

加上上拉后解决无法识别的设备

[复制链接]
楼主: yufe
手机看帖
扫描二维码
随时随地手机跟帖
21
wangzsa| | 2012-1-2 19:01 | 只看该作者 回帖奖励 |倒序浏览
stm32 在D+ 上加了一个三极管 上拉,根据芯片不同,当然有所不同,看手册吧,关于USB的上下拉电阻,不是随便接个任意阻值的电阻就ok了。

使用特权

评论回复
22
zhanglli| | 2012-1-2 19:03 | 只看该作者
当你的USB为主设备的时候,D+、D-上分别接一个15K的下拉电阻,这样可以使得在没有设备插入的时候,D+、D-上始终保持低电平;当为从设备接口时,可以通过在上拉电阻来设置不同的传输速率,当D+接一个1.5K上拉电阻,可以工作在高速率模式如12MBPs,当D-接1.5K上拉电阻,工作在低速率模式,如1.5MPBs。

使用特权

评论回复
23
zhanglli| | 2012-1-2 19:06 | 只看该作者
主USB自动识别从设备为高速还是低速就靠上拉电阻在D+还是D-上区别,电阻阻值的不规范会影响usb自动识别分配资源,出现不能发现硬件或使用到一般硬件发现失败等现象,所以不要随便上下拉电阻,先规范USB的硬件接口电路

使用特权

评论回复
24
lium| | 2012-1-2 19:07 | 只看该作者
芯片内部的,一般都是弱上拉。而且由于工艺偏差,其阻值很离散的。因此,片外的 1.5K 上拉是必要的。

使用特权

评论回复
25
yufe|  楼主 | 2012-1-2 19:09 | 只看该作者
多余地说一句,楼上关于高速的定义不严谨。12Mbps 是全速。严格意义上,高速是指 480Mbps。

使用特权

评论回复
26
hanwe| | 2012-1-2 19:13 | 只看该作者
USB外设连接时,低速外设D-上有1.5K上拉电阻,速外全设D+上有1.5K上拉电阻,高速外设先用1.5K上拉电阻连成全速外设进行配置,正常工作后断开该1.5K上拉电阻(芯片内部有开关控制)。

如果识别不了外设,一定是外设的差分电平不符合USB规范。解决方法还是应该从工艺开始。每种USB外设芯片都有PCB制图要求,应该严格遵循。

如果一定用上拉电阻才能识别,上拉电阻也有些讲究,拉狠了,可能会把高速外被识别成全速的。还是不建议这样搞。

使用特权

评论回复
27
yufe|  楼主 | 2012-1-2 19:16 | 只看该作者
多谢各位大侠,找到原因了

使用特权

评论回复
28
wesleyho| | 2012-1-2 22:31 | 只看该作者
可能是D+的上升沿不够高导致不能正常检测,为此外加上拉OK.

使用特权

评论回复
29
alnjby| | 2012-1-3 11:37 | 只看该作者
接一个上啦电阻是为了在USB插入时产生一个上升沿从而判断USB是否插入。









耳鼻喉医院
武警南京医院

使用特权

评论回复
30
maxwellpin| | 2012-1-3 12:56 | 只看该作者
什么问题呀?

使用特权

评论回复
31
maxwellpin| | 2012-1-3 12:57 | 只看该作者
多谢各位大侠,找到原因了
yufe 发表于 2012-1-2 19:16

什么问题啊?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则