片内部已经有了上拉为什么还要外接

[复制链接]
5274|30
guoyt 发表于 2013-6-25 19:59 | 显示全部楼层
外接一个上啦电阻是为了在USB插入时产生一个上升沿从而判断USB是否插入。
lium 发表于 2013-6-25 20:00 | 显示全部楼层
USB一般走差分线 阻抗90欧姆 如果需要精确走线要与厂家联系 确定走线宽度。因为阻抗跟材质和厚度有关。
wangpe 发表于 2013-6-25 20:05 | 显示全部楼层
芯片内部的电阻能够上拉1.5K?这个是不是大了点?芯片内部的电阻都是晶体管搭的。
wangzsa 发表于 2013-6-25 20:06 | 显示全部楼层
stm32 在D+ 上加了一个三极管 上拉,根据芯片不同,当然有所不同,看手册吧,关于USB的上下拉电阻,不是随便接个任意阻值的电阻就ok了。
zhanglli 发表于 2013-6-25 20:08 | 显示全部楼层
当你的USB为主设备的时候,D+、D-上分别接一个15K的下拉电阻,这样可以使得在没有设备插入的时候,D+、D-上始终保持低电平;当为从设备接口时,可以通过在上拉电阻来设置不同的传输速率,当D+接一个1.5K上拉电阻,可以工作在高速率模式如12MBPs,当D-接1.5K上拉电阻,工作在低速率模式,如1.5MPBs。
zhanglli 发表于 2013-6-25 20:08 | 显示全部楼层
主USB自动识别从设备为高速还是低速就靠上拉电阻在D+还是D-上区别,电阻阻值的不规范会影响usb自动识别分配资源,出现不能发现硬件或使用到一般硬件发现失败等现象,所以不要随便上下拉电阻,先规范USB的硬件接口电路
lium 发表于 2013-6-25 20:10 | 显示全部楼层
芯片内部的,一般都是弱上拉。而且由于工艺偏差,其阻值很离散的。因此,片外的 1.5K 上拉是必要的。
 楼主| yufe 发表于 2013-6-25 20:11 | 显示全部楼层
多余地说一句,楼上关于高速的定义不严谨。12Mbps 是全速。严格意义上,高速是指 480Mbps。
hanwe 发表于 2013-6-25 20:12 | 显示全部楼层
USB外设连接时,低速外设D-上有1.5K上拉电阻,速外全设D+上有1.5K上拉电阻,高速外设先用1.5K上拉电阻连成全速外设进行配置,正常工作后断开该1.5K上拉电阻(芯片内部有开关控制)。

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

如果一定用上拉电阻才能识别,上拉电阻也有些讲究,拉狠了,可能会把高速外被识别成全速的。还是不建议这样搞。
lium 发表于 2013-6-25 20:14 | 显示全部楼层
可能是D+的上升沿不够高导致不能正常检测,为此外加上拉OK.
 楼主| yufe 发表于 2013-6-25 20:15 | 显示全部楼层
多谢各位大侠,找到原因了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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