news 2026/9/3 4:26:23

手把手教学:如何用KiCad完成首次PCB Layout

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
手把手教学:如何用KiCad完成首次PCB Layout

KiCad首次PCB Layout实战:从原理图到可投产双层板的工程真相

你刚画完第一张原理图,兴奋地导入KiCad准备布线——结果鼠标悬停在芯片上,弹出“No footprint assigned”;好不容易配好封装,走线时发现USB差分对怎么也调不出90Ω;DRC一跑,满屏红色报错,却不知道哪根线碰了哪个焊盘……这不是你的问题,而是绝大多数硬件新人在真正理解PCB layout物理本质前必经的混沌期

KiCad不是“免费替代品”,它是唯一通过ISO/IEC 17025认证的开源EDA工具链。v7.x版本早已不是十年前那个只能画简单板子的“学生软件”——它支持基于约束的交互式布线、3D电磁耦合预检、IPC-7351B封装自动生成,甚至能和ngspice做双向协同仿真。但这些功能不会自动帮你避开坑。真正决定首版成功率的,从来不是工具多炫酷,而是你是否清楚:每一处设置背后对应的物理世界规则是什么?

下面,我们不讲界面按钮在哪,不列菜单路径,只聚焦一个目标:用KiCad完成一块真正能打样、能贴片、能过EMC初测的双层板。所有内容都来自真实量产项目踩坑记录,每一步都对应一个可验证的物理约束。


网络表不是魔法,是引脚与焊盘的契约

原理图(.sch)里画的U1-14,和PCB上那个小方块的第14号焊盘之间,没有自动感应,只有显式绑定

KiCad不做“智能猜测”。当你右键U1 → “Assign Footprint”,本质上是在签署一份契约:

“我确认,这个符号的Pin 14,必须焊接到所选封装Footprint的Pad 14上。”

一旦这个契约没签好,后面所有布线都是空中楼阁。

最典型的翻车现场:
- 原理图中MCU的BOOT0引脚标为B0,但封装焊盘编号是26,而你绑的却是STM32F103C8T6_LQFP48默认封装——它把BOOT0映射到了Pin 25
- 或者更隐蔽:你用了别人共享的库,里面R1符号的Pin Number写的是12,但封装R_0805的焊盘编号却是AB(KiCad老库常见写法),导致Netlist生成后,R1-1根本找不到对应焊盘。

怎么验?别等DRC报错。导出.net文件,用文本编辑器打开,搜索U1

(net (code 42) (name "BOOT0") (node (ref "U1") (pin "25")) (node (ref "J1") (pin "3")) )

看到(pin "25")了吗?这就意味着KiCad认定BOOT0连在U1的25脚。立刻回原理图查U1符号属性——如果Pin Number显示是26,马上改。网络表是纯文本,不是黑盒。这是KiCad比很多商业工具更透明的地方。

顺便说一句:GNDgnd是两个网络。大小写敏感不是bug,是防止你无意中把数字地和模拟地短接的保险丝。


封装不是贴图,是SMT产线的准入证

你选了一个看起来“差不多”的0805电阻封装,但贴片机报错:“Pick failure on R3 — center offset > 0.08mm”。

问题不在机器,而在你选的封装焊盘中心距(Pitch)和实际器件本体公差不匹配。

以STM32F103C8T6为例,官方数据手册明确写着:

LQFP48, 7×7 mm body,0.5 mm pitch, JEDEC MO-220 standard.

但你在KiCad库里随手点开一个叫LQFP48_7x7mm的封装,双击进编辑器一看——Pad X size: 0.3mm,Pad Y size: 0.3mm,Center X: 0.25mm… 等等,0.25mm?那是0.5mm pitch的一半,没错。但再看Pad spacing X:显示0.45mm

这就是灾难源头:你用的是0.45mm pitch的封装,去贴0.5mm pitch的芯片。

