微控制器USB学习(三)

废话在前面

我觉得吧,学USB单单只靠理论知识是不够的,然后我在某宝上也看到各种各样的USB学习套件,但是感觉都花里胡哨,然后我选了一个比较简约的,参考上面的外设,自己做了一个对应的USB学习板卡,加上立创的5块钱打样(真香)!

先看看电路

MCU

我用的是STM32F103RC,用它是因为我正好有两片这个个芯片在手上,就不用买了(某宝看了一下价格其实还好)。使用的下载方式是SWD下载,接口用的是野火的下载器的接口,所以就直接这样画了。
在这里插入图片描述

电源

我的电源用的是USB供电,上面有一个电源开关控制。加入一个自恢复保险丝和一个肖特基二极管,可以形成防反接作用。这上面并不是所有电阻都焊上,有些地方是用来测试用的。稳压芯片选择AMS1117-3.3,选他还是因为我手上有,而且还不少。。。。这里可以看到有两个USB接口,其实在用的时候只需要用一个。
在这里插入图片描述

USB接口

上图可以看到有两个USB接口,实际是只需要用一个。一个用的是PDIUSBDI这个USB芯片控制,用来代替MCU上的USB,另一个是直接接MCU上的USB接口,这样就可以在学习完USB芯片控制的类型之后,尝试使用STM32片上的USB接口来尝试了,也方便学习者使用。
在这里插入图片描述

其它

剩下就是LED灯和KEY了,这些学过STM32或者51的都应该懂的电路,就没啥好说的了。

再看看PCB

USB的差分

看过前面的都知道,USB的数据是通过差分信号(差分0和差分1)来传输的,并且需要抗干扰,所以在绘制USB线的时候,需要走差分线。

数据线等长

这里我个人觉得其实做不做等长处理都没所谓,因为这只是一个8位的数据线,而且线不会很长,也没有说要有一定的阻抗要求,但是我个人有点点强迫症,总感觉有刁民想害朕,所以我还是给它做了等长处理,做等长的时候由于没有时钟线的参考,所以直接用DATA0作为线长参考。

在这里插入图片描述

然后就是导出Gerber

gerber导出的时候,用的mm单位,然后也就只保留了几个用到的层,就直接送去嘉立创打板。

然后无尽的等待…

猜你喜欢

转载自blog.csdn.net/qq_42312125/article/details/105372277