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

为什么还要外接

[复制链接]
楼主: supernan
手机看帖
扫描二维码
随时随地手机跟帖
21
pangb| | 2018-10-20 13:44 | 只看该作者 回帖奖励 |倒序浏览
USB一般走差分线 阻抗90欧姆 如果需要精确走线要与厂家联系 确定走线宽度。因为阻抗跟材质和厚度有关。

使用特权

评论回复
22
ousj| | 2018-10-20 13:48 | 只看该作者
芯片内部的电阻能够上拉1.5K?这个是不是大了点?芯片内部的电阻都是晶体管搭的。

使用特权

评论回复
23
xxmmi| | 2018-10-20 13:51 | 只看该作者
stm32 在D+ 上加了一个三极管 上拉,根据芯片不同,当然有所不同,看手册吧,关于USB的上下拉电阻,不是随便接个任意阻值的电阻就ok了。

使用特权

评论回复
24
kangzj| | 2018-10-20 13:54 | 只看该作者

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

使用特权

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

使用特权

评论回复
26
stly| | 2018-10-20 16:03 | 只看该作者
芯片内部的,一般都是弱上拉。而且由于工艺偏差,其阻值很离散的。因此,片外的 1.5K 上拉是必要的。

使用特权

评论回复
27
supernan|  楼主 | 2018-10-20 16:06 | 只看该作者
多余地说一句,楼上关于高速的定义不严谨。12Mbps 是全速。严格意义上,高速是指 480Mbps。

使用特权

评论回复
28
pengf| | 2018-10-20 16:09 | 只看该作者

USB外设连接时,低速外设D-上有1.5K上拉电阻,速外全设D+上有1.5K上拉电阻,高速外设先用1.5K上拉电阻连成全速外设进行配置,正常工作后断开该1.5K上拉电阻(芯片内部有开关控制)。

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

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

使用特权

评论回复
29
xxrs| | 2018-10-20 16:12 | 只看该作者
可能是D+的上升沿不够高导致不能正常检测,为此外加上拉OK.

使用特权

评论回复
30
supernan|  楼主 | 2018-10-20 16:12 | 只看该作者
搞定了,呵呵,犯了低级错误……结贴啦,多谢各位

使用特权

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

本版积分规则