6.封装4 Z' {9 v! y0 w6 W7 h! C
我并不是一开始就先学做封装的,画了很久的板子才接触画封装,也不知道是什么时候学会了做封装。 现在游泳条件好多了,我学游泳那会7 8个人就1个轮胎,我忠厚又老实,就抱着那7 8个人的拖鞋浮在岸边学。 做技术就像游泳,淹几次失去理智,半死不活,就学会了。 & O3 v. j! e" t6 e% q
做封装,我也犯过几次大错误,我是EDA365最早一批的认证设计师,一次项目中用了自己库里的封装,没有反馈给EDA365,生产出来封装对不上,幸好能勉勉强强手工焊上,谢天谢地。 翻车经历,最后面会细说。
* m& t: A2 E5 u+ W' `1 _2 w! n 2 _6 C C- f* J9 g
对于新手来说,封装是无从下手的,它不像画板子,它是一个完完全全“从无到有的过程”。 到底画多大?怎么命名?什么是阻焊层? 越多知识盲区的,心里就越没底。 有资料,看半天都看不懂,又想一次性弄懂,电脑前发了一下午的呆,到了吃饭的点,要不先吃饭吧。 学做封装的第一个技巧: 无论你会不会,先动手
其中道理很简单,很多人常识里的榴莲是臭的,是不是真的臭Ta没尝过,甚至都没近距离闻过,却恐惧了一辈子的榴莲。 不尝一尝,永远不知道
1 j% P/ p& R* I简单点说:画板就是基于原理图的电气连接关系,在一个板框里,对PCB封装进行连接。 再假设,该项目是一个“真的拉通就行的板子”,那在电气连接上(布局布线)不会影响到设计,真正有影响的,是PCB封装。 如果PCB封装是设计中出了问题,如果出了问题,严重程度不亚于: 板子开路(没有拉通,怎么灯不亮),板子短路(不同网络连到一起,怎么板子冒烟了)
可能造成的影响: 损害电子元件器 板子报废 元件焊不上去,或者能焊上去但不能量产 实物比封装大,导致这个焊了,边上的不能焊 实物比封装小很大,在寸土寸金的高密度板子上,浪费,白白浪费空间 元件引脚做多了,存在管脚排序错误隐患和误解 元件插件孔太大了,焊接后一致性差 元件插件孔太小了,插不进去
出现任何一个问题,都有一种负罪感,没有到“剖腹自尽”的程度,“负荆请罪”的念头还是有的。 在日本文化中,人们相信灵魂藏匿在腹部。剖开腹部的自杀方式最容易让灵魂释放出来。也就是说,在这个过程中,虽然肉体是痛苦的,但灵魂却是愉悦、自由的。
如果真出现了,不要害怕,不要解释,不要甩锅,公司需要的是你的态度,你的担当,你的责任感。 做设计,出问题都是正常的,不出问题,一版必过,还叫设计吗? 处理的方法应该是: 怎么在现有基础上解决问题,不耽误项目的进度 怎样避免下次再出现这种问题
4 e; U' z: J) G6 G6 Z本小节通过一个小案例来辅助讲解,该有的都有,举一反三。 1 W) o7 Y" P- }/ C0 D
画好一个的PCB封装要关注以下内容: - 单位
- 焊盘类型:通孔/贴片
- 管脚个数和排布
- 焊盘形状
- 焊盘大小
- 阻焊,钢网焊盘大小
- 焊盘间距
- 焊盘跨距
- 本体大小
- 高度属性
- 管脚序号/ Z/ ~8 ]7 q3 y. X5 b. w8 v$ ^& t
如果你是第一次做封装,强烈建议你先拿一张纸,依次按上面的标签,写下对应的参数,等到画封装要参数的时候就不会每次都重新进入思考模式了。 ; n3 l: d7 t8 N
第一次做封装的人,看到一大堆参数,就像看到了英语一样,拆开每个都认识,合一起一个都看不懂。 下图的框住的参数,是什么意思? 这是两种单位,从常识上来分析,“6.00”可能是什么单位呢? 如果是米,6米有两层楼那么高了。 如果是分米,6分米有手臂那么长了。 如果是厘米,6厘米有鼠标那么宽了。 如果是毫米,6毫米是小拇指指甲大小,这就对了。 单位相当重要,弄错单位,是要被全网嘲讽的。 (找一张图找了一个多小时,还是没找到,图片是一个工程师看着打样回来的板子发呆,PCB做到了40倍) 做封装,都以“毫米”为单位。 6.00是“毫米”,0.236是“英寸”等于236“密尔”。 后面的“±”是公差,即该长度在“5.7-6.3”之间。
* N/ G7 B8 M+ b `; j" @
Allegro画封装要单独先把焊盘做出来,焊盘用“Pad Designer”软件,在WIN菜单下能够找到。 修改单位为“毫米”,如下图。 下半区域的参数不用设置,它是通孔焊盘的设置。
) q& j1 S. o4 J3 z+ p8 J, I2 j1 U0 n( H& E
- 焊盘类型:通孔/贴片1 _9 M6 r: K9 E9 |# S
怎么区分? 看管脚的角度 如果是横着的,就是贴片的; 如果是竖着的,就是插件的。 - 管脚个数和排布8 ^! N$ O+ f3 t( h, ?
8个脚,逆时针顺序。 有些封装中间会有散热焊盘,可以写8+1。 & Y: i: ?0 w# u. p, D9 F
- 焊盘形状
' m$ f A. g! B I! j5 E: z0 n7 q
“Pad Designer”软件切换到“Layers 层”,贴片元件将下图方框勾选,箭头位置修改焊盘类型。 其中包含: 没有焊盘 圆形 方形 椭圆形 矩形 八角形 异形
用的最多的是圆形和矩形。 1号管脚要不要弄特殊一点,如1脚用矩形,其他脚用椭圆形。 个人觉得没有必要,标个“1脚标识”是最直观的,如下图小圆点。 焊盘大小 元器件实物管脚长度为0.5±0.2,短了焊不上或者焊不牢靠,取最长的0.7。 另外,鞋要比脚长,不然会磨脚,焊盘也要比实物管脚长,才好上锡,尤其是手工焊接。 在0.7的基础上,再加0.3,即1毫米。
长点焊的稳,焊的死。 实物管脚宽度为0.41±0.1,从图上可以看出管脚间距是比较大的,因此,管脚宽度直接取最大值,取0.5。如果两个管脚间距很近,则不加宽焊盘。
7 _) [& j, Q- C8 {, w: c
- 阻焊,钢网焊盘大小
" u, E% |2 G; ]% L
贴片元件要开钢网,过回流焊,钢网跟焊盘一样大小。 焊盘都要开窗(设置阻焊层),开窗比焊盘大0.1mm。 设置完成后路下图所示: 注意,阻焊层比焊盘大0.1mm。 4 `2 p b# O1 m! j$ c" u( F
到这里,一个焊盘就做好了,等会要换软件,最最纠结的事情来了,这是困扰每一个的问题。 保存时怎么命名? 比取网名还难,是叫“追风少年”,还是叫“唥硞菂尐爺”,每个都觉得合适,每个都觉得差点意思。 我的命名是: SMDR-0_5X1_0
命名逻辑是: SMD(贴片,如果是插件TH)+ R(矩形,如果是圆形C,取焊盘类型的第一个字母)+ 0_5(长宽)X1_0(长宽)
这里的长宽,不一定是实际意义的长宽,长宽是可以对换的,焊盘旋转下而已。
. z8 c( B9 X0 S1 N H6 m
把焊盘保存到库里,现在来新建封装,烧脑的来了。 打开软件,New,先随便取个名字,现在讲了,怕给你讲晕了。 修改下单位。 按下面操作,把焊盘调出来后,右键“Rotate”旋转90度(不知道你设了快捷键吗,旋转要设置快捷键),与规格书方向一致,在放置前在命令栏输入: x 0 0 把焊盘放置到原点。 把格点修改成管脚间距1.27,放置同一列的另外3个焊盘。
4 s b9 T- M" L0 i) m
2 _- X7 ]' ?5 H- 焊盘跨距
) D; R) n- o$ U4 m8 {& Q4 l
通过复制命令(Edit - Copy),复制4个焊盘到右侧。 测量一下最边缘的距离(不测量暗绿色,暗绿色是阻焊)。 测出来是4.8mm,两个管脚最边缘实物是6.3。根据“鞋要比脚大”原则,4.8是不行的,我们在焊盘长度上加了0.3,这0.3应该是管脚边缘之外的。 所以,两个管脚最边缘实物应该是6.9。 6.9-4.8=2.1 选中右边的4个管脚,一起再往右移动2.1(选中移动过程中输入:ix 2.1),移动完成后再次测量确认是不是6.9。
" O3 P% |5 @( x$ v' c4 ` A 在这里分享下由于我做封装的第2个技巧: 封装两边管脚的距离是很难算的,先不管距离放下去,通过量最外边的距离,看下少多少,多多少,再算出要移动多少
这个经验,百试不爽,且由于会测量,测量属于检查,能大大减少出错的几率。 $ v: [" g) |$ t) D
封装的原点设在哪? 默认是设置在封装中心的,但是,对于三极管,座子等找中心是很难的,因此: 芯片封装设置在中心 座子等异形的设置在 1 脚
算出这封装的中心,把原点改过去。 接下来画丝印,本体丝印大小为: 纳尼?5.13??? 丝印不用精确到小数点后两位,加工的误差都不止这一点,不按四舍五入,用往前一位的方法: 3.95直接取4,5.13直接取5.2
长为4,高为5.2,执行画2D线的命令,选择丝印画在这个层,Package是封装的意思,Silkscreen_Top是封装顶层。 把线宽修改为0.1524(6mil),太细了板厂生产不出来的。 在命令栏输入(每次输入后回车): x 0 0 再输入: x 4 0 x 4 5.2 x 0 5.2 x 0 0 一个矩形就画好了。 移动矩形框时,修改下“移动形式”为“Body Center”,按中心移动,这时鼠标光标在矩形框的正中心。 在命令栏输入: x 0 0 自动以封装正中心放置了。 如果没有下图左上角的圆圈和斜线,在PCBA(生产出来的板子)是无法辨别方向的,因此,需要加上一脚标识。 - 高度属性/ F- @' |8 f0 R# f' f: c9 y6 s
装配层在生产中是不用表现出来的,只是用来看的,所以没有线宽的要求,线宽用0。 跟着丝印层的描一遍就行。 添加文本,在“REF DES - Silkscreen_TOP”,“REF DES - Assembly_TOP”,“Component Value - Silkscreen_TOP”,这三个层输入个“#”。 如果要规范点,可以输入该元件的前缀,比如SOP8是芯片,输入“U*”,自己一个人用的没有啥必要。 这里输入的“#”,是一个临时的数据,会以原理图上的命名为准。 这几部做好了,如下图所示,#的位置没关系,后面要调丝印的。 最后,给封装增加安全区域,安全区域可以比器件稍大。 用铜箔命令,在“Package Geometry”,绘制一个矩形框。 通过下面命令,Find上选择“Shapes”。 选中铜皮,弹出下图对话框,设置封装高度。 - 管脚序号
" S! f. ~1 t+ z* c8 E( Y
修改下管脚编号,封装97%都是逆时针的管脚排序。 5 w7 t( x0 J7 n4 h$ u
保存一下,一个封装就做好了。 封装名怎么取,这是一个大课题,后面我再补充,这个封装按:SOP8-4X5_2-1_27命名。
* X6 o: ~7 s6 NEDA365外包项目封装出问题是我记忆犹新的一次翻车经历,导网表时缺少一个TSSOP16的封装,我搜了一下PADS软件自带的库里面有类似的封装,直接用了自带的库里面的SSOP16替代着先把网表导进去。把问题汇总一下,一起反馈给跟我对接的版主。 好记性不如烂笔头,吃顿饭啥事都忘了。 等板子生产出来,版主给我反馈了封装出了严重问题,最终客户非常不满意。 那一刻,我不知道怎么回版主的信息,这么大的一个项目,桶那么大的篓子。 我想说这个项目的设计款,我不要了,但仔细一想,万一对方回个:好,客户这边也不想给设计费。 在美滋滋的设计费面前,我懦弱了。 到了吃饭的点,先吃饭吧,吃顿饭啥事都忘了。 上图红色的我库里调的封装,蓝色的是正常的封装。 下午上班,版主又给我发了信息,我回了个:啊。 后面压力没有给到我这边,也没扣我的钱。EDA365抗了下来,现在想着还是有点愧疚。 一定一定和核对规格书 用替代的封装,一定一定要及时沟通,并得到反馈 % C5 N y& m6 H. K$ N/ ?) o. l" o
还有一次,是一款国内知名芯片设计公司的板卡,一个硬盘的PCB封装,管脚序号顺序标错了。
; G' f6 `% x( @8 N+ f( N" Q Y6 ?* l1 i0 [1 t' T
最终这个项目设计费尾款没有收到,客户还说过要赔偿误工费。 $ p$ N1 J! E- K. O/ Q
一个封装做错了,足以坏掉一锅粥。 $ C: ^0 B5 g9 i& s* `8 o" M9 V
; }7 f5 w p" @' E7 k" G" v* ] |