PCB 二:AD 原理图绘制以及PCB绘制
本文简单收集了AD软件在绘制PCB电路板的一些资料,还有遇到的一些问题,并记录一些常用的操作。
1【AD】Altium Designer 原理图的绘制
2【AD】Altium Designer PCB文件的绘制(上篇:PCB基础和布局)
3【AD】Altium Designer PCB文件的绘制(下篇:PCB布线和后续)
4 PCB设计AD规则设置(按照嘉立创设置)
01 电路板的物理边框
电路板的物理边界即为PCB的实际大小和形状,板型的设置是在“Mechanical 1(机械层1)”上进行的。
02 边线框的设置:放置->走线。一般板型定义为矩形

03 板形的设置:设计->板子形状->根据板子外形生成线条。需要注意的是:首先需要先选中一个封闭的边界;
先选中线框,然后再截取形状
04 Altium Designer一般有以下六种类型的工作层:
Signal Layers(信号层):即铜箔层,用于完成电气连接。如Top Layer、Mid Layer、Buttom Layer;
Internal Planes Layers(中间层):也称为内部电源与地线层,也属于铜箔层,用于建立电源和地线网络。如Internal Layer;
Mechanical Layers(机械层):用于描述电路板机械结构、标注及加工等生产和组装信息所使用的层面,不能完成电气连接特性。如Mechanical Layer;
Mask Layers(阻焊层):用于保护铜线,也可以防止焊接错误。如Top Paste(顶层锡膏防护层)、Bottom Paste(底层锡膏防护层)、Top Solder(顶层阻焊层)、Bottom Solder(底层阻焊层);
SilkScreen Layers(丝印层):也称为图例,通常用于放置元件标号、文字和符号,以标示出各零件在电路板中的位置。如Top Overlay(顶层丝印层)、Bottom Overlay(底层丝印层);
其它层:Drill Guides(钻孔)、Drill Drawing(钻孔图)、Keep-Out Layer(禁止布线层)。
电路板层的颜色与显示设置:设计->板层颜色;右键->选项->板层颜色。
05 层数不同的电路板(AD 默认双层板):
单面板:PCB中元件集中在其中的一面(元件面),导线集中在另一面(焊接面);
双面板:电路板的两面都可以布线,不过要同时使用两面的布线就必须在两面之间有适当的电路连接操行,这种电路间的桥梁叫做过孔。过孔是在PCB上充满或涂上金属的小洞,它可以与两面的导线相连接。在双层板中通常不区分元件面和焊接面;
多层板:常用的多层板有4层板、6层板等。简单的4层板是在Top Layer(顶层)和Bottom Layer(底层)的基础上增加了电源层和地线层,这样的好处极大程度地解决了电磁干扰的问题;6层板通常是在4层板的基础上增加了两层Mid Layer。
电路板层的层数设置:设计->层叠管理,右键->选项->层叠管理。
06
PCB禁止布线区设置:放置->禁止布线->路径。需要注意的是:只能在Keep-Out Layer层中进行操作;其次所绘制的路径必须是一个封闭的边界。
也可以用这种方式来对板子进行挖孔
07 原理图封装导入PCB电路图中
原理图与PCB图的同步更新:
设计->Update Schematic in …PrjPCB(PCB图的修改更新到原理图);
设计->Import Changes From …PrjPCB(原理图的修改更新到PCB图)。
导入网络报表的一般步骤:
打开对应的.SchDoc(原理图文件)和.PcbDoc(PCB文件)文件,使两个文件都处于打开的状态;
在原理图文件中,设计->Update PCB Document …PcbDoc->生效更改,执行合法性校验;
验证完能在PCB上执行所有的更新操作(每一项的检测一栏都是√标记),->执行更改,确认无误。
08
布线的时候,尽量避免线与线之间平行,垂直的地方,需要加泪滴
使用的线宽一般为10mil(0.254mm)
09 铺铜
工具->铺铜->铺铜管理器
一般铺铜网络为GND或VCC,Remove dead coper 去掉死铜,
配置好后,重新铺铜->强制重新铺铜

10 DRC检查
工具->设计规则检查
再,运行DRC

