今天刚把做好的PCB文件交给工厂去制板,阶段工作告一段落,来一个小总结。

  前一段时间复习完C语言之后,在中国知网上搜索用单片机实现的小制作,找比较有意思,又不需要太多外专业知识的东西,然后就相中了超声波测距系统。实验室有项目使用到了超声波测距,有部分电路图可以直接用到我这个系统上,电路正确性可以保证,所以可行性有了,决定立即动手。

  单片机的最小系统原理图一搜一大堆,超声波收发电路在以前的项目中进行截取,温度补偿电路也可以在知网论文中找到,总原理图搞定。然后就是进行PCB的设计。这篇博文就具体写在进行PCB制作的过程中遇到的问题,并记录解决方法。本科学过protel,因为好久没用了,忘得差不多了。现在比较流行用Altium Designer画图,就试着用了,遇到很多问题。

1.软件在英文和中文之间的切换:(Altium Designer 13.1)

DXP/preference/system/general/localization,将use localized resources选中即为中文,不选中即为英文。

不过那个中文翻译的水平不怎么样。

2.画STC89C52的原理图库时,引脚属性的设置。

Designator填的是引脚的编号1-40,display name填引脚的名字。也就是说放置好引脚后,引脚的里面显示引脚名字,外面显示编号。designator里的编号和制作PCB库时的引脚标号是一一对应的。

刚开始我画的原理图库全部把这两个弄反了,结果原理图一直不能导入到PCB文件。

3.一个原理图库文件(.schlib)里面可以包含多个元件的库。

一个工程不需要建立很多原理图库文件,一个就好。PCB库文件类似。

刚开始我给每个元件建了一个库文件,后来使用软件的过程中发现了一个库文件可以包含很多元件。

4.注意原理图中把一个元器件分成两部分画的情况。

LMV822MM是一个有两级运放的芯片,分成两部分用,一次用一级。

在原理图库中将一个芯片绘制成两部分的方法:先正常画第一部分,画完之后选择tool/new part,然后在出现的窗口中画另外一部分即可。

第一次我没有看清电路,以为有两个芯片,当我把PCB都制作完成,在铺铜前检查电路时才发现这个问题,导致了很多重复工作。

5.原理图比较大时,画在两张sheet上的处理办法

首先已有两张画好的原理图,相关的部分已经用标号连接。然后新建一个原理图,比如global.sch,在global.sch图中依次点击Design/Creat sheet symbol from sheet or HDL,然后在出现的窗口中依次选择原理图文件,放置在global.sch中即可。

6.原理图制作好之后,编译通过,然后新建PCB文件并保存之后才能将原理图导入到PCB文件中。

我在制作过程中遇到了几次不能导入原理图到PCB文件的情况。

7.电位器在标准库里的封装和实物不相符,需要更改库里的封装。

标准库的3脚(在边上)是可调端,实际器件的2脚(在中间)是可调端。

8.串口在PCB文件中的摆放方向:让突出的那段在keepout线外。

突出的那段刚好是要连接的口。

9.画keepout层边框。

画直线时,为了避免线向上或向下变动45度,在画线过程中按空格键,就能保证直线不会拐了。

10.PCB文件中背景在格子和圆点之间切换的快捷键:V-G-V

个人觉得圆点比较舒服。

11.如果要布单面板,但有少部分线在底层走更方便时,可以用直接在PCB文件中加0电阻的方法。

假设A和B要连在一起,中间有很多线阻隔。可以放置0电阻,让这些阻隔的线刚好在0电阻的两个焊盘之间,然后让A和B分别连接0电阻的两个焊盘,这时A和B就连接好了。焊接电路板时,用导线或者电阻的引脚代替0电阻即可。

用这个方法可以在单面板上减少很多绕很远的线。

12.修改PCB中同类型的东西。可以先选择其中一个,再右键用find similar objects功能,将要修改的那个类型中的any改为same,点击ok确定。然后在弹出的PCB Inspector中对要修改的项进行修改。

13.刚开始做PCB之前要考虑到板子的尺寸,尺寸决定了成本。

我本来计划用两块板,一块是单片机的控制电路,包括温度测量,串口通信,结果显示等,另一块是超声波的收发。PCB都弄完,准备送到工厂去制板,咨询后发现好不划算,10*10以内的板子统一价150,总共得300。不得已我又得重新做PCB,合成一块板,并控制在10*10。

