含泪复盘!项目踩坑回炉改造血泪史(附芯片PCB/原理图)
时间:2023-04-26来源:佚名
|
前段时间,帮朋友设计了个小玩意。需求比较简单,就是用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。 |