我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%
在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList()Obt
作为新的阿里云用户,您可以50免费试用多种优惠,价值高达1,700美元(或8,500美元)。这将让您了解和体验阿里云平台上提供的一系列产品和服务。如果您以个人身份注册免费试用,您将获得价值1,700美元的优惠。但是,如果您是注册公司,您可以选择企业免费试用,提交基本信息通过企业实名注册验证,即可开始价值$8,500的免费试用!本教程介绍了如何设置您的帐户并使用您的免费试用版。关于免费试用在我们开始此试用之前,您还必须遵守以下条款和条件才能访问您的免费试用:只有在一年内创建的账户才有资格获得阿里云免费试用。通过此免费试用优惠,用户可以免费试用免费试用活动页面上列出的每种产品一次。如果您有多个帐
我的ruby脚本从命令行参数获取某些输入。它检查是否缺少任何命令行参数,然后提示用户输入。但是我无法使用gets从用户那里获得输入。示例代码:test.rbname=""ARGV.eachdo|a|ifa.include?('-n')name=aputs"Argument:#{a}"endendifname==""puts"entername:"name=getsputsnameend运行脚本:rubytest.rbraghav-k错误结果:test.rb:6:in`gets':Nosuchfileordirectory-raghav-k(Errno::ENOENT)fromtes
文章目录认识unity打包目录结构游戏逆向流程Unity游戏攻击面可被攻击原因mono的打包建议方案锁血飞天无限金币攻击力翻倍以上统称内存挂透视自瞄压枪瞬移内购破解Unity游戏防御开发时注意数据安全接入第三方反作弊系统外挂检测思路狠人自爆实战查看目录结构用il2cppdumper例子2-森林whoishe后记认识unity打包目录结构dll一般很大,因为里面是所有的游戏功能编译成的二进制码游戏逆向流程开发人员代码被编译打包到GameAssembly.dll中使用il2ppDumper工具,并借助游戏名_Data\il2cpp_data\Metadata\global-metadata.dat
文章目录概念索引相关操作创建索引更新副本查看索引删除索引索引的打开与关闭收缩索引索引别名查询索引别名文档相关操作新建文档查询文档更新文档删除文档映射相关操作查询文档映射创建静态映射创建索引并添加映射概念es中有三个概念要清楚,分别为索引、映射和文档(不用死记硬背,大概有个印象就可以)索引可理解为MySQL数据库;映射可理解为MySQL的表结构;文档可理解为MySQL表中的每行数据静态映射和动态映射上面已经介绍了,映射可理解为MySQL的表结构,在MySQL中,向表中插入数据是需要先创建表结构的;但在es中不必这样,可以直接插入文档,es可以根据插入的文档(数据),动态的创建映射(表结构),这就
FPGA时钟和时钟域时钟树所谓时钟树为FPGA内部资源,分:全局时钟树,区域时钟树,IO时钟树原则上优先使用全局时钟树,在GT接口上使用IO时钟树,一般工具也会对GT时钟加以限制;时钟树使用方式正确的物理连接FPGA会由物理管脚专门用于全局时钟设置,通过查询数据手册可以在PCB设计阶段进行确认,当外部时钟接入此管脚时,工具会自动占有全局时钟树资源,当接入普通信号时不会分配时钟树资源;恰当的代码描述原语的使用,即BUFG的使用,可以将PLL的输出等内部时钟进行全局时钟资源的分配;IO时钟资源需要参考相应接口手册,以ultrascale的GTH为例,其JESD204的时钟方案针对不同的子类会由不同
集成背景我们当前集群使用的是ClouderaCDP,Flink版本为ClouderaVersion1.14,整体Flink安装目录以及配置文件结构与社区版本有较大出入。直接根据Streampark官方文档进行部署,将无法配置FlinkHome,以及后续整体Flink任务提交到集群中,因此需要进行针对化适配集成,在满足使用需求上,尽量提供完整的Streampark使用体验。集成步骤版本匹配问题解决首先解决无法识别Cloudera中的FlinkHome问题,根据报错主要明确到的事情是无法读取到Flink版本、lib下面的jar包名称无法匹配。修改对象:修改源码:(解决无法匹配clouderajar
Feign微服务调用传递文件以及MultipartFile多媒体参数对象上游服务提供者测试服务提供者下游消费者异常原因错误解决方案通过Feign调用接口,来到jdk动态代理的invoke方法,拿到分发器,执行invoke逻辑。invoke方法:构建ReuqestTemplate以及请求报文,执行并解密,执行请求拦截器。可行的解决方案寻找SpringEncoder来源注册自定义Encoder编写自定义Encoder自定义文件上传接口标识注解编写encode逻辑测试总结上游服务提供者使用spring接收文件可以使用MultipartFile对象,并同时使用RequestPart注解标识这个一个多媒
我的代码如下。如果我删除最后一个end,它会说unexpectedendofinput,如果我把end放回去,它会说unexpectedkeyword结束。我看不出以下代码有什么问题。可以吗?n=gets.chomp.to_iarray=Array.new(n,true)whilep 最佳答案 增量运算符(++):p++在Ruby中不存在。你的意思是:p+=1 关于Ruby意外的关键字结束,以及意外的输入结束,我们在StackOverflow上找到一个类似的问题: