硬件电路设计入门奉献系列(一)
来源:互联网 发布:网络编辑岗位职责 编辑:程序博客网 时间:2024/06/04 23:35
硬件电路设计入门的一些必备知识和技巧
——献给那些刚开始或即将开始设计硬件电路的人
时光飞逝,离最初设计制作电路板已有2年多时间。刚刚开始接触电路板的时候,与你一样,充满了疑惑同时又带着些兴奋。在网上许多关于硬件电路的经验、知识让人目不暇接。信号完整性,电源完整性、EMI……准会把你搞晕。刚开始是痛苦的,俗语说不痛,则不通,初期的痛是成事的垫脚石,沉下心来,一件一件的把事情做好才能积累到经验和财富。
1、总体思路
设计硬件电路,大的框架和架构要搞清楚,但要做到这一点还真不容易。有些大框架也许自己的老师已经想好,自己只是把思路具体实现;但也有些要自己设计框架的,那就要搞清楚要实现什么功能,然后找找有否能实现同样或相似功能的参考电路板(要懂得尽量利用他人的成果,越是有经验的工程师越会懂得借鉴他人的成果)。
2、理解电路
如果你找到了的参考设计,那么恭喜你,你可以节约很多时间了(包括前期设计和后期调试)。立马复制粘贴吗?当然不是,还是先看懂理解了再说,一方面能提高我们的电路理解能力,而且能避免设计中的错误。没有找到参考设计? 没关系。先确定大IC芯片,找datasheet,看其关键参数是否符合自己的要求,哪些才是自己需要的关键参数,以及能否看懂这些关键参数,都是硬件工程师的能力的体现,这也需要长期地慢慢地积累。这期间,要善于提问,因为自己不懂的东西,别人往往一句话就能点醒你,尤其是硬件设计。
3、硬件电路设计主要部分
硬件电路设计主要是三个部分,原理图,pcb ,BOM表(物料清单)。原理图设计就是将前面的思路转化为电路原理图。它很像我们教科书上的电路图。pcb涉及到实际的电路板,它根据原理图转化而来的网表(网表是沟通原理图和pcb之间的桥梁),而将具体的元器件的封装放置(布局)在电路板上,然后根据飞线(也叫预拉线)连接其电信号(布线)。完成了pcb布局布线后,要用到哪些元器件应该有所归纳,所以我们将用到BOM表。
4、设计工具
用什么工具?Prote,也就是AD容易上手,在国内也比较流行,应付一般的工作已经足够,适合初入门的设计者使用。个人推荐使用cadence & allegro。
其实无论用简单的protel或者复杂的cadence工具,硬件设计大环节是一样的(protel上的操作类似windwos,是post-command型的;而cadence的产品concept & allegro 是pre-command型的,用惯了protel,突然转向cadence的工具,会不习惯就是这个原因)。设计大环节都要有①原理图设计②pcb设计。③制作BOM表。
简要谈一下设计流程(步骤):
1、原理图库建立。
要将一个新元件摆放在原理图上,我们必须得建立改元件的库。库中主要定义了该新元件的管脚定义及其属性,并且以具体的图形形式来代表(我们常常看到的是一个矩形(代表其IC BODY),周围许多短线(代表IC管脚))。protel创建库及其简单,而且因为用的人多,许多元件都能找到现成的库,这一点对使用者极为方便。应搞清楚ic body,ic pins,input pin,output pin, analog pin, digital pin, power pin等区别。
有了充足的库之后,就可以在原理图上画图了,按照datasheet和系统设计的要求,通过wire把相关元件连接起来。在相关的地方添加line和text注释。wire和line的区别在于,前者有电气属性,后者没有。wire适用于连接相同网络,line适用于注释图形。这个时候,应搞清一些基本概念,如:wire,line,bus,part,footprint,等等。
3、生成网表
做完这一步,我们就可以生成netlist了,这个netlist是原理图与pcb之间的桥梁。原理图是我们能认知的形式,电脑要将其转化为pcb,就必须将原理图转化它认识的形式netlist,然后再处理、转化为pcb。
得到netlist,马上画pcb?别急,先做ERC先。ERC是电气规则检查的缩写。它能对一些原理图基本的设计错误进行排查,如多个output接在一起等问题。(但是一定要仔细检查自己的原理图,不能过分依赖工具,毕竟工具并不能明白你的系统,它只是纯粹地根据一些基本规则排查。)
从netlist得到了pcb,一堆密密麻麻的元件,和数不清的飞线是不是让你吓了一跳?呵呵,别急还得慢慢来。
- 硬件电路设计入门奉献系列(一)
- 硬件电路设计(转载)
- 硬件电路设计流程系列—终结篇
- 硬件电路设计
- 硬件电路设计
- 硬件电路设计
- 硬件电路设计基础:三极管(1)
- 硬件电路设计基础:三极管(2)
- 硬件电路设计基础:三极管(3)
- 硬件电路设计基础:场效应管(1)
- 硬件电路设计基础:场效应管(2)
- 防反接电路设计----(一)
- STM32硬件电路设计注意事项
- 什么是硬件电路设计
- STM32硬件电路设计注意事项
- 什么是硬件电路设计
- 硬件电路设计之电源
- 硬件电路设计过程
- Android Context 是什么?
- [Android] 浅析总结 AS 中 Gradle 配置运行
- JDBC 事务处理
- oracle系统包—-dbms_output用法
- Apache SAMOA on Flink试用
- 硬件电路设计入门奉献系列(一)
- 图遍历
- UVA11988 链表非指针
- 冒泡排序
- Android 实时视频编码—H.264硬编码
- IAR for STM8 为何可以不配置时钟?
- HLS学习(一)HLS介绍
- (1)Oracle 11g之安装数据库
- 命令格式