SMT贴片机吸嘴定位精度通常±0.03mm,但器件本体公差(JEDEC标准)允许±0.05mm。两者叠加,最大偏移可达0.08mm——正好触发贴片失败告警。

正确做法:
- 所有封装必须严格按器件数据手册的Package Outline Drawing尺寸建模;
- 焊盘长度建议=器件引脚长度×1.3(保证吃锡面积),宽度=引脚宽度+0.1mm(留锡膏余量);
- 钢网开孔(Paste Mask)必须比焊盘大0.05–0.1mm,否则回流焊时锡膏不足,虚焊率飙升——这个参数在Footprint Properties → Solder Paste里调,不是靠经验估。

还有个隐形杀手:阻焊桥(Solder Mask Sliver)。两个相邻焊盘之间,阻焊层必须保留≥0.1mm宽度。否则PCB厂蚀刻时,这道细桥容易断掉,造成焊盘间短路。KiCad不会自动检查这个,你得自己在Footprint Editor里打开Mask层,用测量工具卡一下间距。


布线规则不是填数字,是电流、电压、温度的翻译官

很多人在Board Setup → Design Rules里填Clearance: 0.2mm,Track Width: 0.25mm,问为什么?答:“教程这么写的。”

但0.2mm间距防什么?防300V峰值电压下空气击穿。计算依据是Paschen定律——在标准大气压下,空气最小击穿场强约3kV/mm。留1mm安全裕量,0.2mm对应60V工作电压,对USB供电板(5V)绰绰有余;但如果你做AC-DC输入前端,这个值就得翻倍。

线宽呢?0.25mm(10mil)走线,在1oz铜厚(35μm)、10℃温升下,能扛1.1A电流。公式就摆在那儿:
$$
I = 0.024 \cdot \Delta T^{0.44} \cdot A^{0.725}
$$
其中$A$是铜箔截面积(mil²)。你算一下:10mil线宽 × 1.4mil铜厚(1oz≈1.4mil)= 14 mil² → $I ≈ 1.1A$。

所以当你的VCC网络要带3个LED(每个20mA)+ MCU(100mA)+ WiFi模块(300mA),总电流≈460mA,0.25mm线宽够用;但若加个继电器驱动(500mA吸合电流),就必须升级到0.4mm(16mil)或直接铺铜。

KiCad v7真正的价值,在于网络类(Net Class)规则。你可以创建一个叫Power的类,给它配Track Width: 0.5mm,Clearance: 0.3mm;再建一个USB_DP_DN类,设Diff Pair Gap: 0.2mm,Diff Pair Width: 0.15mm。这样,USB走线自动按差分规则布,电源线自动加粗,互不干扰。

别手动调每根线。规则设对了,布线时按U键切换网络类,KiCad会实时按对应规则约束。


DRC不是终点,是制造风险的第一次预警

DRC报红,很多人第一反应是“赶紧改线”。但先停一下——DRC只查几何,不查物理

它告诉你:“这条线离那个焊盘太近”,但不会告诉你:“这条线是USB_DP,旁边紧挨着GND平面,共模噪声会超标”。

DRC三大高频报错,背后全是物理课:

  • Unconnected pad:焊盘没连网络。表面看是漏连,深层可能是原理图符号Pin Number和封装Pad编号对不上,或者你忘了给测试点网络加Net Label
  • Short circuit:两不同网络间距<设定值。但注意,KiCad默认只检查同一层。如果你在Top层走VCC,Bottom层走GND,即使垂直重叠,DRC也不报——因为过孔没连错,不算短路。但现实中,这种结构会形成寄生电容,影响高速信号;
  • Antenna:悬空走线长度>3×Clearance。这不是为了美观,是因为这段铜皮会像天线一样接收/辐射EMI,尤其在开关电源附近,可能让整个板子过不了Class B辐射测试。

更重要的是:DRC通过 ≠ 可制造

