- 壹零零单片机©版权所有 2008-2025 粤ICP备17151077号
基于Altium Designer的PCB设计指南
(一)Altium Designer16软件概括
一、常用软件推荐设置介绍
二、快捷键设置
按住ctrl键的同时用鼠标左键点击相应图形界面按钮,就可以设置快捷键:
1.电气走线:F2
2.差分走线:Alt+F2
3.过孔:F3
4.铺铜:F4
5.线选:2(按s,接触线)
6.框选:3(按s,区域内部)
7.左对齐:Num4(按a,左对齐)
8.右对齐:Num6(按a,右对齐)
9.上对齐:Num8(按a,顶对齐)
10.下对齐:Num2(按a,底对齐)
11.水平等间距:Num7(按a,水平分布)
12.垂直等间距:Num9(按a,垂直分布)
13.测量边缘距离:Alt+F1(选择Reports->Measure Primitives)
14.放置FILL:Alt+F3(右上角方块图标,表示填充铜)
15.重新铺铜:Alt+F4(选择Tools->Polygon Pours->Repour Selected)
16.删除物理连接:Alt+`:(选择Tools->Un-Route->Connection,表示只要是跟该网络连接在一起的都可以删掉,如果只删除一段的话就选中按Delete即可)
17.选择物理连接:1(按s->Physical Connection)
18.坐标移动:6(框选后按m->Move Slection by X,Y)
19.差分等长:Alt+4(选择Tools->Interactive Diff Pair Length Tuning)
20.等间距走线:Alt+5(选择Tools->Legacy Tools->Multiple Traces)
(二)两层PCB设计前期部分
一、原理图的分析及编译检查
1.创建工程:File->New->Project,输入工程名和位置
2.将原理图和PCB库加载到工程中:右击Project->Add Existing to Project->选择原理图和PCB库并点击确定
3.创建PCB:File->New->PCB,保存并改一下PCB文件名
4.分析原理图(清楚每个器件的作用,方便在设计时通过其作用定位位置和走线):
(1)MCU:四个滤波电容
(2)IO引脚:将引脚进行引出
(3)复位电路:通过电阻分压进行高电平复位
(4)晶振电路:两边是耦合电容
(5)供电电路:电源正极通过二极管导通对系统进行供电
(6)按键电路:按键按下KEY端就变成低电平
(7)电源供电:第3脚进行输入,第2脚和第4脚进行输出;左边是输入的滤波电容,一个大电容一个小电容;右边一个LED灯指示电源是否通了;
(8)ISP接口:左边D+和D-是一对差分输入,右边是一个控制脚,通过高电平对其进行控制;
(9)蜂鸣器:通过三极管进行高电平导通,通了之后就会进行鸣叫;
(10)232电路:左边C14、C15是旁路电容,要靠近芯片进行摆放;C16是滤波电容,靠近管脚进行滤波;(485电路是一样的)
(11)IIC存储:C21是滤波电容,右边是两个上拉电阻;
(12)数码管显示:74HC595是两个驱动芯片,驱动右边的数码管,通过三极管对其进行控制;
5.编译检查:
(1)设置检查选项:在Project上单击右键,点击Project Opinion,设置错误报告;
I.位号重复:Duplicate Part Designators设置成Fatal Error;
II.网络悬浮(一个元件每连接其他元件单独放置):Floating net labels和Floating power objects 设置成Fatal Error;
III.单端网络(连接线只有一端连接到了孤立的网络上):Nets with only one pin设置为Fatal Error;如果确认就是需要单端网络就把该连接线删除。
设置完成后按OK;
(2)在Project上单击右键,点击Compile PCB Project,对工程进行编译;
点击右下角system,点击Message,调出编译信息;
注意:I.该线是不具备电气连接属性的,必须用
进行电气连接;
上面表示元件位号,下面表示元件名称或阻值、容值;
II.如果要修改原理图库,就点击Design->Make Schematic Library->对话框选择第一项,OK;
原理图中元件引脚上的十字星应该在芯片外;
修改完之后在相应元件上单击右键选择Update Schematic Sheets;
二、PCB封装完整性检查及封装创建
1.将原理图导入PCB:
两种方法:1.确保原理图和PCB在同一工程中,然后在PCB中点击Design->Import Changes From XX.PrjPcb 2.在原理图中点击Design->Update PCB Document XX.PcbDoc
把最后一项Room去掉,然后点击Excute Changes;
2.检查封装
(1)点击Only Show Errors显示错误,查找封装未找到的元件;Report->Export->以xls的形式保存到桌面,以方便检查;
(2)在原理图中逐一进行查找:在原理图上按J,选择Jump Component,输入器件位号,双击器件;如果有封装但没有匹配上,那就是路径设置有问题,直接在PCB Library中选择Any即可;
(3)封装库管理器
I.如果有多个器件都是同样的问题,需要用封装库管理器:在Tools里选择Footprint Manager;
Designator表示器件位号,Comment表示器件阻值、容值,Current Footprint表示当前的封装库;在左边框中批量选择后,在右边点击Add并同一添加封装;
点击Accept Changes,再点击Excute Changes;
(4)如果没有封装就需要自己创建封装:在PCB Library中单击右键,选择New Blank Component,把名字改为其封装名->OK;
I.首先在规格书中找到焊盘大小并放置一个焊盘,双击在Layer中改为Top Layer,在Shape中改为长方形,根据规格书输入焊盘宽度:在X-size处输入0.55mm(规格书上宽度是0.49mm,为了放置芯片贴偏,多加一点宽度作为补偿),根据规格书输入焊盘长度:在Y-size处输入2mm(规格书上写的是1mm,为了保险起见翻一倍);
II.根据规格书焊盘间距是1.27mm,数量是8个:选中焊盘按Ctrl+C复制,再按Ctrl+V粘贴,按m选择move命令后输入1.27mm向右移动额定距离\直接使用阵列复制;选中第8个焊盘焊盘按Ctrl+C等鼠标变成十字光标后点击焊盘中心复制,再按Ctrl+V粘贴于原第8焊盘中心,按m选择move命令后输入5mm向上移动额定距离(要确保焊盘外距大于规格书上外间距,内距小于规格书上给定内间距),再通过阵列复制的方式完成剩下8个焊盘;
III.焊盘阵列的快捷复制方式:选中后按Ctrl+C,鼠标变成十字光标后点击焊盘中心;然后Edit->Paste Special->Paste Array->填写Item Count、Text Increment、X-Spacing等,OK;鼠标变成十字光标后点击焊盘中心即可;
IV.设置原点:点击Edit->Set Reference->Center;
V.设置丝印:在丝印层Top Overlay中心点画一条线(宽度5mile),选中左右移5mm;同样上下丝印也是一样的,但如果焊盘在丝印内部,上下丝印也可以不要;为了美观可以在左边丝印中心位置画一个圆,然后宽度同样改为5mile,并改成半圆旋转90°;
VI.1脚标识:在1脚处画一个圆形以作为标识;
回到原理图后就可以看到封装库已经显示了。
(5)如果错误中有Unknow Pin意味着封装名字都没填写,在原理图上找到该元件双击,点击Add->OK,然后点击Browse选择相应封装后点击OK;
如果存在多个都没添加封装的情况,就去封装库管理器中选中这些器件,然后点击Add进行添加,最后点击Accept Changes->Excute Changes,然后在重新导入一遍PCB;
再点击Only Show Errors就发现没有错误了,即原理图与PCB进行了完全的匹配;
三、PCB的导入及导入常见问题
1.按Shift+h键可以隐藏\显示掉左上角坐标;
2.推荐设置1:在导入PCB之后会有一些绿色的自动报错,其解决办法是:选择Tools->Design Rule Check->Placement->Component Clearence中Online给勾选掉;其他的可以全部勾选掉,只保留第一个Electrical(电气性能的检测,包括开路、短路)
3.推荐设置2:Ctrl+G设置格点,Step X改为1mil,右上设置为Dots,抓取格点选择5x;此时一个大点表示5mil,一个小点表示1mil;
4.原理图中连接多页的方法:选择Place->Off Sheet,将其和要跨页的引脚相连接;
(三)PCB的布局布线
一、PCB的布局
1.几个重要命令
(1)飞线的显示和隐藏:按n后可以选择将飞线进行显示或隐藏;
(2)对器件在矩形框内进行排布:先框选一部分器件,然后点击Arrange Components Inside Area(Num1)激活该命令,然后在空白区域画一个框,就会发现被选中器件全部排布在了该框中;
(3)交互映射:点击,在PCB中点击某一器件,该器件就会在原理图中高亮显示(方便我们核对、定位原理图);
(4)分屏:在屏幕左上文件名旁边的空白处右击,选择Split Vertical;
(5)交互布局:选择Tools->Cross Select Mode即可,在原理图和PCB中该选项都要打开;可以实现在原理图或PCB一方中选中某一器件,另一方也会被选中;
(6)对器件在矩形框内进行排布、分屏、交互布局综合应用:先在原理图中选中某模块全部器件,然后选择对器件在矩形框内进行排布,最后在空白处画一个区域,则该模块的全部元器件都会集中到这个矩形区域内;
2.设计板框
(1)在Keep Out Layer层点击画一个近似正方形的框,按空格是走直角,按Ctrl拖动可以整体拖动边框;
(2)选择Place->Dimension->Linear,按Tab调整为mm并保留两位小数,对边框的长和宽进行测量;
(3)从测量结果可知板子可定位100mmx100mm:选择Edit->Origin->Set,在板框左下角设置中心点,然后点击板框的左侧边和下侧边,将其长度分别改为100mm;然后线选两个边框,复制粘贴后旋转与其对接;
(4)将板框选中,然后选择Design->Board Shape->Define from selected objects,将板框定义为工作区域;
(5)由于是开发板,所以加一个3mm的定位孔:点击Place Pad放置一个过孔在边框左下角,双击大小改为3mm,并将Plated勾掉(非金属化过孔);
将过孔放在参考点处,输入移动坐标X、Y都为3mm,对其进行移动;
选中过孔,按Ctrl+C并点击参考点,再按Ctrl+V并点击其他四个角的点分别进行对称粘贴;
(6)倒角:双击左、下边框,在start处改为1mm,然后选择Place->Arc(Edge)在边框缺口处补半圆,其他四个角如法炮制;将板框选中,然后选择Design->Board Shape->Define from selected objects,将板框定义为工作区域;
(7)放置叠层名字:选择Design->Layer Stack Manager,将Top Layer改为TOP,Bottom Layer改为BOTTOM;然后Place->String放置层标识,修改其名字和层;
3.布局
(1)通过原理图,对器件进行模块化:对器件在矩形框内进行排布、分屏、交互布局综合应用,先在原理图中选中某模块全部器件,然后选择对器件在矩形框内进行排布,最后在空白处画一个区域,则该模块的全部元器件都会集中到这个矩形区域内;
(2)电源和地有时候会干扰信号流向,需要将电源类飞线进行隐藏:选择Design->Classes;右击Net Classes,选择Add Class,输入PWR,然后将全部电源(3v3、5v、VUSB)关联到电源类中,点击Close;
创建好电源类后点击右下角PCB->PCB,将左边Normal改为Mask后,点击PWR,电源类飞线就高亮显示;右击PWR->Connection->Hide将电源飞线全部隐藏;
(3)布局:先接口后其他、先大后小的原则(先定位接口器件后再模块化)
I.先摆放各个接口:包括数码管Q1,X1、X2,LCD1,Z1,DB1,USB1,U8,JP20、JP21,JP3、JP4,JP13、JP14,JP16、JP17;
II.再按照先大后小的原则:
点击后选择接口,找到其在原理图中位置,然后在原理图中选择整个模块后在PCB中按住Shift单击接口去掉接口部分,按Num1后将该模块其他部分放置在接口周围;
选中一个模块后看飞线走势如何,然后将其放在飞线较为集中且无阻挡的区域;
(在布局时位号比较烦人,可以先右击某一位号,然后选择Find Similar Objects->String Type选Same,然后在右下角点击Run Inspector->OK;
选中所有器件,按a,选择Position Component Text->按5将位号放器件中心位置;)
III.局部模块化布局
先布模块里最大的器件,再布外围小器件;
可以看到C16两端都是3.3V,说明3.3V跟GND短路了,这时候可以按住Ctrl然后点击原理图上的连接线,检查原理图中哪里3.3V跟GND短路;
滤波电容要靠近相应管脚进行摆放;
IV.布局完一个模块后,再按照顺时针或逆时针顺序布置其他模块
按键摆放成正方形;
蜂鸣器靠近板边进行摆放,小器件靠近蜂鸣器摆放,并注意对称;
注:如何快速的把正面的器件放到背面?
在拖动器件的情况下按下键盘L即可;
注:如何微微移动器件?
框选后按住Ctrl+Shift并配合方向键进行移动;
注:电源线如何影响器件的布局?
从图中可以看到从VUSB进行供电,流经USB通信模块(从其1脚流入);
为防止电源线对485和CAN电路造成影响,因此应该把电源放在下图的下面位置,把485和CAN电路放在下图的上面位置;
注:一些不重要的接口靠近飞线摆放就可以了;
注:各个接口的跳线尽量放到一起;
二、PCB的布线
1.常规规则设置(线宽要走多宽?电源如何去走?)
选择Design->Rules
(1)Electrical(电气规则)
I.间距规则
Where the first object matches和Where the second object matches选择All,意味着规则全局有效;
一般板厂都能做到4mil以上,差一点的也能做到6mil以上;
针对铜皮,可以自己输入规则:Where the first object matches->Custom Query->Query Builder->Condition Type中选择In Any Polygon->OK;Where the second object matches选择All;
间距设置成10mi->Apply;为了识别这是铜皮的间距规则,改一下名字POLY;
从铜皮到过孔:Where the first object matches->Custom Query->输入代码IsVia表示过孔;Where the second object matches->Custom Query->输入代码InPolygon表示铜皮;
间距设置为6mil,名字改为VIA_POLY->Apply->OK;
检测:点击铺铜,Layer选择TOP,Connect to Net选择3V3,进行铺铜;选择Report->Measure Distance对铜皮和焊盘距离进行测量,发现是6mil;
左下角Properties可以选择间距的优先级;
II.短路
III.开路
IV.铜皮的修改
(2)走线规则
宽度、走线的拓扑结构、走线的Layer(比如有多层板,哪一层不能走线,可以在这里进行设置)、过孔类型、Fanout类型;
I.线宽规则
一般走线:在Width中,Where object matches选择All,宽度全部选择6mil;
电源线:Where object matches选择Net Class,最小宽度8mil,最大宽度60mil,优先走线15mil;
II.过孔规则
设置12mil的孔,24mil的盘;
(3)Mask(阻焊规则)
设置为2.5mil;阻焊在PCB上表现为紫色,其作用是防止绿油覆盖;
(4)Plane(铜皮规则)
重点说下连接方式:Polygon Connect;大部分设计焊盘采用十字连接,一般铺铜的都是电源,所以宽度要宽一些;
这里设置为18mil;
(5)Manufacturing(生产制造规则,比如丝印、丝印间距)
Silk to Silk Clearance->设置为2mil,防止丝印间遮挡,印刷出来看不清;
Silk to Solder Clearance->设置为2mil(防止丝印被阻焊遮挡,不完整无法识别)
(6)High Speed(高速等长)
(7)Placement(布局规则)
注:双面布局时,接插线布局与焊盘不能放太近,在同一面时不存在上述问题;
注:20mil过1A的电流,过孔是0.5mm过1A电流;
2.扇孔
(1)扇孔
什么是:布线前首先要做扇孔,就是把孔打在它的周边;
为什么:为什么要扇孔?第一是为了布线规范,第二是减小回流路径;
怎么做:同样先选择顺时针或逆时针方向,先把较近的焊盘用走线连接起来;
选中走线后按下“[”按键,可以看到该引脚连接到哪个引脚上;如果走线较长就先引出扇孔,然后从底层走线;
注:如何单层显示?按Shift+s即可切换不同层显示;
注:过孔要放在右图位置,如果放在左图位置,电源线(蓝色)进来后电容的滤波作用有限;
注:多根拉线如何使用?先线选两条线,然后按下按键t->t->m(Mutiple Traces)
注:最后删孔很容易,但是最后加孔比较麻烦;
(2)铺铜
点击进入铺铜界面,选择Hatched选项;Track Width选择5mil,Grid Width选择4mil,选择Arcs,选择90 Degree;选择相应网络;选择Pour Over All Same Net Objects;点击OK;
如果想对铺好的铜皮进行调整,则在调整后选择Tools->Polygon Pours->Repour Select(快捷键Num3);
(3)数码管模块
注:如何将器件翻转?
拖住器件,鼠标变成十字星,然后按X或Y即可进行水平或垂直翻转;
注:如何对称复制粘贴?
选中器件复制后点击参考点,再按Ctrl+V,再按X,点击粘贴参考点即可;
(4)LED灯
注:器件摆放时要根据原理图的对应关系一一摆放,否则布线还要调整;
(5)电源供电
第2脚->第3脚->芯片第3脚->芯片第2、4脚,都需要进行铺铜加粗处理,这是电流的主干道;
注:有时候铺完铜觉得连接点太细,可以点击对其进行扩展;
注:在铺铜时输入(3V3)有多少过孔,输出回流(GND)也需要有多少过孔;
注:如果滤波电容与器件不在同一面,就直接打过孔,放在它周边就可以了;对于滤波电容和器件在同一面的,就必须先经过电容滤波后再经过器件;
(6)晶体
采用内差分走线;并采用立体包地,并在其上增加回流地过孔,这样干扰就可以进入地了;
(7)差分线
I.什么是差分线:
所谓差分线,就是一正一负,可以相互屏蔽干扰;这类差分线经常在高速线中用的多;
差分线是两根线,它们等线宽、等间距进行走线;
II.如何设置差分线:
Design->Classes->右击Differential Pair Classes,选择Add Class->输入90OM,点击Close;
点击右下角PCB->PCB->选择Differential Pair Classes,然后选择90OM->点击Add,在正负线上输入两个引脚的名称->OK;
III.差分线规则设置:线宽走多宽、间距走多大间距
在PCB界面中选择90OM->点击右下角Rule Wizard->创建规则名称DiffPair_90->Next->线宽设为6mil,间距设为7mil->Next->Finish;
IV.如何走差分线:
选择,点击相应差分线,然后拖动即可;若两条差分线中间有交叉,则打过孔;
走线完成后选择右下角clear,恢复普通视图;
注:差分线除了USB是90欧姆外,其他常规电路中的差分线都是100欧姆;
3.布线
(1)首先打开所有飞线;然后关闭PWR:点击PCB->PCB,右击PWR->Connection->Hide;