从大一开始玩嵌入式,最容易卡住的其实不是写代码,而是画板子。上学期还在用面包板搭电路,下学期就要交一个能跑的小系统,中间的坎全在PCB设计上。我也经历过照着参考设计抄、被DRC报错折磨到凌晨的日子,直到暑假刷到一位把PCB设计讲透的UP主,才真正把这块硬骨头啃下来。这篇就聊聊我从抄板到能独立画四层板的过程,以及这套学习路径里最值得反复看的那些内容。
1. 为什么大一暑假就直接磕PCB设计
很多学嵌入式的同学会把精力全放在单片机和C语言上,觉得PCB设计是硬件工程师的事,软件出身不必碰。但实际做项目就会发现,板子画不好,再好的固件也跑不出效果。电源纹波大、信号串扰、地弹噪声,这些问题在面包板上根本体现不出来,一上PCB就原形毕露。
1.1 嵌入式硬件学习路径中的PCB设计位置
嵌入式硬件这条线大致分三个阶段:先会用开发板外设,再能独立设计最小系统板,最后能针对具体产品做定制硬件。PCB设计卡在第二个阶段和第三个阶段之间。
用开发板的时候,元件封装、布局布线都是现成的,你只需要关心软件逻辑。但一旦要自己画板子,就要同时处理原理图符号、封装库、叠层设计、阻抗匹配、电源完整性、信号完整性这些问题。任何一个环节没搞懂,画出来的板子不是功能不对,就是稳定性差。
我个人的体会是,PCB设计是嵌入式硬件从“会玩”到“会做”的分水岭。大一暑假开始学,时间上其实刚好——前面已经有了一定的电路基础,后面做电赛、做课设、做毕设都要用,早学会早受益。
1.2 抄板——小白的第一个“乘法口诀表”
所谓抄板,不是让你盗用别人的设计文件,而是找一块成熟的开源板卡或参考设计,照着它的原理图和PCB文件,自己重新画一遍。这个过程和练字临帖很像:先模仿,再理解,最后才能自由发挥。
我最早抄的是一块STM32F103C8T6最小系统板。原理图很简单,一个MCU、一个晶振、几个电容电阻、一个LDO、一个USB座。但真正开始画才发现,光是摆放元件就有讲究——晶振要靠近MCU的OSC引脚,去耦电容要贴着电源引脚放,USB走线要做差分,复位电路要远离噪声源。
这些细节,看别人的板子觉得“不就那样”,自己动手摆一遍才知道每个位置都是深思熟虑的。抄板的价值就在这儿:用最低的成本,把别人踩过的坑全部重新踩一遍,然后记住它们。
1.3 从抄板到进阶的三个阶段性能力
我自己把PCB设计学习拆成了三个能力阶段:
第一阶段是“能画出来”。掌握EDA工具的基本操作,会建封装、画原理图、铺铜、出Gerber,能做出一个功能正常的双层板。这个阶段解决了“从零到一”的问题。
第二阶段是“知道为什么这样画”。理解叠层结构、阻抗计算、回流路径、电源去耦这些底层原理。看到一块板子,能分析出它的设计意图。这个阶段解决了“从一到懂”的问题。
第三阶段是“能针对具体问题做优化”。比如做电机驱动板怎么处理大电流走线和散热,做射频板怎么控制阻抗和寄生参数,做电源板怎么控制EMI。这个阶段解决了“从懂到精”的问题。
我的暑假基本就是沿着这三个阶段走的,每一步都离不开下面要讲的这位UP主的内容。
2. 我找到的宝藏UP主:他讲透的是“为什么”
刷PCB设计教程的UP主不少,但大多数是“操作演示型”的——点开一个视频,跟着画一块板子,画完就完了。你学会了这个案例,换一个项目还是不会,因为没有人告诉你背后的原理和取舍逻辑。
后来我刷到一位UP主,他的每个视频几乎都在回答“为什么”——为什么这里要走线宽20mil而不是10mil,为什么这个电容放在这个地方而不是那个地方,为什么这个过孔阵列要这样打。看他的视频,我第一次有了“原来PCB设计有这么深的逻辑”的感觉。
2.1 我是怎么找到这位UP主的
找UP主的起因很朴素。当时我抄完最小系统板,想进一步做一块带USB和CAN接口的板子,却怎么都画不好,尤其是电源部分,一上电就发热。于是开始在B站搜索“电源PCB设计指南”,结果跳出来一系列视频,其中就有他的电源PCB设计案例分析。
点进去的最大感受是:视频节奏不快,但信息密度极高。他会从原理图开始讲,告诉你芯片手册里哪个参数决定了外围电路的取值,然后一步步带你分析电流路径,最后才打开EDA工具实际操作。看他的视频,你接收的不只是操作步骤,还有一套完整的思考框架。
这类“原理型”UP主在B站不算多,能坚持把每个设计决策背后的科学依据讲透的更少。他目前的内容覆盖了电源设计、高速信号、盲埋孔设计、叠层阻抗等进阶话题,正好命中我从抄板进阶的核心需求。
2.2 他的课程内容是怎么组织的
他的视频不是零散的“随手录”,而是有体系地按照PCB设计的学习路径组织的。大致可以分成几个模块:
第一个模块是“原理图设计”。不只是教怎么画符号连网络,而是教你如何读懂芯片手册,如何根据手册里的推荐电路来设计外围,如何评估不同器件选型对电路性能的影响。这个模块非常适合零基础入门的同学。
第二个模块是“PCB基础操作”。包括建库、封装制作、布局规划、布线技巧、铺铜处理、DRC检查等。这部分看起来是最“操作向”的,但他依然会把每个操作背后的意图讲清楚。
第三个模块是“进阶设计专题”。比如高频信号处理、阻抗控制、盲埋孔设计、电源完整性分析、电磁兼容设计等。他讲盲埋孔的视频我看了三遍,才真正理解为什么HDI板要采用这种结构。
第四个模块是“完整项目实战”。他会挑一个比较有代表性的产品级项目,从需求分析开始,一直到生成生产文件,整个过程走一遍。我暑假期间跟着他的电源板案例完整走了一遍,收获非常大。
2.3 不同阶段应该怎么“榨干”这位UP主
很多同学刷教程容易陷入“看完了就等于会了”的误区。我看他的视频有个习惯:第一阶段只做笔记不动手,把原理和设计思路理清楚;第二阶段跟着视频里的案例实操,遇到卡壳再回头看视频;第三阶段完全脱离视频,自己找一个相似项目独立完成。
比如他讲电源PCB设计指南的那几期,第一遍我看的时候只记住了“要铺铜、要加过孔”。第二遍跟着实操,才注意到输入电容和输出电容摆放位置对纹波的实际影响。第三遍自己设计一个降压模块时,遇到了环路面积过大的问题,又回看视频,才真正理解了他反复强调的“电流回路”概念。
学PCB设计最忌讳的就是“只看不练”。UP主讲得再好,那也是他的经验。只有自己动手画了、错了、改了,那些知识点才真正变成你的。
3. 从小白到进阶要过的几道核心关卡
看完UP主全部视频,我按照他搭建的知识体系,把PCB设计入门的核心关卡重新梳理了一遍,发现真正决定设计水平的就几个点:原理图能力、叠层与阻抗知识、布局布线意识,以及针对特殊场景的进阶技能。
3.1 原理图设计:从“会画”到“会选”
原理图设计很容易被低估。很多教程只教你怎么连网络标号,但真正的高手,功夫全在原理图阶段就下足了。
以MCU最小系统为例。晶振负载电容取值多少,不是随手选一个22pF就完事,要看晶振的数据手册里的CL参数和PCB上寄生电容的估算值,两者匹配才能让晶振工作在标称频率附近。复位引脚的上拉电阻要不要加、加多大,要考虑芯片内部是否已经集成了上拉,以及外部干扰可能带来的误复位风险。每个引脚的滤波电容放多大、放几个,也要结合芯片的功耗和电源噪声要求来评估。
UP主有一期专门讲“如何阅读数据手册”,我印象很深。他不教你英语,而是教你怎么从几百页的PDF里快速提取出对硬件设计有用的信息:绝对最大额定值、推荐工作条件、引脚功能描述、典型应用电路、Layout指南。这些章节看懂了,原理图设计就成功了一大半。
3.2 叠层设计与阻抗计算:最难补齐的短板
双层板做多了,就会遇到一个瓶颈:跑高速信号或做一些对噪声敏感的设计时,双层板怎么调都达不到预期效果。这时候就需要上四层板,而四层板的设计难点,首先就在于叠层和阻抗。
四层板的常见叠层是“信号-地-电源-信号”,中间的完整平面层可以为信号提供良好的回流路径,也方便电源和地的高频去耦。但具体做的时候,层间距、介质厚度、铜厚这些参数都会影响阻抗,而阻抗直接影响信号完整性。
我最初对阻抗匹配完全没概念,直到看了UP主讲“叠层与阻抗”的那期,才理解了“微带线”“带状线”这些概念的本质。简单说,信号走线的阻抗是由线宽、到参考平面的距离、介质材料的介电常数共同决定的。用嘉立创下单助手自带的阻抗计算功能,或者用Saturn PCB Design Toolkit,输入叠层参数,就能算出需要的线宽。
这里有个经验:画四层板之前,一定要先确认板厂的叠层参数。不同的板厂、不同的板材,同样的线宽算出来的阻抗可能差很多。最稳妥的做法是直接跟板厂要他们的叠层结构表,用他们的参数来设计自己的走线。
3.3 布局布线:从“能连通”到“可信赖”
布局布线是PCB设计中最花时间的环节,也是最体现功力的环节。同样的原理图,新手和高手画出来的板子,电气性能可以差一个量级。
布局阶段的核心思路是“模块化分区”。先把电路按功能分成几个模块,比如电源模块、主控模块、通信模块、接口模块,然后按照信号流向合理安排它们在板上的位置。电源模块要靠近电源输入接口,晶振要靠近MCU,高速通信接口要靠近边缘方便接插件安装。每个模块内部,再按照原理图中的连接关系就近放置元件,减少走线长度和交叉。
布线阶段的核心原则有几点:
- 先处理好特殊信号线,比如电源、差分对、时钟线,再布普通信号线。
- 尽量保证地平面完整,不要在关键信号下方分割参考平面。
- 电源走线要有足够的宽度,芯片引脚附近的去耦电容要能覆盖回流路径。
- 最后检查铜皮和过孔是否把走线切得七零八落。
UP主在布局布线方面的内容很细,他有一段话我到现在还记得:布线的本质不是把线连上,而是控制每条信号的回流路径。电流在导线里走,回流也是按最小阻抗路径走的,如果你的布局布线让回流路径绕了一大圈,信号质量不可能好。
3.4 盲埋孔设计:从四层板迈向HDI的必经之路
看过一些手机主板和高端工控板的设计,你会发现板子上的过孔有几种类型:通孔、盲孔、埋孔。盲孔是从表层钻到内层但不穿透整板,埋孔完全在内层之间,从板子表面看不到。
UP主有一期专门讲“Allegro PCB盲埋孔的设计”,这期内容虽然用的软件是Allegro,但底层逻辑对任何EDA工具都适用。盲埋孔的出现是为了解决高密度互连(HDI)的需求——板子面积越来越小,器件引脚间距越来越密,通孔会占用大量布线空间,而盲埋孔可以把不同层之间的连接藏在板内。
设计盲埋孔的时候,需要考虑几个问题:
- 孔的类型组合要定义清楚,比如有没有跨层连接的需求。
- 制造工艺上,盲孔的激光钻孔深度有极限,太深可能打不透电镀层。
- 孔到孔之间要有最小间距要求,否则板厂压合时可能出现介质层击穿。
对于初学者来说,盲埋孔设计并不是必须掌握的技能,但它代表了PCB设计的一个进阶方向。如果以后想做手机、平板、高速采集卡这类高密度产品,这部分知识迟早用得上。
3.5 电源PCB设计指南:从“能供电”到“低纹波”
电源设计是我最早遇到的问题,也是UP主内容里占比很大的部分。他有一期专门讲电源PCB设计指南的视频,我几乎是逐帧看的。
电源板的核心挑战是处理大电流、大压差、高开关频率之间的矛盾。一个典型的Buck降压电路,如果布局不好,会产生严重的电压尖峰和电磁干扰。
具体来说,电源PCB设计最关键的几个点:
- 输入电容要靠近芯片的VIN引脚,环路一定要小,否则高频开关电流会产生很大噪声。
- 输出电感附近不要铺不必要的铜皮,电感下方的铜皮会被涡流加热。
- 反馈信号走线要远离电感等开关节点,否则会引入噪声,导致输出电压不稳定。
- 大电流路径上要加铺铜和过孔,过孔数量和大小要根据电流估算,不能拍脑袋。
- 芯片底部的散热焊盘要开窗,并通过多个过孔连接到内层铜皮,利用整个板子散热。
我照着UP主的电源PCB设计指南重新画了那块发热的板子,把输入电容挪到离芯片VIN引脚最近的位置,加大了地过孔数量,结果温度明显下降,纹波也从之前的100mV左右降到了30mV以内。这个改动成本为零,效果却立竿见影。
4. 暑假实操复盘:从最小系统板到四层电源板
聊完了理论框架,说说我暑假实际做的两个项目。一个是用KiCad做的四层DC-DC电源模块,另一个是用嘉立创EDA画的带USB和CAN接口的主控板。两个项目各有各的坑。
4.1 项目一:四层DC-DC电源模块
这个项目的需求很简单:把12V输入转成5V/2A输出,给后面整个系统供电。芯片选的是TPS5430,这是一颗经典的降压芯片,数据手册里关于Layout的指导非常详细,很适合练手。
原理图设计阶段,我严格按照手册里的推荐电路来选参数。输入电容选了22uF的陶瓷电容加100nF的高频去耦,输出电容选了47uF,补偿网络的RC值按手册的公式计算。这里有一个很重要的心得:芯片手册里的典型应用电路不要随便改,每一个器件的取值都有依据。
布局阶段,我把输入电容放在靠近芯片VIN引脚的地方,电感放在SW引脚正前方,输出电容紧跟着电感。整条电源主回路呈一个单向流动的布局,避免输入输出交叉。为了减小环路面积,我在芯片正下方的地层上打了一排过孔,让输入回路和输出回路的参考地尽量短。
布线阶段比较折腾。因为要用四层板,我在中间两层做了完整的地和电源平面。顶层走信号和电源主回路,底层补了几根短的信号线。布完线后做了DRC检查,发现两个封装间距问题,又调整了位置。最后出Gerber文件之前,我用3D预览检查了一遍所有元件的高度,确认没有明显冲突。
投板回来焊接的时候,第一次上电输出电压正常,5.02V,纹波25mV,一次通过。这个结果让我挺意外的,因为之前画的双层板电源从来没一次成功过。后来想想,四层板的完整地平面确实帮了大忙,不仅降低了回流路径阻抗,还屏蔽了部分干扰。
4.2 项目二:带USB和CAN接口的主控板
有了四层板的基础,我开始挑战一块更复杂的主控板。功能包括STM32F405、USB、CAN收发器、SD卡座、RGB灯、若干传感器接口。这块板子我采用的是嘉立创EDA专业版,因为封装库丰富,下单打样也方便。
这个项目的难点不在电源,而在差分信号和高速信号的处理。USB的D+/D-是一对90欧姆差分对,CAN的CANH/CANL也需要差分布线。虽然USB Full Speed不算特别高速,但良好的差分布线习惯还是要养成。
差分布线的要点在于:两条线要保持等长、等间距、对称地走线,避免中途穿过其他层或参考平面被分割。我用嘉立创EDA的差分对布线功能,先把差分对规则设置好,然后一起拉线,软件会自动控制间距和长度匹配。
还有一个坑是CAN收发器。我原先用TJA1050,后来发现这颗芯片已经停产,改用了SN65HVD230。换了芯片后,外围电路基本不变,但注意到CANH和CANL的终端电阻从原来的60欧姆改成了120欧姆,这个细节在数据手册里有明确说明,不看手册就会踩坑。
这块板子投板后也顺利点亮,USB枚举成功,CAN通信正常。唯一的问题是SD卡的走线理论上应该做等长处理,我偷懒没有做,好在用的是SPI模式速度不高,暂时没有出问题。但如果是SDIO模式,跑40MHz以上,等长线就必不可少。
4.3 实操总结:工具选择与效率心得
暑假用下来的体验是:工欲善其事必先利其器。KiCad免费开源、跨平台,适合深入学习原理和流程;嘉立创EDA中文友好、封装库全、下单方便,适合快速实现和打样。两个工具我都在用,KiCad偏学习,嘉立创EDA偏投产。
另一个效率心得是:设计之前先把封装库准备好。很多刚学PCB设计的同学,画原理图只用了半小时,建封装库却花了一整晚。更麻烦的是,封装引脚定义错了,板子打回来根本焊不上。我的做法是,每选一个器件,第一步就是去官网下载封装和3D模型,或者用立创商城现有的封装,确认无误后再开始画原理图。
4.4 盲埋孔与高密度板的进阶体验
四层板做完之后,我尝试摸索了一下更高阶的盲埋孔设计。虽然手头没有真正的HDI项目,但跟着UP主的Allegro视频走了一遍流程,大致理解了这类设计的生产流程。
盲埋孔设计在布局上比普通通孔板灵活很多,因为盲埋孔不会穿透整个板子,表层走线空间不容易被过孔占据。但在设计软件里,定义盲埋孔比定义通孔麻烦得多,需要建立一套完整的“孔类型-层对”规则,而且设计规则检查的配置也更复杂。
如果你的目标不是做手机板级开发,暂时可以缓一缓这部分内容。但如果你所在学校有高速电路设计课程,或者将来想做高密度产品,盲埋孔设计一定绕不开。我的建议是先熟练掌握通孔四层板,再扩展盲埋孔只是时间问题。
5. 常见问题与避坑经验实录
最后整理一份PCB设计入坑以来最常遇到的问题,都是我自己和身边同学踩过的坑,希望能帮后来的同学跳过这些坎。
5.1 PCB设计常见问题速查表
| 问题现象 | 可能原因 | 解决方案 |
|---|---|---|
| 板子能通电但单片不工作 | 晶振布局离MCU太远、负载电容不匹配 | 晶振尽量靠近MCU引脚,按手册参数选择电容 |
| 电源纹波大、芯片发热 | 输入输出电容离芯片太远,环路面积太大 | 电容紧贴芯片引脚,使用四层板完整地平面 |
| USB/网口通信不稳定 | 差分线不等长、参考平面不完整 | 差分线等长等距,下方地平面保持完整 |
| 上电后某个模块烧毁 | 电源电压过高或接反、缺少保护二极管 | 加入极性保护、仔细检查电源树和封装引脚 |
| DRC报错密密麻麻 | 规则设置不合理 | 将间距、线宽、孔径规则设置为板厂标准最小值 |
| 焊接时焊盘不沾锡 | 焊盘没有开窗或表面处理不对 | 检查阻焊层开窗,选择HASL或沉金工艺 |
5.2 一块板子“画完”之后还要做什么
很多初学者画完板子就算完事了,直接下单打样,结果回来一堆问题。我的习惯是,出Gerber之前必须做三件事:
第一件,重新检查一遍原理图的ERC电气规则检查。有没有悬空引脚、有没有电源短路、有没有输入输出接反。很多低级错误在原理图阶段就能发现。
第二件,在PCB编辑界面进入屏幕预览模式或者3D预览,仔细看每一层的实际图形。尤其要检查电源层和地层有没有碎片化,如果内电层被过孔和走线切得支离破碎,电源完整性就会受影响。
第三件,套用板厂的设计规则检查文件。嘉立创和捷配等板厂都会提供他们自己的DRC文件,用他们的规则重新跑一遍,可以最大程度避免“我这边没报错、板厂那边却做不了”的情况。
5.3 关于学习心态的一些话
最后想聊聊学PCB设计这件事本身。这个领域的特点是知识点多且碎,而且很多知识必须结合实践才能理解,光看书看视频很难形成真正的技能。
我见过很多人一开始兴致勃勃,画了一块板子发现问题后就开始打退堂鼓。其实大可不必,PCB设计本身就是不断试错、不断总结的过程。每一块失败的板子都是一次免费的“流片教训”。我画过的板子里,有电源短路烧掉的,有USB识别不到设备的,有CAN总线怎么都通信不上的,但正是这些失败,让我对每个细节都有了深刻的肌肉记忆。
暑假这段时间,我从跟着教程抄板,到能独立完成四层板设计,最大的转折点就是遇到了那位把原理讲透的UP主。他不只是告诉你“怎么画”,更重要的是告诉你“为什么这样画”。当你脑子里有了这些“为什么”,再去看任何一块板子,都能看出门道来。这也是我写这篇分享的初衷——把这条走通的路记录下来,希望后来者能少走一些弯路。
如果你也在学嵌入式硬件的路上,正在为PCB设计头疼,不妨试试我这个方法:找一位讲“为什么”的UP主,跟着他完完整整做一块板子,然后把学到的思路用在下一个属于自己的项目上。这中间踩过的坑、熬过的夜,最后都会变成你手里那块稳定运行的板子,那种成就感,值得。