嵌入式硬件设计实例:基于STM32的流水灯原理图和PCB设计 |
您所在的位置:网站首页 › 数码管与stm32连接的原理图 › 嵌入式硬件设计实例:基于STM32的流水灯原理图和PCB设计 |
最近本来在忙别的事,大约忙到五一以后吧,没有时间研究一些深入的知识。本来想停更的,但是刚刚申请到博客专家,想想还是得更新点文章。这里就把一些以前我做过的一些简单的硬件设计拿来出来复习一下。 本篇文章就来介绍一下,一个简单的STM32流水灯的开发板的原理图和PCB的设计流程和注意事项。 文章目录 1 目标和需求2 原理图2.1 电源部分2.1.1 电源座子2.1.2 Buck电路2.1.2.1 原理2.1.2.2 Buck电路设计 2.2 STM32最小系统2.3 流水灯 3 PCB设计3.1 封装选择3.2 电源滤波考虑3.3 Buck电路布局和布线3.4 LED部分设计3.5 3D演示 4 总结 1 目标和需求这篇文章就来实现一个简单的流水灯的硬件设计。 (1)主控芯片:STM32F103 由于只需要实现一个流水灯,只要有GPIO就可以实现了,这里我们选择STM32的芯片,具体哪一个型号,我建议去看看哪个型号的芯片便宜,就选哪个。 (2)电路组成 调试接口:4线SWD晶振Buck降压电路:提供3.3V电压给主控8个LED灯电路组成实际上就是STM32最小系统,再加上8个LED灯。 2 原理图 2.1 电源部分一个硬件电路板最重要的就是电源部分,我们来分析一下需要什么: 2.1.1 电源座子这里我有一个12V的适配器: 所以对于原理图库来说,设计如下: 对于STM32芯片来说,系统的电压是3.3V的,所以需要一个降压电路。简单地介绍一下Buck电路。 2.1.2.1 原理Buck电路是一种常见的降压型(step-down)直流-直流(DC-DC)转换器电路。它的主要作用是将一个较高的直流电压转换为一个较低的直流电压。Buck电路的工作原理基于电感和开关元件的组合,通过周期性地打开和关闭电路中的开关元件来实现电压的降低。 假设输入为15V,要降压为5V,中间是一个开关,输出连接一个电容。控制开关,闭合开关,将电容充电到6V时断开,到4V时再闭合开关。但刚开始电容相当于短路,此时电流非常大,会损坏电容,所以要在前面再串一个电阻。但电阻会消耗功率,所以不太合适。现在又不希望刚开始电容电流无限大,又不希望前面消耗功率。而电感可以阻碍电流的增大,它是BUCK电路中最核心的器件。 开关断开时,由于15V还存在着,电感产生的感生电动势会到开关左端,从而产生电弧。所以要给电感一个回路。 首先就是选择一个Buck降压芯片了,选型就不介绍了,这里我推荐使用MP2359。打开MP2359的手册,首先来看Package reference: 接下来我们再来看一下手册中给的典型设计: 现在我们就来参考这个设计图来设计自己的原理图: 至此我们就得到了3.3V的电压。 2.2 STM32最小系统这里我选择的型号为STM32F103VET6,同样地根据官方的数据手册画出原理图,我这里就分为两个部分了,一个为系统电源部分,一个为其它的引脚部分。 由于本例中没有用到特别多片上外设,其它的引脚就简单地都放在一起了,如果用上了,建议继续将引脚归类和细分,如SPI放一起,I2C放一起等;这样做不仅是为了美观,也是为了减少错误。电源: 实际上在我们这个这么简单的应用中,完全可以不接任何晶振,直接使用内部的晶振就可以了。 对于复位引脚NRST的电容,主要是防止由于开关或其他外部因素引起的短时噪声或干扰对NRST引脚的误触发。 如果接了一个按键用于复位的话,那电容还可以调整复位脉冲的上升时间,防止快速或突发的电平变化触发不必要的复位。 2.3 流水灯如下图所示,原理图很简单,当GPIO输出高电平时,LED点亮,反之熄灭。至于电阻的大小,取决于你选择的LED的数据手册。 由于原理图非常简单,二层板足以。由于这部分设计更多地还是需要经验,这里我仅仅介绍一些值得注意的细节。 3.1 封装选择对于PCB来说,首先当然是选择封装了。 电阻和LED:选择0603封装的,由于是初学,就选择大一些的。注意,封装越小,能承受的功率越小。电容:对于前面的BUCK电路来说,输入和输出的电压很大,需要选择大一点的封装,所以C3和C4我选择C1206封装;其它的也选择0603的。肖特基二极管:查询你使用的二极管的手册,我这里是DO–216AA 3.2 电源滤波考虑前面的原理图还差了一步,就是一般我们会在电源附近放一个阻值为104的滤波电容。这主要是为了提供电源稳定性、抑制高频噪声和过滤电源线上的尖峰。这是很多手册和很多有经验的硬件工程师都建议的。目的如下: 抑制高频噪声: 104电容在电源引脚附近提供了低通滤波的效果,尤其是对高频噪声的过滤。这对于防止高频噪声进入芯片并影响其正常操作非常重要。提供瞬态稳定性: 在系统中发生瞬态负载变化时,例如突然的CPU活动或其他模块的切换,104电容可以提供额外的电荷,有助于维持电压的稳定性。降低电源线上的尖峰: 在电源线上添加104电容可以减小电源线上的尖峰,这对于防止电源波动进入芯片并引起干扰是有帮助的。所以在设计PCB的时候,会根据STM32芯片,或者其它的,如一些射频芯片的封装布局,来看一下有多少个104电容需要加上。接着在原理图中加上电容,更新到PCB中。然后布局的时候放在这个电源附近! 不是原理图引脚上写了几个电源就要加几个,如果两个电源引脚离得很近,就只需要加一个即可这里我加了6个104滤波电容: 一个系统重最重要的就是电源了,除了我们需要尽可能地将电源线弄宽之外,我们主要来看一下Buck电路的布局,这部分的布局和布线都很有讲究。我们来一下MP2359的手册: 另外,对于6号开关引脚SW来说,由于频率十分高,建议把连在这个引脚的电容、肖特基二极管和电感直接敷铜。 3.4 LED部分设计由于是做流水灯,所以LED当然是要放在一起了,那如果两个引脚之间离得很远,就会影响布线了。所以在原理图中,如果引脚足够用的话,我们会根据布线的难易程度,尽可能地将物理上要放在一起的器件所对应的引脚放在一起。 这个板子都是我刚学嵌入式的时候画的了,没有实物,3D图如下: 本篇文章简单地介绍了一下嵌入式单片机的一个简单的最小系统的设计,其中涉及的知识还是很多的,如果做更复杂的PCB的话,如高频、强弱电、EMC,还有电容电阻的参数,阻值大小,容值大小等方面都需要有一些考虑。后面有空的话,我会再写一篇我以前画的强电高频FOC电机的四层板的文章,会涉及更多一些的硬件知识。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |