【经验干货】一个略有坎坷的USB2.0高速读卡器(文末有资料)

描述

 

前段时间,帮朋友设计了个小玩意。需求比较简单,就是用STM32模拟读卡器,通过TF卡读写一些文件,然后再有一些别的功能就可以了。

 

当时我觉得,这个不难啊,之前做过类似的东西。如果你看过我之前写的关于STM32的USB的那几篇文章,复杂了不敢说,鼠标、键盘、读卡器这些还是玩过的。

 

对成本不算太敏感,于是翻了翻手里还有什么库存,选了个STM32F4的芯片,USB选用芯片上的USB全速2.0接口,SDIO接口驱动TF卡,再加上其它的一些外设。画板子加焊接,加调程序,业余时间搞的,两周不到弄完了。

 

USB写入的时候,速度能到800KB左右。朋友说了,操作的都是几十KB的小文件,所以我感觉够了。

 

于是寄过去后,安心摸鱼…

 

哪知道,朋友那边收到后测了一下说不好用!!!

(⊙o⊙)纳尼?

 

 

需求没有沟通清楚

 

电话沟通一番,终于搞清楚了。他之前说文件大小只有几十KB,但是数量多,可能有几十个。而且这个读卡器接入的不是我们常用的电脑,是一种工业上用的机器,可以理解为特制的工控机。

 

显示器也不是常用的显示器,只能显示几个特定的界面。而读卡器接入工控机后,工控机会一次性把TF卡里的文件全都拷入机器内部的存储空间,这个时间不能太长,太常的话会被判别为读卡器故障。

 

那几十个文件的拷入时间预计有几十秒,太慢了….

 

我晕,最烦这种事前需求不说清,事后来补充的….

 

 

方案调整+第三方工具验证

 

改方案吧,USB2.0全速就不行了,要换成高速。

简单说下USB2.0支持的三种传输速度:

1、低速模式,1.5Mbps,换算成字节:187KB/S;

2、全速模式,12Mbps,换算成字节:1.5MB/S;

3、高速模式,480Mbps,换算成字节:60MB/S,实际不超过25MB/S。

 

STM32F407虽然支持高速模式,但是不能独立工作,需要外接一个高速的USB PHY芯片,这里选的是USB3300。它是美国microchip公司生产的一款高速USB PHY芯片,外设简单,价格合适,主要是资料多~~~

 

既然想要速度快,USB的差分线也要注意下,要考虑90Ω的阻抗匹配。祭出我的工具:HQDFM!

读卡器

 

找到工具里的阻抗计算,打开,输入线宽与间距,算出阻抗:

读卡器

 

再来一遍:导入PCB、布局、布线、铺铜、调整丝印,因为相比上一次做了一些改动,所以尽量用HQDFM工具检查一遍,避免出现一些问题。

读卡器

 

导入GERBER文件后,直接“一键DFM分析”,还是比较省事的,综合评分92,凑合吧。有警告的那几项挨个看一下,确认没问题,就可以确认打板…

 

等下,他们又新添了个小工具:字符上焊盘分析。

有点意思,试一下…还真有点小问题:

读卡器

 

改一下,发出制板。等待的这几天,调整了下程序。两个地方,一个是MSC_MEDIA_PACKET,默认是512,改大一些,另外就是堆栈,也改大一些,否则速度上不去。

读卡器

 

 

项目干货资料下载

 

最后,因为涉及到朋友的利益,工程源文件就不分享了,分享一个USB3300的模块的原理图和PCB,以及HQDFM工具的下载链接。

 

HQDFM和AD、阿狸狗一样,也是电脑端使用的哈。下载地址(请复制到电脑端浏览器下载):
 

https://dfm.elecfans.com/uploads/software/promoter/hqdfm_fsylt.zip

 

其他的资料已经放在华秋DFM客户端的D分商城专区,下载登录华秋DFM,在D分商城专区就能看到。

 

D分商城专区入口:

读卡器

 

在新页面的导航栏点击“我要推广”,进入D分专区:

读卡器

 

进入专区后,在页面最下方,直接点击图片去百度云盘自取(不用兑换)

读卡器

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分