USB2514集线器调试总结
一般的MCU不会留有太多的USB口,但在实际项目中又会遇到需要很多个USB口的情况,这时就会用到USB集线器来扩展USB口了。USB2514这个芯片是我在工作中用的比较多的,但是问题很多,从来没有调稳定过,前几天抽空把这个芯片调了一下,终于调稳定了。现在就把我调试过程写下来。
首先在网上抄了一个电路,原理如下:

图中所有的红色标号全部用导线引出,下游的USB端口接了4个USB座。所有电路手工焊接,焊完后插上电脑一点反应都没有,测量各电压都正常,但是晶振没起振。网上搜了一下有人说这个芯片必须下级要连设备晶振才会起振,于是我插了一个U盘,但是晶振还是没有起振。
之后将芯片各脚重新过了一遍锡后将晶振旁边的18pf电容换成了22pf,插上电后提示“无法识别的USB设备”。
网上搜资料,大多数人说是焊接问题导致的,于是我又把芯片各引脚过了一遍锡,插上电脑提示“USB端口上的电涌”,“未知USB设备所需电量超出该端口所能提供的电量”,如图:

手摸芯片明显发热,我本以为还是用不了,结果用示波器量一下晶振竟然起振了(此时下级USB没有连接设备),插上一个U盘也识别到了,而且还能正常使用,不过接出的4个USB口有一个不能用,于是我又把各引脚过了一遍锡,现象和之前还是一样的。后来发现其实并不是每次都能识别到设备,测量电流在200mA左右。
虽然最后问题都没有解决,但我觉得就是焊接导致的。这版电路没有什么保护,我不想在上面耗费太多时间,因此直接换了另一版电路,如下:


第二版比第一版多了很多东西,有些地方还有差异,具体来看一下这些差异:
第一处是22,24,25这三个引脚,第一版是接了100K电阻到地,第二版直接悬空了,查看资料:

虽然没有完全理解是什么意思,但是发现这几个引脚还挺重要的,资料上并没找到这几个引脚悬空是什么状态,为了保险起见还是应该下拉到地。
第二处是第一版的27号引脚接的是3.3V,而第二版27号引脚接的是5V,查看资料:

必须连3.3V !!!
第二版原理图中新增的部分第一处是多了一个TPS2069,这是一个电流驱动芯片,输入电压4.5V~5.5V,输出电流1.5A。所以这里不知道接这个东西有什么意义。
另外加入了两个SRV05-4,这是USB接口常用的静电保护器件。
将有问题的地方修改后原理如下:


图中蓝色的圆都是焊盘。根据原理图设计PCB,如下:

拿到样板后进行焊接,第一个要焊的器件就是USB2514。根据上次调试的经验,这个芯片的焊接一定一定不能出问题。我的方法是先在USB2514底下的焊盘上放一些锡膏,然后将芯片压上去,注意锡膏不能放太多,不然压芯片的时候会把锡膏挤出来。调整好位置后将PCB板架高,用热风枪吹PCB的背面,感觉锡膏熔了就OK了。之后再用烙铁把引脚焊好。一点助焊剂都不要用。之后再焊接剩下的器件。我当时因为手头没有SRV05-4这个件,因此就没焊。
然后将集线器贴在一块开发板上(只是借助了开发板上的焊盘及公共的地线,仅仅是为了方便焊接而已)。再连一个5V转3.3V的芯片给USB2514供电。4个下级USB插座也焊上,连上USB插头,这样理论上来说它就和我们平时用的USB集线器一样了。焊接好后如下:

插上电脑后直接就识别成了一个通用USB集线器:

不接设备时测量电流只有6.5mA,4个USB口全部能正常使用。而且不接设备时测量晶振是没有起振的,接上设备时测量晶振才起振,附上示波器测量图:

