1、电子电路综合设计与装配1、Altium Designer10介绍、原理图及其模板常规设计 1.1 什么是 Altium DesignerAltium Designer 提供了统一的应用方案,是 Protel(经典版本为 Protel 99se)的升级版本,其综合电子产品一体化开发所需的所有必须技术和功能。Altium Designer 在单一设计环境中集成板级和 FPGA 系统设计、基于 FPGA 和分立处理器的嵌入式软件开发以及 PCB版图设计、编辑和制造。并集成了现代设计数据管理功能 , 使得 Altium Designer 成为电子产品开发的完整解决方案一个既满足当前,也满足未来开发需求
2、的解决方案。1.2 Altium Designer 10 的特点与过去以季节性主题(如 Winter09,Summer09)来命名的方案不同,而是采用新型的平实的编号形式来为新的发布版本进行命名。最新发布的 Altium Designer - Release 10 将继续保持不断插入新的功能和技术的过程,使得您可以更方便轻松地创建您的下一代电子产品设计。 Altium的统一的设计架构以将硬件,软件和可编程硬件等等集成到一个单一的应 用程序中而闻名。它可让您在一个项目内,甚或是整个团队里自由地探索和开发新的设计创意和设计思想,团队中的每个人都拥有对于整个设计过程的统一的设计视图。显著亮点如下:提
3、供了将设计数据管理置于设计流程核心地位的全新桌面平台。提供了新的维度,以供器件数据的搜寻和管理,确保输出到制造厂的设计数据具有准确性和可重复性。为设计环境提供供应链信息的智能链接,确保对元器件的使用有更好的选择 。提供了涵盖整个设计与生产生命周期的器件数据管理方案,而结构性的输出流程更是确保了输出信息的完整性。R10 系列的增强功能包括:输出 Output Job 编辑器、内电层分割加速改善、弹出式的多 边形铺铜管理器、Atmel QTouch 支持、自定制的笛卡尔直角和极坐标栅格、Aldec HDL 仿 真功能、实现比使用指针更多的 GUI 增强,以及随着 Altium Designer10
4、 临近发布日前,我 们将构建其中的更多酷炫功能。而且,其平台稳定性也得到了增强。1.3 整体流程 对于所面临的具体项目,工程师首先做的是不同方案整体原理设计,然后是方案比较与 确定,元件选择。 对方案中确定的整体电路或局部电路要做电路仿真,以此做电路参数估算 ,并借鉴仿真 结果修改设计方案中的缺陷。 1.3.3 设计原理图 原理图设计部分同时需要做的原理图库的设计,虽然 Altium Designer 10 软件自带一部 分库,但不是包含市面上所有的元件,尤其是最新推出元件。在原理图绘制过程中,有整体 原理图的复杂程度决定采用何种结构的设计方式。通常所说的层次原理图设计,就为工程师 做复杂电路
5、板提供了便捷。原理图设计后期,用 ERC(Electrical Rules Check) 工作查错,找出错误原因并修改原理图。1.3.4 设计组建的封装 对器件的封装设计,主要是查看器件手册。也可以直接用测量工具测量器件的实际工具, 然后再做封装。 1.3.5 PCB 板设计 工程师在确定 PCB 机械尺寸后,就将通过 ERC 测试的原路图导入 PCB 板中,根据项目的 实际要求设置 PCB 的规则,板的层数等。布局在 PCB 设计中占大部分时间,一个优秀的硬件 工程师对布局的要求是很苛刻,尤其是电磁兼容性问题。布局完成后接下来布线、泪滴、铺 铜,DRC(Designer Rule Check
6、 )测试。1.3.6 校对审核 工程师完成 PCB 设计后,需要对自己设计的电路进行校对,确定方案中设计的硬件电路 在设计中没有因特殊原因被误修改。对于复杂的电路板,多人分工合作,最终由 PCB 工程师 布线完成,更需要多人对各自设计的电路图与 PCB 部分进行校对,最终由项目工程师做整体 审核。1.3.7 文档整理 这部分主要分三部分人的工作:导出制板所需的 GERBER 文档,料单 (BOM) 生产,导出 原理图文件,打印输出。2、Altium Designer 10 建立项目Altium Designer 10 的所有电路设计工作都必须在 Design Explorer(设计管理器) 中
7、进行,同时设计管理器也是 Altium Designer 10 启动后的主工作接口。设计管理器具 有友好的人机接口,而且设计功能强大,使用方便,易于上手。因此本章将对设计管理器中 关于电路板设计的使用进行的介绍。2.1 打开 Altium Designer 10 软件在桌面双击 Altium Designer 10 快捷键,启动画面如图 2.1。图 2.1 Altium Designer 10 启动画面2.2 主菜单和主工具栏主菜单和主工具栏如图 2.2 所示。 Altium Designer 10 的主菜单栏包括 File(文件)、 View (视图)、 project (项目)、 Wind
8、ow (窗口)和 Help (帮助)等。左边为 Files Panels (文件工作面板),Navigator(向导),Projects(项目),右 边对应的是主工作面板,最下面的是状态条。其中项目栏是我们经常进行操作使用的地方, 需要说明的是左边的菜单栏目位置是灵活的,可以随自己的习惯进行移动。2.3 项目工程建立图 2.2 Altium Designer 10 新项目图 3.2 原理图模板设置框2.3.1 设置你需要的格式图 3.3 原理图模板内容编辑2.3.2 设计用到的“项目名称、设计人、”【Place】【Text String 】+【tab】,选择对应的选项项目名称:=Title设计
9、者:=Engineer审核人:=Address1版本序号:=Address2设计日期:=Date 对于 logo 的添加则用到【Place】【Drewing Tools 】【Graphic】,例如我们放 入一个 JPG 格式的“Dell”。完成效果如图 3.4图 3.4 完成后的原理图模板内容编辑2.4 元件原理图库设计和 PCB 封装的设计图 3.5 元件库和封装的建立建立新元件【Tools】 【New compoment】,这里以 24C02 为例。图 3.6 元件命名图 3.7 查看 24C02datasheet放置外形和管脚快捷键 P+R, 调整合适的小。放置管脚 P+P, 然后单击键
10、盘的 Tab 键弹出管脚属性对话框,修改相应的属性。图 2.8,放置外框图 2.9 放置管脚在 Pin Propertis 中,Display Name管脚定义,Designator 是管脚序列号,其后 有Visable,是否可见,在原理图中有些元件有衬底,我们通常将带衬底的管脚隐藏,管脚的长度 Length 可以根据需要设定。对有负信号,例如负电压,负电平复位脚等,需要添加 符号 , 如“VCC”表示负的 VCC 电平,类似数字电路中的非格式。图 2.10 管脚属性图 2.11 24C02 原理图查看 24C02 的 footprint,资料如下。图 2.12 24C02 footprint
11、 资料在 pcblib 环境下用向导制作元件封装。【Tools】 【 Compoment Wizard 】弹出下图,图 2.13 Compoment Wizard图 2.14 footprints 类型在 pcblib 环境下用向导制作元件封装。【Tools】 【 Compoment Wizard 】弹出下图,一般贴片的的引脚焊盘大于管脚 8mil 到 20mil,也可以大于这个数,根据具体的情况。对有有些 BGA 封装的,有时候焊盘还可能略小于管脚。图 2.14 管脚焊盘大小设置图 2.15 管脚间距大小设置图 2.16 管脚数目大小设置图 2.17 完成封装设计2.5 整体库制作下面介绍中
12、用 ACCESS 把数据表文件,原理图封装制作在一个整体库中,这样的优点是,能 将各个元件的信心综合在一个表格里,并在原理图中找到这些信息,在到处 BOM 的时候可以 将这些信息导出,便于采购确定元件,成本核算。图 2.18 整体库中的文件【File】 【New】 【Library】 【Database Library】建立, 在 access 中建立 .mdb 文件,注意命名与 Database Library 文件的一致性。图 2.19 【Database Library】设置在 Source database type 中 pass 中添加该文件,注意添加路径。图 2.20 access
13、 文件设置3.6 关于 room 在多通道设计中的应用图 3.1 同步信号均衡电路图 3.1 room 名称的设置图 3.2 元件后缀的重复名字在完成上述设置后,到 PCB 环境中对其中一个进行布线,单个布线完成,用格式刷,将其余的通道,操作如下。 在【Design】 【Rooms】 【Copy room formats】,鼠标点击布线完成的 room,再点击需要刷的 room,弹出下图。在下图中,主要元素是你所复制的内容,通过 Options 项确定,对于需要修改的其他 room,有 Apply to Specilied Channels 决定。图 3.3 格式刷设置图 3.4 单个 roo
14、m图 3.5格式刷后 room在以上设置完成后就是对原理图的编译,接下来我们以一个实例来展示下编译的过程在 Project 中compile PCB projects .prjPCB, 快捷键为 C+C,即可完成 图 3.6编译弹出如上图的对话框,如果没有弹出,在右下方有 Syetem 选项打开,里面有 Message 选项,打开便可看到,至于图中提示的,网络命名重复,这个是不会影响导入 PCB 时候的连线。在新建的 PCB 中导入编译的网络,具体的操作时,在原理图的环境下,单击 Design 中的Updata from sch to PCB 中,弹出下图,点击 Execute Changes
15、图 3.7 导入网络3.8差分对的有关操作对于差分对设计,尤其是高速电路时,差分要求等长处理,这是就会出现所谓的蛇形走线。在下面的两幅图中体现了独立的差分对和多对差分对的处理方法。 在差分对中主要是放置 Net 和差分对符号。Net 放置时注意放置 Net 的后缀,“_ P”,_N, 大小写都可以;另一个是放置差分对标号:【Place】【Driectives】 【Differential Pair】图 3.8差分对原理图差分对布线 P+I,图 3.9 差分对原理图原理图中缺少 net,或者 net 格式不正确,会出现 ERC 测试错误图 3.10 差分对报错没有放置差分对标号,在布线时,使用差
16、分走线,会报错。图 3.11 差分对报错图 3.12差分对在总线格式下图 3.13差分对总线格式下 PCB 布3、LED旋转电子钟概述 随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术,本文将介绍一种基于单片机控制的LED旋转电子钟。本设计以单片机STC12C4052AD为控制核心,由实时时钟模块、60秒旋转译码驱动模块等部分组成,60秒旋转译码驱动模块是由60个发光二级管组成,模拟“秒针”的行走。3.1次设计的要求(1)用4只LED数码管输出显示时和分。(2)可通过按键设置分时校时。(3)月计时误差小于45秒(4)用60只LED发光管旋转显
17、示,模拟“秒针”行走。3.2要功能 本设计完成了以下功能: (1)4只LED数码管显示当前时分(2)每隔一秒周边的60只LED发光管旋转一格。图3.1 60s电子旋转时钟效果图图3.2 60s电子旋转时钟实物4、系统硬件设计4.1系统设计框架及实现图4.1 电子钟系统原理图4.1.2 系统设计框图电子钟的原理框图如图2-2所示。它由以下几个部件组成:单片机STC12C4052AD、时分显示部件、60秒旋转译码驱动电路。时分显示采用动态扫描,以降低对单片机端口数的要求,同时也降低系统的功耗。时分显示模块、60秒旋转译码驱动电路以及显示驱动都通过STC12C4052AD的I/O口控制。图4.2 电
18、子钟系统设计框图4.2统硬件组成4.2.1 TC12C4052AD单片机及其引脚说明STC12C4052AD单片机是51系列单片机的一个成员,是8051单片机的简化版。内部自带2K字节可编程FLASH存储器的低电压、高性能COMS八位微处理器,与Intel MCS-51系列单片机的指令和输出管脚相兼容。由于将多功能八位CPU和闪速存储器结合在单个芯片中,因此,STC12C4052AD构成的单片机系统是具有结构最简单、造价最低廉、效率最高的微控制系统,省去了外部的RAM、ROM和接口器件,减少了硬件开销,节省了成本,提高了系统的性价比。STC12C4052AD是一个有20个引脚的芯片,引脚配置如
19、图3所示。与8051相比,STC12C4052AD减少了两个对外端口(即P0、P2口),使它最大可能地减少了对外引脚下,因而芯片尺寸有所减小。STC12C4052AD芯片的20个引脚功能为:图4.3 STC12C4052AD引脚配置图4.4 CD4017引脚图VCC 电源电压。GND 接地。RST 复位输入。当RST变为高电平并保持2个机器周期时,所有I/O引脚复位至“1”。XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2 来自反向振荡放大器的输出。P1口 8位双向I/O口。引脚P1.2P1.7提供内部上拉,当作为输入并被外部下拉为低电平时,它们将输出电流,这是因内部上拉的
20、缘故。P1.0和P1.1需要外部上拉,可用作片内精确模拟比较器的正向输入(AIN0)和反向输入(AIN1),P1口输出缓冲器能接收20mA电流,并能直接驱动LED显示器;P1口引脚写入“1” 后,可用作输入。在闪速编程与编程校验期间,P1口也可接收编码数据。P3口 引脚P3.0P3.5与P3.7为7个带内部上拉的双向I/0引脚。P3.6在内部已与片内比较器输出相连,不能作为通用I/O引脚访问。P3口的输出缓冲器能接收20mA的灌电流;P3口写入“1”后,内部上拉,可用输入。P3口也可用作特殊功能口,其功能见表1。P3口同时也可为闪速存储器编程和编程校验接收控制信号。表4.1 P3口特殊功能P3
21、口引脚特殊功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0外部输入)P3.5T1(定时器1外部输入)4.2.2 60秒旋转译码驱动原理按常规传统设计,需60进制译码驱动电路才能实现60秒旋转译码驱动,若用六片十进制计数译码器构成六十进制计数译码电路,则电路连线多(需要120根连线),硬件电路庞大,开销大。为此,我们巧妙地采用了两片CD4017进行六十进制计数译码,实现60秒旋转译码驱动。既减少了电路的复杂程度又可降低了成本。图4为CD4017功能引脚图,图5为其时序图。图4.5 CD4017时序图CD4017集成电路
22、是十进制计数/时序译码器,共有10个译码输出Q0Q9;每个译码输出通常处于低电平,且在时钟脉冲由低到高的上升沿输出高电平;每个高电平输出维持1个时钟周期;每输入10个时钟脉冲,输出一个进位脉冲,因此进位输出信号可作为下一级计数器的时钟信号。在清零输入端(R)加高电平或正脉冲时,只有输出端Q0为高电平,其余各输出端均为低电平“0”。为实现对发光二极管的驱动,将每一个译码输出端口接一只发光二极管,并将二极管串联限流电阻后接地。当译码端口Q0Q9中任一端口为高电平,则对应的发光二极管点亮,如图6(左)所示。仔细考查CD4017的功能,可发现其10个输出的高电平是相互排斥的,即任一时刻只有一只发光二极
23、管点亮,因此可将图6(左)电路进一步简化为如图6(右)所示,从而简化电路设计。图4.6 CD4017控制发光二极管原理图在本电子钟设计中,每秒点亮一个发光二极管,循环点亮一周共需60个发光二极管,若用上述的6片CD4017实现驱动,显然电路复杂。为此我们选用两片CD4017和一片6反相器,采用“纵横双译码”技术,巧妙地实现60秒旋转译码驱动,其中一片接成10进制,一片接成6进制,实现610=60的功能,具体连接方法如图5.7所示。图4.7 发光二极管“纵横双译码”循环点亮LED原理图将周期为1秒的输入脉冲作为其中一片CD4017的时钟脉冲,而此片的级联进位输出端(QC)作为另一片的时钟输入,并
24、将Q6与复位端相连。在两片译码输出端交叉点上接入发光二极管,构成610矩阵。根据CD4017时序特点,在初始状态,作为高位(纵)的CD4017译码器输出端口Q0处于高平,经反相器反相后为低电平。当作为低位(横)的CD4017译码器输出端口Q0Q9依次输出高电平后,则对应的二极管LD1LD10依次点亮;此后由于QC端的进位,高位CD4017译码输出端口Q1输出高电平,反相后输出低电平,当低位的CD4017译码输出端口Q0Q9依次输出高电平后,二极管LD11LD20依次点亮。如此往复,直至高位Q6向复位端输入高电平,CD4017复位,60秒循环点亮重新开始。4.2.3 时分显示部件由于系统要显示的
25、内容较简单,显示量不多,所以选用数码管既方便又经济。LED有共阴极和共阳极两种。如图8所示。二极管的阴极连接在一起,通常此公共阴极接地,而共阳极则将发光二极管的阳极连接在一起,接入+5V的电压。一位显示器由8个发光二极管组成,其中7个发光二极管构成字型“8”的各个笔划(段)ag,另一个小数点为dp发光二极管。当在某段发光二极管施加一定的正向电压时,该段笔划即亮;不加电压则暗。为了保护各段LED不被损坏,需外加限流电阻。图4.8 LED数码管结构原理图众所周知,LED显示数码管通常由硬件7段译码集成电路,完成从数字到显示码的译码驱动。本系统采用软件译码,以减小体积,降低成本和功耗,软件译码的另一
26、优势还在于比硬件译码有更大的灵活性。所谓软件译码,即由单片机软件完成从数字到显示码的转换。从LED数码管结构原理可知,为了显示字符,要为LED显示数码管提供显示段码,组成一个“8”字形字符的7段,再加上1个小数点位,共计8段,因此提供给LED数码管的显示段码为1个字节。各段码位与显示段的对应关系如表5-2。表4.9 各段码位的对应关系段码位D7D6D5D4D3D2D1D0显示段dpgfedcba需说明的是当用数据口连接LED数码管adp引脚时,不同的连接方法,各段码位与显示段有不同的对应关系。通常数据口的D0位与a段连接,D1位与b段连接,D7位与dp段连接,如表5-2所示,表3为用于LED数
27、码管显示的十六进制数和空白字符与P的显示段码。表4.10 LED显示段码字型共阳极段码共阴极段码字型共阳极段码共阴极段码0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHB83H7CH3BOH4FHCC6H39H499H66HDA1H5EH592H6DHE86H79H682H7DHF84H71H7F8H07H空白FFH00H880H7FHP8CH73H注:(1)本表所列各字符的显示段码均为小数点不亮的情况。 (2)“空白”字符即没有任何显示。根据STC12C4052AD单片机灌电流能力强,拉电流能力弱的特点,我们选用共阳数码管。将STC12C4052AD的P1.0P1.7分
28、别与共阳数码管的ag及dp相连,高电平的位对应的LED数码管的段暗,低电平的位对应的LED数码管的段亮,这样,当P0口输出不同的段码,就可以控制数码管显示不同的字符。例如:当P0口输出的段码为1100 0000,数码管显示的字符为0。数码管显示器有二种工作方式,即静态显示方式和动态扫描显示方式。为节省端口及降低功耗,本系统采用动态扫描显示方式。动态扫描显示方式需解决多位LED数码管的“段控”和“位控”问题,本电路的“段控”(即要显示的段码的控制)通过P0口实现;而每一位的公共端,即LED数码管的“位控”,则由P3口控制。这种连接方式由于多位字段线连在一起,因此,要想显示不同的内容,必然要采取轮
29、流显示的方式,即在某一瞬间,只让其中的某一位的字位线处于选通状态,其它各位的字位线处于断开状态,同时字段线上输出这一位相应要显示字符的字段码。在这一瞬时,只有这一位在显示,其他几位则暗。在本系统中,字位线的选通与否是通过PNP三极管的导通与截止来控制,即三极管处于“开关”状态。系统的时分显示部件由4只7段共阳LED数码管构成,前两只用于时的显示,后两只用于分的显示。值得一提的是,在设计中需要实现时与分之间的两个闪烁点,为此,将第三只LED数码管倒置摆放,这样就形成了两个很自然的闪烁点。与此同时,为了能使两点显示能够形象的表示时钟“秒”的变化,设计时,将两个点由P3.5单独控制,每隔一秒使P3.
30、5发送一个正脉冲,从而实现了两个点的闪烁显示,闪烁周期为一秒。表4.11 元件清单5、系统的软件设计本系统的软件系统主要可分为主程序和校时程序两大模块。在程序过程中,加入了抗干扰措施。5.1 系统主程序设计图4.1 系统主程序流程图系统时间的精确度得到保证5.2 程序清单#include /STC12Cx052或STC12Cx052AD系列单片机头文件;#define uint unsigned int /宏定义;#define uchar unsigned char /宏定义;sbit tiaos=P34; /调整小时;sbit tiaof=P33; /调整分钟;sbit wela1=P37; /分位选;sbit wela2=P32; /分位选;sbit wela3=P31; /时位选;sbit wela4=P30; /时位选;sbit out=P35; /秒脉冲;/*P1口进行相应的段选信号*/uchar code table=0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x82,0xf8,0x80,0x90; /共阳数码管09;uchar code table1=0xc0,0xcf,0xa4,0x86,0x8b,0x92; /倒置数码管05;uchar miao,fen,shi,fen
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1