第8章ProteusISIS的元件制作和层次原理图设计8.1原理图元件制作8.2元件的编辑8.3利用其他人制作的元件8.4层次原理图设计8.5模块元器件的设计8.6网络表文件的生成8.6.1网络的相关概念8.6.2网络表的生成8.7电气规则检查8.8元件报表和大多数其他电子设计软件一样,Proteus提供了元件制作和层次电路图设计功能,使读者能够满足一些特殊设计的需要,并能够在电路较为复杂时,实现由上而下或由下而上的层次原理图设计,以使图纸清晰,可读性强。8.1原理图元件制作在绘制原理图的过程中,如果遇到原理图元件库中找不到的元器件,或是没有适合使用的元器件时,需要自行制作原理图元件。绘制原理图元件的基本步骤如下:(1)打开Proteus7ISIS编辑环境,新建一个“NewDesign”,系统将清除所有原有的设计数据,出现一张空的设计图纸。(2)用二维工具“2DGRAPHICS”中的绘制“DeviceBody”,如图8-1所示。图8-1绘制的DeviceBody(3)用中的绘制引脚(图8-2为引脚列表),其中DEFAULT为普通引脚,INVERT为低电平有效引脚,POSCLK为上升沿有效的时钟输入引脚,NEGCLK为下降沿有效的时钟输入引脚,SHORT为较短引脚(见图8-3中的引脚5),BUS为总线。图8-3中画出了各类引脚。另外,添加引脚状态下,光标为一个笔头,当光标移到引脚上方时,光标变成一只小手,可以按下鼠标左键对引脚进行移动,或单击鼠标右键打开其快捷菜单,如图8-4所示,对引脚进行一些修改操作,如拖拉、编辑属性、删除、旋转、镜像等。图8-2引脚名称列表图8-3各类引脚的形状图8-4选中引脚后用右键打开的下拉菜单图8-5制作元件74LS373(4)根据需要修改引脚属性。例如,以74LS373为例,画出元件及引脚,如图8-5所示。各引脚说明如下:引脚1为GND,PIN10;引脚2为D[0..7];引脚3为OE,PIN1;引脚4为LE,PIN11;引脚5为VCC,PIN20;引脚6为Q[0..7]。图8-5制作元件74LS373先右击、后左击引脚1,在出现的对话框中输入如图8-6所示的数据;对引脚5的操作也是类似的。GND和VCC需要隐藏,故“Drawbody”不选。图8-6引脚1属性对话框最终得到如图8-12所示的元件。(5)添加中心点。选择中的绘制中心点,选择“ORIGIN”,中心点的位置可任意放,如图8-13所示。图8-13添加中心点图8-12制作出的元件74LS373(6)封状入库。先用右键选择整个元件,如图8-14所示。然后,选择菜单【Library】→【MakeDevice】,出现如图8-15所示对话框,并按照图中内容输入相应部分。图8-14用右键选择整个元件图8-15MakeDevice对话框单击图8-15中的“Next”选项,出现选择PCB封装的对话框,如图8-16所示。直接单击图8-16中的“Next”选项,出现设置元件参数的对话框,如图8-17所示。此处需要添加两个属性——{ITFMOD=TTLLS}和{MODFILE=74XX373.MDF},因此单击“New”,出现如图8-18所示选择框,选择“ITFMOD”,并按照图8-19所示将其缺省值设为TTLLS。图8-16选择PCB封装对话框图8-17设置元件参数的对话框图8-18参数选择框图8-19ITFMOD参数设置对话框再单击图8-19中的选项“New”,选择“MODFILE”参数,并按照图8-20将其缺省值设为“74XX373.MDF”。接着单击“Next”,出现如图8-21所示对话框,可以不加以设置。图8-20ITFMOD参数设置图8-21DeviceDataSheet&HelpFile对话框继续单击“Next”,选择元件存放位置,默认是放在“USERDVC”中的左边是选择类别,最好自己新建一个,如“MYLIB”,如图8-22所示。图8-22选择元件存放位置对话框这样,一个元件就制作好了,可以选择菜单【Library】→【MakeManager】打开库管理器来管理自己的元件,如图8-23所示。图8-23元件库管理器8.2元件的编辑在用Proteus设计原理图的过程中,当需要的元件在库中不能直接找到时,除了可以利用上一节的内容自己制作原理图元件外,也可以利用现有元件,在现有元件的基础上进行修改,使其符合我们的需要。这一节仍旧以74LS373为例,利用库中自带的元件,如图8-24所示,将其修改成如图8-25所示的“.bus”接口的元件。图8-24库中自带的74LS373图8-25修改成.bus的74LS373(1)在Proteus7ISIS原理图编辑环境下,添加元件74LS373,如图8-24所示。(2)选中74LS373,再单击工具栏中的,出现如图8-26所示画面,于是此元件处于可修改状态下。(3)对元件的各部分进行修改。先把Q0至Q7、D0至D7的管脚删掉,添加上BUS形式的引脚,具体方法见上节相关介绍。再选中芯片的外形,修改其大小,然后将其他引脚进行相应的移动后,效果如图8-27所示。图8-26元件处于可修改状态下图8-27元件修改后效果(4)重新“MakeDevice”。拖选整个元件,选择菜单【Library】→【MakeDevice】,出现如图8-28所示对话框。在图8-28所示对话框中将“74LS373”改为“74LS373.bus”,其他不变,然后单击“Next”选项,出现如图8-29所示选择封装对话框。图8-28MakeDevice对话框图8-29选择封装对话框图8-30MODFILE属性修改对话框图8-31选择对应DataSheet的对话框图8-31所示对话框为选择对应DataSheet的对话框,可以不用修改。接着仍旧单击“Next”,出现如图8-32所示对话框。这个最好进行修改,第一个“DeviceCategory”参数可改为“74LSBUS”。具体方法是先单击“New”,然后输入“74LSBUS”即可。第二个参数不变。修改后如图8-33所示。图8-32修改元件所属类别对话框图8-33元件所属类别改为“74LSBUS”到此,一个元件就修改好了,可以选择菜单【Library】→【MakeManager】开元件库管理器来管理自己的元件,如图8-34所示。图8-34元件库管理器也可以装载图8-35拾取元件窗口自己修改的元件,如图8-35所示。图8-35拾取元件窗口8.3利用其他人制作的元件有时我们会从网上或别人那里得到一些仿真模型,提供者一般会给出三样东西:模型文件(一般为“.dll”文件)、例子和库文件。我们需要做的工作是先把“.dll”文件拷贝到Proteus安装目录下的MODELS文件夹里,这样附带的例子就可运行了。如果还附带有库文件的话,就可以把“.lib”文件拷贝到Proteus安装目录下的LIBRARY文件夹里,以丰富自己的库。这时,可以从Proteus的库管理器中看到该库文件。如果没有附带库文件,就需要自行把仿真文件中的一些元件添加到自己的库里面,这样就可以在今后的设计中利用其他人制作的一些元件了,添加的具体方法如下。(1)首先把“.dll”文件拷贝到Proteus安装目录下的MODELS文件夹里。(2)运行“.DSN”。这里随便运行一个例子PIC12ADC.DSN,如图8-36所示。图8-36例子PIC12ADC.DSN(3)运行【Library】→【Compiletolibrary】菜单项,出现如图8-37所示对话框,单击“OK”按钮,这样原理图中所有元件将被添加到库USERDVC.LIB中。图8-37将元件添加入库的对话框(4)我们可以到库管理器中把不需要的元件删除。运行菜单【Library】→【LibraryManager】项,出现如图8-38所示的库管理器对话框。图8-38元件库管理器8.4层次原理图设计和支持通常的多图纸设计过程一样,ISIS支持层次设计。对于一个较大、较复杂的电路图,不可能一次完成,也不可能将这个电路图画在一张图纸上,更不可能由一个人单独来完成。利用层次电路图可以大大提高设计速度,也就是将这种复杂的电路图根据功能划分为几个模块,由不同的人员来分别完成各个模块,做到多层次并行设计。本节将通过一个具体的例子(如图8-39所示)来介绍层次电路图的基本概念和绘制层次原理图的步骤与技巧。MASTER#RSFFRSQQ123U2:A74LS00456U2:B74LS00SLAVE#RSFFRSQQ121312U3:A74LS103456U3:B74LS10JKQQ1110U1:E74LS04CLK图8-39是一个层次电路,其中MASTER和SLAVE为子电路,子电路的具体电路图如图8-40所示。图8-39层次电路设计例图层次电路设计的具体步骤如下。1.创建子电路下面首先使用子电路工具建立层次图。(1)单击工具栏中的子电路工具,并在编辑窗口拖动,拖出子电路模块,如图8-41所示。从对象选择器中选择适合的输入、输出端口,放置在子电路图的左侧和右侧。端口用来连接子图和主图。一般输入端口放在电路图模块的左侧,而输出端口放在右侧,如图8-42所示。图8-41子电路图模块图8-42添加子电路图端口(2)直接使用端口编辑对话框编辑端口名称,也可使用菜单命令【Tools】→【PropertyAssignmentTool】编辑端口及子图框的名称。端口的名称必须与子电路的逻辑终端名称一致。例如,将光标放在端口上单击右键,在弹出的快捷菜单中选择“EditProperties”,然后输入端口名称即可,如图8-43所示。本电路输入端口分别是、,输出端口是Q、。图8-43编辑端口名称的下拉菜单及参数输入窗口同样,光标放在“SUB?”上,点右键,选择“EditLabel”,输入子电路名称,如图8-44所示。或者选中整个子电路模块,点右键,选择“EditProperties”,如图8-45及图8-46所示,子图框的“Name”输入“MASTER”(实体名称),“Circuit”设置为“#RSFF”(电路名称)。多个子电路可以具有同样的“Circuit”(电路名称),如“#RSFF”,但是在同一个图页,每个子电路必须有唯一的子图框名称Name,如“MASTER”和“SLAVE”。图8-44子电路图名称编辑窗口图8-45子电路模块对这时,子电路图模块如图8-47所示。注:需要输入时,只需输入“$R”即可。图8-46子电路图框的编辑对话框图8-47子电路图模块图8-46子电路图框的编辑对话框图8-47子电路图模块(3)将光标放置在子图上,点右键,并选择菜单命令“GotoChildSheet”(默认组合键为“Ctrl+C”),这时ISIS加载一空白的子图页,如图8-48所示。图8-48加载空白的子图页(4)编辑子电路。首先,在ProteusISIS编辑环境中,输入图8-40的原理图。然后,单击工具箱中的按钮,则相应的在操作界面的对象选择器列出所包含的项目,如图8-49所示。可根据需要选择相应对象。需要电源时,选中对象编辑器中的“POWER”,则在预览窗口中出现电源信号的图标,在原理图中单击,可在原理图中添加电源符号,选中电源信号符号,拖到合适的位置,并将接地信号连接到电路。也可选中电源符号单击,进入电源编辑对话框,在“String”栏中分别输入+15V、-15V,然后单击“OK”按钮,完成电源的放置。输入/输出终端是必须放置的。选中对象编辑器中的“INPUT/OUTPUT”,则在预览窗口出现输入/输出端口的图标,在原理图中单击,则可在原理图中添加输入/输出端口,选中输入/输出端口符号,拖到合适的位置,并将输入/输出端口连接到电路。单击输入/输出端口符号,进入编辑对话框,在“String”栏中分别输入输入/输出端口名称,然后单击“OK”按钮,完成端口的放置,如图8-40所示。注意:这里的端口名称必须与子电路框图中一致。