最后总结一下
连接电脑后没反应;连接电脑后提示USB端口上的电涌;下级没有连接设备但是晶振起振了,存在用不了的下级USB口;这些都是焊接导致的。
USB2514是3.3V供电,下级不接设备时晶振是不起振的。
USB2514集线器调试总结的更多相关文章
- 调试技巧--Windows端口号是否被占用
调试技巧--Windows端口号是否被占用 一.端口概念 10.0.0.0~10.255.255.255,172.16.0.0~172.16.255.255, 192.168.0.0~192.168. ...
- Linux网络应用编程之集线器(Packet Tracer仿真)
Packet Tracer入门 一,集线器概况 对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上. 工作于OSI(开放式系统互联参考模型)的最底层(物理层) ...
- 钉钉开发笔记(6)使用Google浏览器做真机页面调试
注: 参考文献:https://developers.google.com/web/ 部分字段为翻译文献,水平有限,如有错误敬请指正 步骤1: 从Windows,Mac或Linux计算机远程调试And ...
- android:如何通过chrome远程调试APP中的webView的h5代码
今天出现一个问题,在老板的Mate9 Pro上,我们APP的所有H5页面都是一片空白,但是在其他手机上都是好的,那么我们就怀疑是h5报错了,但是到底是什么错,无法得知,所以就想要可以像在pc的chro ...
- 混合式应用真机调试(Android Studio + Chrome)
如何在chrome上调试混合式APP https://developers.google.com/web/tools/chrome-devtools/remote-debugging/ Get Sta ...
- [转] 在安卓设备上使用 Chrome 远程调试功能
你的网页内容在移动设备上的体验可能和电脑上完全不同.Chrome DevTools 提供了远程调试功能,这让你可以在安卓设备上实时调试开发的内容. 安卓远程调试支持: 在浏览器选项卡中调试网站. 在原 ...
- 钉钉开发笔记(六)使用Google浏览器做真机页面调试
注: 参考文献:https://developers.google.com/web/ 部分字段为翻译文献,水平有限,如有错误敬请指正 步骤1: 从Windows,Mac或Linux计算机远程调试And ...
- 使用Google浏览器做真机页面调试
步骤1: 从Windows,Mac或Linux计算机远程调试Android设备上的实时内容.本教程将教您如何: 设置您的Android设备进行远程调试,并从开发机器中发现它.从您的开发机器检查和调试A ...
- 远程调试 Android 设备使用入门(谷歌翻译版)
移动前端调试方案(Android + Chrome 实现远程调试) 目录 要求 第 1 步:发现您的 Android 设备 第 2 步:从您的开发计算机调试 Android 设备上的内容. 更多操作: ...
随机推荐
- php 文件上传错误
假设文件上传字段的名称img,则: $_FILES['img']['error']有以下几种类型 1.UPLOAD_ERR_OK 其值为 0,没有错误发生,文件上传成功. 2.UPLOAD_ERR_I ...
- 最火的分布式调度系统 XXL-JOB 安装和简单使用
唉,在谈文章之前先说一下自己的情况.原计划是在上周六写完这篇文章的,然而周六的时候打开电脑的,按照平常"惯例",先补一些 "黑色五叶草"/"进巨&qu ...
- 用Python实现童年小游戏贪吃蛇
贪吃蛇作为一款经典小游戏,早在 1976 年就面世了,我最早接触它还是在家长的诺基亚手机中.
- SQL 查询增加语句
Select 'Insert into Auth_Key Values('''+convert(nvarchar(50),NEWID())+''','''+AuthKey+''',''' +Modul ...
- 类似818tu.c微信小说分销系统设计之多公众号网页授权自动登录源码分享
/** 转载请保留原地址以及版权声明,请勿恶意修改 * 作者:杨浩瑞 QQ:1420213383 独立博客:http://www.yxxrui.cn * [后台]http://xiaoshuo. ...
- ASP.Net中的TreeView控件中对节点的上移和下移操作
Web中的TreeView中的没有PreNode和NextNode属性. 但它的集合属性中有一个IndexOf属性,从而能够找到它的前一个节点知后一个节点. TreeView中要么只有一个根节点:要么 ...
- 1. 内存分区模型以及new、delete操作
C++程序在执行时,将内存大方向分为 4 个区域,不同区域存放的数据,赋予不同的生命周期,给我们更大的灵活编程 代码区:存放函数二进制代码,由操作系统进行管理 全局区:存放全局变量和静态数据以及常量, ...
- [C#] 使用 Excel 和 Math.Net 进行曲线拟合和数据预测
以前在工作中遇到了一个数据错误的问题,顺便写下 用 Math.Net 解决的思路. 1. 错误的数据 上图是同一组探测器在同一天采集到的 19 次数据,总体来说重复性不错,但很明显最后 8 个探测器出 ...
- C#扫盲篇(三):Action和Func委托--实话实说
一.基础定义 老王想找老张的老婆出去耍,但是一看,老张还在厨房煮饭.于是老王就对老张隔壁的淑芬说:"等下老张吃完饭出去喝茶,你就把前门晒的苞谷收了,老张从左门出,你就收右边的苞谷,我就知道从 ...
- C#处理医学图像(一):基于Hessian矩阵的血管肺纹理骨骼增强对比
在医院实际环境中,经常遇到有问题的患者,对于一些特殊的场景,比如骨折,肺结节,心脑血管问题 需要图像对比增强来更为清晰的显示病灶助于医生确诊,先看效果: 肺纹理增强: 肺结节增强: 血管对比增强: 骨 ...