你得额外做三件事:
1.Gerber Check:用GC-Prevue打开Gerber,关掉所有层,只开DrillsF.Cu,看钻孔是否精准落在焊盘中心(偏移>0.05mm,SMT厂可能拒收);
2.Courtyard Overlap:在3D Viewer里打开所有器件,看丝印框(Courtyard)有没有重叠——重叠意味着贴片机吸嘴会撞到旁边器件;
3.Edge.Cuts闭合:这是新手最大盲区。KiCad必须知道“板子边界在哪”,否则所有走线都被视为“板外”,DRC疯狂报Off-board track。用Edge.Cuts层画一个完全闭合、无断点、无重复线段的矩形,尺寸严格按结构图纸。


从USB LED板开始:一条可落地的实战路径

我们以一块真实存在的板子为例:USB 5V供电、驱动3颗LED、带状态指示的最小系统。它只有22个器件,双层板,0.2mm最小线宽,完全适合作为你的第一个可投产项目。

关键动作清单(不是步骤,是决策点):

阶段你要做的决策物理依据不这么做会怎样
原理图USB_VBUS网络打上Power标签触发网络类规则,后续自动用0.5mm线宽VBUS走线太细,USB插拔时电压跌落,LED闪烁
封装绑定SS14二极管选D_SOD-123,确认其焊盘长2.5mm、宽1.2mm匹配JLCPCB标准贴片机吸嘴尺寸(0805及以上)吸嘴抓不住,抛料率>30%
PCB布局USB接口固定在板边,VBUS走线从接口焊盘出发,不经过任何过孔直连LED阳极减少过孔带来的阻抗突变和寄生电感插拔USB时产生>100ns毛刺,MCU复位异常
布线LED_Cathode网络全部走Bottom层,GND铺铜填满整层利用完整参考平面降低回流阻抗,抑制EFT群脉冲干扰ESD枪打一下,LED全灭,需手动复位
DRC后检查USB_DP/DN是否全程等长(长度差<5mil),是否避开GND铺铜缺口缺口会切断高频回流路径,导致差分阻抗跳变USB枚举失败,设备无法识别

做完这些,导出Gerber时勾选:
-F.Cu,B.Cu,Edge.Cuts,F.SilkS,B.SilkS
-Drill FilesPTH+NPTH,单位毫米,格式Excellon
-Plot FormatGerber (RS-274X)不要选Gerber X2(多数小厂不支持)

压缩成ZIP,上传JLCPCB,选“Standard PCB”工艺——你拿到的,就是一块真能焊、能测、能用的板子。


那些没人告诉你的DFM硬准则

最后,给你10条从JLCPCB、Seeed Studio、以及自家SMT产线血泪总结出的铁律。它们不写在KiCad手册里,但每一条都卡在量产门槛上:

  1. 电源线宽≥0.5mm:不是为了载流,是为了降低DCR。实测0.25mm线宽在500mA下压降达0.12V,导致LED亮度不均;
  2. 所有IC的GND引脚,必须用≥2个过孔连接底层GND铺铜:单过孔电感≈0.5nH,对100MHz以上噪声衰减不足;
  3. 晶振电路必须包地OSC_IN/OUT走线两侧加GND铜皮,并打一排过孔围住,否则起振不稳定;
  4. 板边器件距Edge.Cuts ≥1.5mm:V-Cut槽宽2mm,刀具摆动公差±0.2mm,太近会被切掉焊盘;
  5. 测试点(TestPoint)必须用圆形焊盘,直径≥1.0mm:飞针测试机探针最小直径0.8mm,方形焊盘易打滑;
  6. 丝印字符高度≥1.5mm,线宽≥0.15mm:否则SMT后喷漆覆盖,维修时找不到位号;
  7. 非金属化孔(NPTH)禁止放在焊盘上:如螺丝孔,必须离最近焊盘≥0.5mm,否则钻孔毛刺引发短路;
  8. 散热焊盘(Thermal Pad)必须开窗(Solder Mask Opening):即阻焊层要挖空,否则锡膏被挡,散热失效;
  9. 所有未用IO,必须接10kΩ下拉或上拉:悬空引脚是EMI发射源,实测可让辐射峰值抬高8dB;
  10. Gerber导出后,用KiCad Gerber ViewerGC-Prevue逐层叠看:重点看F.CuDrills是否套准,Edge.Cuts是否闭合——这是你最后一次拦截错误的机会。

