文章目录
- 一、基础电路
- 1. 晶振电路
- 2. 稳压电路
- 3. 复位/按键电路
- 4. BOOT电路
- 5. SWD接口
- 6. 滤波电容
- 7. LED电路
- 8. 拓展引脚
- 设计总览
- 二、布局布线
- 三、制版
- 四、焊接
在大学嵌入式相关专业,有许多同学是更偏向软件上的设计,并不懂硬件上的实现,而当在面临就业时,经常会被一些面试官问到你硬件上的盲区,为在有限的时间里有高质量的提升,这里我以STM32F407的最小系统设计为例展开详述,从画PCB到下单制版,然后拿到手焊接,烧程序验证,完整流程如下:
一、基础电路
这里我的开发环境是嘉立创EDA
在画PCB时,你首先需要知道都要画些什么东西,整个框架是啥样的,正所谓先把东西拿到手,再来分析。
1. 晶振电路
用于提供稳定的时钟信号,驱动微控制器的运行、数据传输和外设控制。
一般选择32.768khz的晶振用于提供内部时钟,8Mhz用于提供外部时钟,打开嘉立创EDA,在工程文件的左下方“库”中直接搜索你的需求即可:
其中我这里表示选用32.768KHz的无源晶振,封装是3215,表示器件大小 方便布局焊接。
在晶振电路中,通常并联两个电容,有助于提高晶振电路的稳定性、抗干扰能力
设计如下:
2. 稳压电路
在脱机跑的时候,需要给板子供电,而板子的对电压相对比较严谨,过高和过低都会给板子造成损害,至此这里需要用到稳压芯片,用于提供稳定可靠的电源信号,常见的稳压芯片有AMS1117-3.3、5v,在芯片两端常并联两组大小电容用于电源滤波和提供稳定输出信号。
设计如下:
3. 复位/按键电路
复位电路是将系统恢复到可控的初始状态,按键则是可以通过设计信号的触发去实现自定义操作
复位/按键通常设计是并联一个电容再上拉一个电阻,提供稳定的按键信号,并消除抖动干扰,在空闲状态下保持高电平。
设计如下:
4. BOOT电路
boot电路用于启动模式选择,boot0和boot1的不同状态下表示3中不同的启动方式,如果想方便布线,可直接将boot0和boot1拉低,表示Flash启动,在实际开发下,大多也是这样,在下面示例中可通过跳线帽去更改boot状态。
我的设计如下:
5. SWD接口
用于调试和烧入程序,直接将芯片的引脚引出来即可
设计如下:
6. 滤波电容
吸收电源中的瞬态噪声、纹波和快速变化的电压波动,提供相对稳定的电源电压给后续的电路和设备。
简单来说 芯片有多少个VDD/VCC, 就选择多少个104电容用于滤波,例如我这里选用的芯片有12个VDD/VCC,也就是串联12组电容放置VCC和GND之间。
设计如下:
7. LED电路
这里可以用于检测电源,也可以通过检测led灯闪烁检测程序执行情况,直接串联一个电阻即可。
设计如下:
8. 拓展引脚
用于引出芯片其他闲置 后续开发的引脚
设计总览
二、布局布线
在画完PCB之后,更重要的是布局布线,这点也更是耗时,首先你需要定好布局,然后再布线,布局决定布线。
大多数情况下 我们习惯将主控芯片放置中央位置,然后滤波电容围着芯片四周,晶振也放置近处,因为放置较远有信号干扰,晶振就有可能起不来,其次是拓展引脚放置两边靠中位置,SWD放置边沿方便烧录调试,稳压电路可放置电源附近,方便测试,其他就没有什么讲究,自己随意放置即可,当然 也是在方便布线的前提下。
由于在写这边博文前 我已经画好了,由于时间问题我这里就不再重新演示了,有问题可通过下方公众号随时联系我。
实际制版后效果如下(颜色可选):
三、制版
可在嘉立创EDA中直接下单,当然只要板尺寸在10*10范围每个月都可以享用两次免费打板,具体怎么领取我就不演示了,网上自查
下单页面如下,选择推荐的默认免费通道即可
四、焊接
在拿到板子后,对着PCB去焊接元器件
焊好之后如下:
后面再用万用表对线路进行检测,比如导通、极性、线序等。
基本没问题之后,就可以上电啦