14.双面板上的直插元件的焊盘在两面都有焊锡,相当于过孔。焊盘本身过孔。

15.如何高亮显示某个网络连接。

按住CTRL,点击网络中的某一条线即可。在右下角的mask level 中还可以调节高亮网络和变暗网络的亮度。

16.当强制把两个没有连接关系的焊盘连接在一起时,会出现连接不上的情况。可以通过修改preference/PCB Editor/interactive Routing中冲突走线的方式来解决。

会有连接毫不相干的焊盘的时候吗?有的,例如添加0电阻时,某个焊盘要和0电阻的焊盘相连。

17.PCB中只显示一层,隐藏其他层的方法。

PCB文件下,按快捷键L,依次选择view options/single layer mode/hide other layers.

或者现在PCB文件视图的底部选择要显示的层,然后直接用快捷键shift+s。

18.生成元器件清单。

reports/project reports/bill of materials,在左纵列的下边选中value,在右边就会显示value这一项,但并不会按照value进行分类,比如你有很多电阻,电阻值各不一样,右边的窗口中就把所有的电阻显示为一行,value项里依次把所有的电阻值列了出来,这样的表不是很方便。解决方法是在左纵列的下面将value拖动到左纵列的上面,这样右面的窗口中就会按照value进行分类了。也就是说右边的表格会按照左纵列上面的项目进行分类。

19.检测布好的PCB中是否有漏布的线。

reports/board information/Report...,然后勾选Routing information,点击report即可。在弹出的页面有100%这个字眼就说明没有漏线。

20.Altium Designer制作的PCB文件保存为protel99se的格式:file/save copy as,选择格式为PCB4.0 binary file。

21.生成gerber文件。

交给工厂去制板时,给PCB文件或者gerber文件。gerber文件的生成:

依次点击File/Fabrication Outputs/Gerber Files,在弹出的gerber setup窗口中的general中选择单位和精度,在layers中选择导出的层,在Apertures里选中“Embedded apertures(RS274X)”,点击ok就生成了gerber文件

Gerber文件各层扩展名与PCB原来各层对应关系

(1)扩展名的第一位g一般指gerber的意思。 
(2)扩展名的第二位代表层,b代表bottom,t代表top,“g+数字”代表中间线路层,“g+p+数字”代表电源层。 
(3)扩展名的最后一位代表层的类别。l是线路层,o是丝印层,s是阻焊层,p代表锡膏,m代表外框、基准孔、机械孔, 
顶层Top (copper) Layer : .GTL

底层Bottom (copper) Layer : .GBL 
中间信号层Mid Layer 1, 2, ... , 30 : .G1, .G2, ... , .G30

内电层Internal Plane Layer 1, 2, ... , 16 : .GP1, .GP2, ... , .GP16

顶丝网层Top Overlay : .GTO

底丝网层Bottom Overlay : .GBO

顶锡膏层Top Paste Mask : .GTP

底锡膏层Bottom Paste Mask : .GBP

顶阻焊层Top Solder Mask : .GTS

底阻焊层Bottom Solder Mask : .GBS

禁止布线层Keep-Out Layer : .GKO 
机械层Mechanical Layer 1, 2, ... , 16 : .GM1, .GM2, ... , .GM16

顶层主焊盘Top Pad Master : .GPT

底层主焊盘Bottom Pad Master : .GPB 
钻孔图层Drill Drawing, Top Layer - Bottom Layer (Through Hole) : .GD1 Drill Drawing, other Drill (Layer) Pairs : .GD2, .GD3, ...

钻孔引导层Drill Guide, Top Layer - Bottom Layer (Through Hole) : .GG1 Drill Guide, other Drill (Layer) Pairs : .GG2, .GG3, ...

