前段時間,幫朋友設計了個小玩意。需求比較簡單,就是用STM32模擬讀卡器,通過TF卡讀寫一些文件,然后再有一些別的功能就可以了。
當時我覺得,這個不難啊,之前做過類似的東西。如果你看過我之前寫的關于STM32的USB的那幾篇文章,復雜了不敢說,鼠標、鍵盤、讀卡器這些還是玩過的。
對成本不算太敏感,于是翻了翻手里還有什么庫存,選了個STM32F4的芯片,USB選用芯片上的USB全速2.0接口,SDIO接口驅動TF卡,再加上其它的一些外設。畫板子加焊接,加調程序,業余時間搞的,兩周不到弄完了。
USB寫入的時候,速度能到800KB左右。朋友說了,操作的都是幾十KB的小文件,所以我感覺夠了。
于是寄過去后,安心摸魚…
哪知道,朋友那邊收到后測了一下說不好用!!!
需求沒有溝通清楚
電話溝通一番,終于搞清楚了。他之前說文件大小只有幾十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Ω的阻抗匹配。祭出我的工具:華秋DFM!
![pYYBAGPZ3fWAKtLRAAC-N4Aw_2E741.png](https://file.elecfans.com/web2/M00/8C/83/pYYBAGPZ3fWAKtLRAAC-N4Aw_2E741.png)
找到工具里的阻抗計算,打開,輸入線寬與間距,算出阻抗:
![poYBAGPZ3iuAXaBAAAMSf4pmaW0768.png](https://file.elecfans.com/web2/M00/8B/FE/poYBAGPZ3iuAXaBAAAMSf4pmaW0768.png)
再來一遍:導入PCB、布局、布線、鋪銅、調整絲印,因為相比上一次做了一些改動,所以盡量用華秋DFM工具檢查一遍,避免出現一些問題。
![pYYBAGPZ3mKACpGxAAGo-LbRnLA603.png](https://file.elecfans.com/web2/M00/8C/83/pYYBAGPZ3mKACpGxAAGo-LbRnLA603.png)
導入GERBER文件后,直接“一鍵DFM分析”,還是比較省事的,綜合評分92,湊合吧。有警告的那幾項挨個看一下,確認沒問題,就可以確認打板…
等下,他們又新添了個小工具:字符上焊盤分析。有點意思,試一下…還真有點小問題:
![pYYBAGPZ3omARXa1AAChTra7zBw134.png](https://file.elecfans.com/web2/M00/8C/83/pYYBAGPZ3omARXa1AAChTra7zBw134.png)
改一下,發出制板。等待的這幾天,調整了下程序。兩個地方,一個是MSC_MEDIA_PACKET,默認是512,改大一些,另外就是堆棧,也改大一些,否則速度上不去。
![pYYBAGPZ3riATRyaAACSmJjjnOI687.png](https://file.elecfans.com/web2/M00/8C/84/pYYBAGPZ3riATRyaAACSmJjjnOI687.png)
項目干貨資料下載
最后,因為涉及到朋友的利益,工程源文件就不分享了,分享一個USB3300的模塊的原理圖和PCB,以及檢測工具的下載鏈接。
華秋DFM和AD、阿貍狗一樣,也是電腦端使用的哈。
下載地址(請復制到電腦端瀏覽器下載):
https://dfm.elecfans.com/up?loads/software/promoter/hqdfm_fsyzlh.zip
其他的資料已經放在華秋DFM客戶端的D分商城專區,下載登錄華秋DFM軟件,點擊“訂單管理” - “D分商城”就能看到。
![pYYBAGPZ3x6AYsibAAdbUsMkMCo946.png](https://file.elecfans.com/web2/M00/8C/84/pYYBAGPZ3x6AYsibAAdbUsMkMCo946.png)
-
阻抗
+關注
關注
17文章
961瀏覽量
46316 -
PCB設計
+關注
關注
394文章
4702瀏覽量
86510 -
焊盤
+關注
關注
6文章
558瀏覽量
38256
發布評論請先 登錄
相關推薦
液顯ID讀卡器C#小程序開發
![液顯ID<b class='flag-5'>讀卡器</b>C#小程序開發](https://file1.elecfans.com/web3/M00/05/85/wKgZPGeAw16AYHH-AAPCP23Pv_M129.png)
TUSB8041是否支持將USB2.0通道的數據編碼到USB3.0通道去?
二代身份證識別儀身份證閱讀器讀卡器
FPGA + USB2.0 PHY USB3300 實現高速USB2UART
請問ESP32-S3 USB HOST是否支持USB2.0?
矽力杰USB2.0接口ESD保護方案
![矽力杰<b class='flag-5'>USB2.0</b>接口ESD保護方案](https://file.elecfans.com/web2/M00/44/F1/poYBAGKIQICAEGYpAAA2Yp6YtLw763.jpg)
源碼系列:基于 FPGA 的 USB2.0 設計
stm32f302在調試USB的時候發現USB只支持USB2.0的高速設備,為什么?
![](https://file1.elecfans.com/web2/M00/DB/3E/wKgZomYrUIWATP9DAAJ1L42KCrM570.png)
評論