1)仿真实例
设计一个简单的单片机电路,如图2-47所示。
电路的核心是单片机AT89C52,晶振X1和电容C1、C2构成单片机时钟电路,单片机的P1口接8个发光二极管,二极管的阳极通过限流电阻接到电源的正极。
2)电路图绘制
(1)将需要用到的元器件加载到对象选择器窗口。单击对象选择器按钮,如图2-48所示。
图2-47 流水灯控制电路
图2-48 元器件选择
弹出“Pick Devices”对话框,在“Category”下面找到“Microprocessor ICs”选项,用鼠标左键单击,在对话框的右侧,我们会发现这里有大量常见的各种型号的单片机。找到AT89C52,双击“AT89C52”。这样在左侧的对象选择器中就有了AT89C52这个元件了。
如果知道元件AT89C52的名称或者型号,我们可以在“Keywords”中输入AT89C52,系统在对象库中搜索查找,并将搜索结果显示在“Results”中,如图2-49所示。
图2-49 单片机元件选择
在“Results”的列表中,双击“AT89C52”即可将AT89C52加载到对象选择器窗口内。接着在“Keywords”中输入CRY,在“Results”的列表中,双击“CRYSTAL”将晶振加载到对象选择器窗口内,如图2-50所示。
图2-50 晶振选择
经过前面的操作我们已经将AT89C52、晶振加载到了对象选择器窗口内,现在还缺CAP(电容)、CAP POL(极性电容)、LED-RED(红色发光二极管)、RES(电阻),我们只要依次在“Keywords”中输入CAP、CAP POL、LED-RED、RES,在“Results”的列表中,把需要用到的元件加载到对象选择器窗口内即可。
在对象选择器窗口内用鼠标左键单击“AT89C52”会发现在预览窗口中可以看到AT89C52的实物图,且绘图工具栏中的元器件按钮处于选中状态。再单击“CRYSTAL”“LED-RED”也能看到对应的实物图,元器件按钮也处于选中状态,如图2-51所示。
图2-51 元器件选择
(2)将元器件放置到图形编辑窗口。
在对象选择器窗口内,选中AT89C52,如果元器件的方向不符合要求,可使用预览对象方向控制按钮进行调整。例如,用按钮对元器件进行顺时针旋转,用按钮对元器件进行逆时针旋转,用按钮对元器件进行左右反转,用按钮对元器件进行上下反转。元器件方向符合要求后,将鼠标置于图形编辑窗口元器件需要放置的位置,单击鼠标左键,出现紫红色的元器件轮廓符号(此时还可对元器件的放置位置进行调整)。再单击鼠标左键,元器件被完全放置(放置元器件后,如还需调整方向,可使用鼠标左键,单击需要调整的元器件,再单击鼠标右键菜单进行调整)。同理将晶振、电容、电阻、发光二极管放置到图形编辑窗口,如图2-52所示。
图2-52 放置电路元器件
我们将元器件编号,并修改参数。修改的方法是:在图形编辑窗口中,双击元器件,在弹出的“Edit Component”对话框中进行修改。现以电阻为例进行说明,如图2-53所示。
图2-53 元器件参数修改
把“Component Reference”中的R?改为R1,把“Resistance”中的10k改为1k。修改好后单击按钮,这时编辑窗口就有了一个编号为R1,阻值为1k的电阻了。大家只需重复以上步骤就可对其他元器的参数进行设置。
(3)元器件与元器件的电气连接。
Proteus具有自动连线功能(wire auto router),当鼠标移动至连接点时,鼠标指针处出现一个虚线框。
单击鼠标左键,移动鼠标至LED-RED的阳极,出现虚线框时,单击鼠标左键完成连线,如图2-54所示。
图2-54 完成连线
同理,我们可以完成其他连线。在此过程中,我们可以按下ESC键或者单击鼠标右键放弃连线。(www.xing528.com)
(4)放置电源端子。
单击绘图工具栏的按钮,使之处于选中状态。单击选中“POWER”,放置两个电源端子;单击选中“GROUND”,放置一个接地端子。放置好后完成连线,如图2-55所示。
图2-55 总体电路图
(5)在编辑窗口绘制总线。
单击绘图工具栏的按钮,使之处于选中状态。将鼠标置于图形编辑窗口,单击鼠标左键,确定总线的起始位置;移动鼠标,屏幕出现一条蓝色的粗线,选择总线的终点位置,双击鼠标左键,这样一条总线就绘制好了,如图2-56所示。
(6)元器件与总线的连线。
在绘制元器件与总线的连线时,一般用斜线来表示。此时我们需要自己决定走线路径,在想要拐点处单击鼠标左键即可。在绘制斜线时我们需要关闭自动连线功能,可通过使用工具栏里的WAR命令按钮来关闭该功能。绘制完成的效果如图2-57所示。
图2-56 总线画法
图2-57 完整原理图
(7)放置网络标号。
单击绘图工具栏的网络标号按钮使之处于选中状态。将鼠标置于欲放置网络标号的导线上,这时会出现一个“×”,表明该导线可以放置网络标号。单击鼠标左键,弹出“Edit Wire Label”对话框,在“String”中输入网络标号名称(如a),单击按钮,完成该导线的网络标号的放置。同理,可以放置其他导线的标号。注意:在放置导线网络标号的过程中,相互接通的导线必须标注相同的标号,如图2-58所示。
图2-58 网络标号配置
至此,我们便完成了整个电路图的绘制。
3)电路调试
在进行调试前,我们需要设计和编译程序,并加载编译好的程序。
(1)编译程序。
Proteus自带编译器,有8051、AVR、PIC的汇编器等。在ISIS上添加编写好的程序,方法如下:单击菜单栏“Source”,在下拉菜单中单击“Add/Remove Source Code Files”,出现一个对话框,如图2-59所示。
图2-59 选择添加的硬件单片机类型
单击对话框的按钮,在弹出的对话框中找到设计好的ASM文件,单击“打开”,在“Code Generation Tool”的下面找到“ASEM51”,然后单击按钮,设置完毕后就可以编译了。单击菜单栏的“Source”,在下拉菜单中单击“Build All”,稍等一会儿,编译结果的对话框就会出现在我们面前。如果有错误,对话框会告诉我们是哪一行出现了问题。或者利用Keil C51开发软件完成源程序代码的编写和编译,形成HEX文件。
(2)加载程序。
选中单片机AT89C52,用鼠标左键单击AT89C52,弹出一个对话框,如图2-60所示。
图2-60 程序加载
在弹出的对话框里单击“Program File”中的按钮,找到刚才编译得到的HEX文件并打开,然后单击按钮就可以调试了。单击调试控制运行按钮,进入调试状态。这时我们能清楚地看到每一个引脚电平的变化。红色代表高电平,蓝色代表低电平。进入调试状态后,若出现错误提示,通常如图2-61所示。
图2-61 调试出错与报警
出现此错误提示的原因是:电路图中有两个电阻的编号都是R1。我们只需要把其中一个改为R9就行了。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。