这几天工作中遇到制作 gerber 的问题,确实让我郁闷了一 番,为了方便大家,不要再受其苦,特将这一过程写成文档供有这方面需要的同仁们参考.

1 protel99se 打开要生成 gerber 的 pcb 设计文档,在file->CAM Manager 然后出现 Output Wizard 点击 next

2 按照下图选择 gerber,然后点击next

3 直至出现下图,分别选中单位 millimeter 和比例 4:4 再次点击 next(其实,选择单位是无所谓的,但要与 NC drill 的一致才行4:4 表示小数点前面四位有效数字,小数点后 4 位有效数字

4 在下图中选择要输出的 gerber 层,一路点击 next

5 点击 tools 菜单的 proference 出现下图,在export cam outputs 栏选择要输出 gerber 文件的路径。 然后 ok

6 点击 tools 菜单 generrate CAM Files,生成 gerber 文件。

7 生成后的 gerber 文件可以用 CAM350 软件打开。

到此,先别得意…….哈哈。做完以上步骤,其实漏掉了一个最重要的东西,那就是钻孔层,那么下面介绍如何产生钻孔层文件。 如下图右击鼠标,选中Insert NC Drill…然后回车

8 在下图中选择 Units 单位为 milmeter,Format(格式)为 4:4,然后点击 ok(其实,选择单位是无所谓的,但要与 NC drill 的一致才行。4:4 表示小数点前面四位有 效数字,小数点后 4 位有效数字)。

9 直接 F9 或者在 tools 菜单下选择 Generate CAM file 就会在指定的目录中加入钻孔文件。如下图。

10 在导入的 gerber 文件中添加钻孔属性表,在 protel 的 plce-〉String,此时按 tab 键,在出现的 text 文本框中点击下拉箭头,在出现的序列中选择.Legend.,在layer框选中 DRILL DRAWNING(钻孔描述层)点击 OK,将其放在 pcb 板框边就可以了。

导入 gerber 后会出现如下所示

11导出后,客户反映 gerber 有一层无法导入,且在导入的Cam350中出现客户提出的如下情况

此原因是在 pcb 源文档中存在属性为(长 0,宽 0)的 焊盘或线条,这个问题着实让人郁闷了很久,因为象这样的焊盘或线条,我在原文档中无法寻找,放大也没有用,只能删掉一块导出看有问题,继续删除,象大海捞针一样艰难。幸运的是很快发现了这个 0 线条,删除后,重新出 gerber OK

12 导入 cam350 出现很多隔离 pad 與  THERMAL PAD 相 TOUCH。导致客户无法制作。 如图中黄色区域。

又一次陷入了郁闷之中,不知所措。后来我分析在双面板时,gerber没问题,多层板也只是提到 internal plane 有问题,再观看上图想如果能将 THERMAL Pad 的大小改变不就可以了吗。于是想到了 在 protel 中的规则设置中可以改变,以下就是解决问题的步骤。

1 打开 protel,在 Dsign--->rules…如下图点击

2. 在出现的图中选择 manufacturing 指向Power Plane Clearance,双击下方框中的 PlaneClearance栏并打勾在其前。

3 在出现的下图中填入 6mil,然后 ok

4 在下图中选择 PowerPlaneConnectStyle,然后击下方框中的PlaneConnect并打勾在其前

6 在出现的图中将 Exapansion 填入 6mil,dir gap 也填入6mil 然后 ok

完成以上步骤后,重新生成 gerber 导入后出现下图

时途中的隔离 pad THERMAL PAD 彻底分开了。我想这次 应该完全正确的出了 geber 文件了。

Protel99se生成gerber文件的方法的更多相关文章

  1. 调试SQLSERVER (一)生成dump文件的方法

    调试SQLSERVER (一)生成dump文件的方法 调试SQLSERVER (二)使用Windbg调试SQLSERVER的环境设置调试SQLSERVER (三)使用Windbg调试SQLSERVER ...

  2. 每天进步一点点------Allegro生成Gerber文件

    Allegro如何生成光绘文件 -------------------制板用文件有钻孔文件和底片文件,最后给板厂的文件为:---------------------------普通二层板:nc_par ...

  3. MDK5生成BIn文件的方法

    配置MDK5 生成bin文件的 第一步:方法打开option for Target 第二步:选择 user 第三步:找到After Build/Rebuild 第四步:勾选run,点击文件选择小图标选 ...

  4. 详解如何用AD 生成Gerber文件

    以上gerber文件就出完了;  下面步骤是:进行导出" 钻孔文件 ". 以上钻孔文件就出完了;  到此就全部完成输出了. 下面的操作,也可以不用导的 .下面步骤是:进行导出&qu ...

  5. 为Quartus工程生成rbf文件的方法

    rbf文件是Quartus编译生成的fpga配置文件的二进制数据量格式的文件,主要用于使用外部主机通过PS方式配置FPGA. 在含ARM硬核的SoC FPGA中,可以使用HPS配置FPGA,配置时分为 ...

  6. 使用Visual Studio将C#生成DLL文件的方法

    1.命令方式 打开Visual Studio安装目录下的开发人员命令提示 译 File.cs 以产生 File.exe csc File.cs 编译 File.cs 以产生 File.dll csc ...

  7. Keil如何生成bin文件【Keil生成Bin文件的方法】

    使用过Keil的同鞋都知道,现在Keil中默认可以输出.axf的调试文件和可以通过钩选输出的.hex可执行文件,没有bin(二进制)文件的输出选项.可是偏偏某些时候需要或者习惯性的使用.bin文件来进 ...

  8. Ubuntu ./configure 半途终止 导致没有生成makefile文件 解决方法

    在安装thrift的时候,解压包进入目录,执行命令: ./configure 之后,发现某些包没有安装,导致configure到一半的时候退出,接着make发现没有makefile文件.估计是我系统安 ...

  9. 使用CFile生成log文件的方法

    下面实例是在退出程序点击退出按钮时,在主程序的根目录下生成一个Log记录,用来记录程序的退出时间,具体实现代码与调试代码如下: void CDebugDlg::OnClose(){ // TODO: ...

随机推荐

  1. IIS7.0/7.5 MVC3 实现伪静态

    routes.MapRoute(            "Default",            "{controller}/{action}.html/{id}&qu ...

  2. ContentType 属性 MIME

    ".asf" = "video/x-ms-asf" ".avi" = "video/avi" ".doc&qu ...

  3. Heritrix个性化设置抓取目标

    本文是Heritrix的使用的高级篇,针对对Heritrix已经能够运行的码农朋友们! 我们在抓取网页的时候,网页的链接中往往会包含有js.css.图片.视频等文件,第一次执行抓取任务的时候,许多农民 ...

  4. JavaSE思维导图(二)

  5. ToDoList-学习中看到的知识盲点

    1. java中的volatile关键字的作用 2. java类加载器 3. Android源码编译 4. MediaPlayer的用法 5. Html5和web app

  6. SQL server 和Oracle 序列

    1,SQL Server序列创建与使用 BEGIN IF EXISTS (SELECT * FROM sysobjects WHERE name = 'event_seq') DROP SEQUENC ...

  7. NOPI导出Excel

    NOPI导出Excel /// <summary> /// 导出的方法 Excel样式 /// </summary> /// <param name="ds&q ...

  8. textarea中的空格与换行

    当在一个textarea标签中键入一个回车时,实际上会插入2个符号:\n\r在javascript里, line breaks用\n表示when you pull text into Javascri ...

  9. linux杂记(?)命令别名——alias

    linux中的命令别名--alias linux中的命令别名--alias 1. 用命令alias可以查询系统中有哪些可用的命令别名 2.添加命令别名 回车查看, 别名建立成功 3.查询命令的地址ty ...

  10. Java 遍历文件下jpg图片并解析图片

      package filetest; import java.io.File; import java.io.FilenameFilter; import java.io.IOException; ...