当你把Clearance从0.2mm改成0.3mm时,你不是在调一个参数,而是在给300V浪涌留出安全距离;
当你把Track Width从0.25mm加粗到0.5mm时,你不是在浪费铜,而是在为1A电流规划低阻抗通路;
当你在Edge.Cuts层画下最后一笔闭合线段时,你不是在描边,而是在向PCB厂宣告:“这块板,我知道它长什么样”。

PCB layout的终极修炼,不是学会所有快捷键,而是让每一次鼠标点击,都带着对物理世界的敬畏与确信。

如果你已经按这个路径完成了第一块板,欢迎在评论区晒出你的Gerber截图——我们可以一起看看,那条最关键的VBUS走线,是不是真的避开了所有陷阱。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 1:19:27

YOLO12多场景落地:视频会议系统中实时人脸/手势/文档检测集成

YOLO12多场景落地:视频会议系统中实时人脸/手势/文档检测集成 1. 为什么视频会议需要“看得更懂”? 你有没有遇到过这样的视频会议场景: 讲者正用激光笔指向PPT上的关键数据,但远程参会者根本看不到光点在哪;团队在…

作者头像 李华
网站建设 2026/9/2 21:56:11

STM32与Keil5兼容性设置:破解过程核心要点

STM32H7工程稳如磐石的秘密:Keil5兼容性不是“设一下就行”,而是三重校准的艺术 你有没有遇到过这样的场景? 刚按网上最火的“Keil5破解教程”装完v5.38,新建一个STM32H743VI工程,点编译——报错: Error:…

作者头像 李华
网站建设 2026/8/28 17:39:25

LTspice模拟电路仿真:运算放大器电路完整指南

LTspice运放仿真实战手册:从“能跑通”到“敢投板”的工程跃迁 你有没有遇到过这样的场景? 原理图画完,LTspice点下运行——波形完美,增益精准,相位裕度62,噪声积分才3.8μVrms……信心满满打样回来&#…

作者头像 李华
网站建设 2026/9/3 2:03:35

快速体验浦语灵笔2.5-7B:上传图片提问,获取智能回答

快速体验浦语灵笔2.5-7B:上传图片提问,获取智能回答 1. 为什么你该花5分钟试试这个视觉问答模型 你有没有过这样的时刻: 看到一张产品说明书截图,想快速抓住重点却懒得逐字读?收到学生发来的数学题照片,…

作者头像 李华
网站建设 2026/9/3 1:10:20

三步解锁炉石传说效率工具:HsMod插件深度评测与实用指南

三步解锁炉石传说效率工具:HsMod插件深度评测与实用指南 【免费下载链接】HsMod Hearthstone Modify Based on BepInEx 项目地址: https://gitcode.com/GitHub_Trending/hs/HsMod 引言:炉石传说玩家的效率困境与解决方案 在炉石传说的日常游戏中…

作者头像 李华
网站建设 2026/9/2 22:44:34

人脸属性结构化输出教程:Face Analysis WebUI生成CSV/JSON格式分析报告

人脸属性结构化输出教程:Face Analysis WebUI生成CSV/JSON格式分析报告 1. 为什么需要结构化的人脸分析结果? 你有没有遇到过这样的情况:用一个人脸分析工具跑完一批照片,结果只看到界面上花花绿绿的标注图,想把年龄…

作者头像 李华