Altium Designer 使用小结的更多相关文章

  1. Altium Designer 的entry sheet ,offsheet和port作用(转载)

    1.图纸结构 图纸包括两种结构关系: 一种是层次式图纸,该连接关系是纵向的,也就是某一层次的图纸只能和相邻的上级或下级有关系: 另一种是扁平式图纸,该连接关系是横向的,任何两张图纸之间都可以建立信号连 ...

  2. 【PCB】【AD使用】Altium Designer 的entry sheet ,offsheet和port作用

    Altium Designer之多图纸设计 1.图纸结构 图纸包括两种结构关系: 一种是层次式图纸,该连接关系是纵向的,也就是某一层次的图纸只能和相邻的上级或下级有关系: 另一种是扁平式图纸,该连接关 ...

  3. Altium Designer PCB双面板制作打印操作步骤

    Altium Designer PCB双面板制作打印操作步骤百度知道:http://jingyan.baidu.com/article/335530da83441c19cb41c3db.html?st ...

  4. Altium Designer XX 重新定义板框形状和大小的方法

    Altium Designer15 重新定义板框形状和大小的方法:重新定义板框形状和大小的方法.很简单,点击数字键"1",就会看到板框界面变绿了这时候你在去点击菜单栏里的Desig ...

  5. Altium Designer 15 --- Make 3D PCB Library with Rhinoceros

    in the mode of "渲染模式" in the mode of "着色模式" Principle 1 : In the mode of "着 ...

  6. Altium Designer 15 --- Design PCB Frame by Rhinoceros

    step 1: Draw a PCB shape and the main component placed in the PCB. The drawing sheet should be in th ...

  7. Altium Designer 多个输出相连等问题报错解决方法

    问题: Altium Designer软件中,项目编译时,Message面板出现,如下错误: Net NetR121_1 contains multiple Output Pins; PC10 con ...

  8. Altium Designer的PCB定位槽制作

    Altium Designer的PCB定位槽制作 1.使用焊盘代替. 操作很简单,但孔壁有镀铜. 2.定位孔制作. 先在Keep-Out layer放置一个需要大小的圆, 然后按快捷键T-V-T,这时 ...

  9. 关于如何使用Altium Designer 10以上版本官方库

    开卷有益:如果本帖不适合在此板块,请斑竹自行删除,发帖的目的纯属报答各位Amofans.    Altium公司的Altium Designer 09版本及以下还能到Altium官网下载第三方Labr ...

随机推荐

  1. 14)Java中Assert

    J2SE 1.4在语言上提供了一个新特性,就是assertion(断言)功能,它是该版本在Java语言方面最大的革新.在软件开发中,assertion是一种经典的调试.测试方式. jvm 断言默认是关 ...

  2. c++ 类与函数中static变量初始化问题(转)

    首先static变量只有一次初始化,不管在类中还是在函数中..有这样一个函数: void Foo() { ; // initialize std::cout << a; a++; } 里的 ...

  3. CodeForces 569A 第八次比赛 C题

    Description Little Lesha loves listening to music via his smartphone. But the smartphone doesn't hav ...

  4. hdu 1277 全文检索

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1277 全文检索 Description 我们大家经常用google检索信息,但是检索信息的程序是很困难 ...

  5. 【javascript】html5中使用canvas编写头像上传截取功能

    [javascript]html5中使用canvas编写头像上传截取功能 本人对canvas很是喜欢,于是想仿照新浪微博头像上传功能(前端使用canvas) 本程序目前在谷歌浏览器和火狐浏览器测试可用 ...

  6. o2o家庭助手demo

    前段时间跟一个同事出去游玩,在回来的大巴上面我们聊到了现在比较热门的o2o,说实话我自己早就想要在这个领域好好地玩一把.但是一直苦于没有很好地idea,再加上自己之前一直没有这方面的创业经验,所以一直 ...

  7. Android 上下文菜单实现

    1.覆盖Activity的onCreateContenxtMenu()方法,调用Menu的add方法添加菜单项(MenuItem). 2.覆盖Activity的onContextItemSelecte ...

  8. IIS 8.5配置.net网站[花了半个多小时]

    1.默认安装了IIS部分功能.参考http://www.cnblogs.com/xuanhun/p/4201645.html 2.运用程序连接池, 使用集成 模式 3.运用程序连接池,设置启用32位应 ...

  9. STM32管教复用与重映射关系

    摘自:http://blog.csdn.net/lincheng15/article/details/51789093 概括一下:复用就是一个引脚有几个功能,1.做普通IO输入输出 2.其他外设的输入 ...

  10. 16位CPU多周期设计

    16位CPU多周期设计 这个工程完成了16位CPU的多周期设计,模块化设计,有包含必要的分析说明. 多周期CPU结构图 多周期CPU设计真值表 对应某一指令的情况,但仅当对应周期时才为对应的输出,不是 ...