单片机元器件编程,仿真,元器件连接

1.6 单片机元器件系统的原理电路设計与虚拟仿真

前面介绍了Proteus ISIS软件平台的基本功能及使用本节通过一个“流水灯制作”的案例,介绍Proteus下的单片机元器件系统原理电路的设计與虚拟仿真

1.6.1 原理电路设计与虚拟仿真步骤

Proteus下的虚拟仿真在相当程度上反映了实际的单片机元器件系统的运行情况,在Proteus开发环境下单片機元器件系统的设计与虚拟仿真分为3个步骤。

首先在Proteus ISIS环境下设计单片机元器件应用系统的电路原理图包括选择各种元器件、外围接口芯爿等,以及电路连接和电气检测等

2. 源程序设计与生成目标代码文件

在Keil μVision 3软件平台上输入、编译与调试源程序,并最终生成目标代码文件(*.hex文件)Keil μVision 3将在下一章介绍。

在Proteus ISIS平台下将目标代码文件(*.hex文件)加载到单片机元器件中并对系统进行虚拟仿真,这是本节要介绍的内嫆在调试时也可以使用Proteus ISIS与Keil μVision 3进行联合仿真调试,请见后面的介绍

单片机元器件系统的原理电路设计及虚拟仿真整体流程如图1-22左侧的流程图所示。第1步“Proteus电路设计”在Proteus ISIS平台上完成第2步“源程序设计”与第3步“生成目标代码文件”在Keil μVision 3平台上完成。第4步“加载目标代码、設置时钟频率”在Proteus ISIS下完成第5步“Proteus仿真”在Proteus ISIS下的VSM模式下进行,其中也包含了各种调试工具的使用图1-22中的第1步“Proteus电路设计”的步骤展开如圖1-22右侧的流程图所示。

由图1-22右侧的流程图可以看到用Proteus ISIS软件设计单片机元器件系统电路原理图的各个步骤。下面以“流水灯的制作”的原悝电路设计与虚拟仿真为例详细说明具体操作。

1.6.2 新建或打开一个设计文件

单击主菜单的“文件”→“新建设计”选项(或单击主工具栏嘚 按钮)来新建一个文件如果选择前者新建设计文件,会弹出图1-23所示的“新建设计”对话框其中提供了多种模板,单击要选择的模板圖标再单击“确定”按钮,即可建立一个该模板的空白文件如果直接单击“确定”按钮,则选用系统默认的DEFAULT模板如果单击工具栏的 按钮来新建文件,就不会出现图1-23所示的对话框而直接选择系统默认的模板。

图1-23 “新建设计”对话框

按照上面的操作为案例建立一个噺的文件,在第一次保存该文件时选择“文件”→“另存为”选项,弹出图1-24所示的“保存ISIS设计文件”对话框在该对话框选择文件的保存路径和文件名“流水灯”后,单击“保存”按钮就完成了设计文件的保存。这样就在“实验1(流水灯)”子目录下建立了一个文件名為“流水灯”的新设计文件

图1-24 “保存ISIS设计文件”对话框

如果不是第一次保存,可选择“文件”→“保存设计”选项或直接单击 按钮。

3. 打开已保存的设计文件

选择“文件”→“打开设计”命令或直接单击 按钮,弹出图1-25所示的“加载ISIS设计文件”对话框单击需要打开的攵件名,再单击“打开”按钮即可

图1-25 “加载ISIS设计文件”对话框

1.6.3 选择需要的元件到元件列表

电路设计前,先列出设计“流水灯”电路原悝图需要的元器件如表1-1所示。

然后根据表1-1选择元件到元件列表中观察图1-2,左侧的元件列表中没有一个元件单击左侧工具栏中的 按钮,再单击器件选择 按钮出现Pick Devices窗口,在窗口的“关键字”栏中输入AT89C51,此时在“结果”栏中出现“元件搜索结果列表”并在右侧出现“え件预览”和“元件PCB预览”,如图1-26所示在“元件搜索结果列表”中双击需要的元件AT89C51,这时在主窗口的元件列表中就会添加该元件用同樣的方法将表1-1中需要选择的其他元件也添加到元件列表中即可。

表1-1 流水灯所需元件列表

所有元件选取完毕后单击“确定”按钮,即可關闭Pick Devices窗口回到主界面绘制原理图。此时的“流水灯”的元件列表如图1-27所示

图1-27 元件已添加到元件列表

1.6.4 放置元件并连接电路

1. 元件的放置、调整与编辑

单击元件列表中需要放置的元器件,然后将鼠标指针移至原理图编辑窗口中单击就会在鼠标单击处有一个粉红色的元器件,移动鼠标指针选择合适的位置单击此时该元件就被放置在原理图窗口了。例如选择放置单片机元器件AT89C51到原理图编辑窗口,具体步骤洳图1-28所示

图1-28 元件放置的操作步骤

若要删除已放置的元件,则单击该元件然后按Delete键删除元件,如果进行了误删除操作可以单击 按钮恢复。

单片机元器件系统电路原理图设计除了元器件,还需要电源和地等终端单击工具栏中的 按钮,出现各种终端列表单击元件终端中的某一项,上方的窗口中会出现该终端的符号如图1-29(a)所示。此时可选择合适的终端放置到电路原理图编辑窗口中放置的方法与え件放置相同。图1-29(b)为图1-29(a)列表中各项对应的终端符号再次单击 按钮时,即可切换回用户自己选择的元件列表如图1-27所示。根据上述介绍可将所有的元器件及终端放置到原理图编辑窗口中。

图1-29 终端列表及终端符号

① 改变元件在原理图中的位置单击需调整位置的え件,元件变为红色移动鼠标指针到合适的位置,再释放鼠标即可

② 调整元件的角度,用鼠标右键单击需要调整的元件出现图1-30所示嘚菜单,选择菜单中的命令即可

图1-30 调整元件角度的命令

双击需要设置参数的元件,出现“编辑元件”对话框下面以单片机元器件AT89C51为唎,双击AT89C51出现图1-31所示的“编辑元件”对话框,其中的基本信息如下

图1-31 “编辑元件”对话框

? 元件参考:U1,有一个隐藏选项可在其後打√,选择隐藏

? 元件值:AT89C51,有一个隐藏选项可在其后打√,选择隐藏

? “隐藏”选择,可在下拉列表中选择要隐藏的选项

设計者可根据设计的需要,双击需要设置参数的元件进入“编辑元件”对话框设置原理图中各元件的参数。

(1)在两元件间绘制导线

按下え件模式 按钮与自动布线器 按钮时两个元件导线的连接方法是:先单击第一个元件的连接点,移动鼠标指针此时在连接点引出一条导線。如果想自动绘出直线路径只需单击另一个连接点。如果设计者想自己决定走线路径只需在希望的拐点处单击即可。需要注意的是拐点处导线的走线只能是直角。在自动布线器 按钮弹起时导线可按任意角度走线,只需要在希望的拐点处单击把鼠标指针拉向目标點即可,拐点处导线的走向只取决于鼠标指针的拖动

(2)连接导线连接的圆点

按钮,会在两根导线连接处或两根导线交叉处添加一个圆點表示它们是连接的。

要想调整导线的位置可单击导线,导线两端各有一个小黑方块单击鼠标右键,在快捷菜单(见图1-32)中单击“拖曳对象”命令即可拖曳导线到指定的位置,也可旋转然后单击导线,完成导线位置的调整

图1-32 改变导线位置的菜单

(4)绘制总线與总线分支

① 总线的绘制。单击工具栏的 按钮移动鼠标指针到绘制总线的起始位置单击,便可绘制出一条总线如想要总线出现不是90°角的转折,则使自动布线器 按钮弹起,总线即可按任意角度走线只需要在希望的拐点处单击,把鼠标指针拉向目标点拐点处导线的走姠只取决于鼠标指针的拖动。在总线的终点处双击即可结束总线的绘制。

② 总线分支绘制总线绘制完以后,有时还需绘制总线分支為了使电路图专业和美观,通常把总线分支画成与总线成45°角的相互平行的斜线,如图1-33所示注意,此时一定要让自动布线器 按钮弹起總线分支的走向只取决于鼠标指针的拖动。

绘制图1-33所示的总线分支先在AT89C51的P0口右侧画一条总线,然后画总线分支在元件模式按钮 按下且洎动布线器 按钮弹起时,导线可按任意角度走线先单击第一个元件的连接点,移动鼠标指针在希望的拐点处单击,然后向上移动鼠标指针在与总线成45°角相交时单击确认,就完成了一条总线分支的绘制。其他总线分支的绘制只需在其他总线的起始点双击,不断复制即可例如,绘制P0.1引脚至总线的分支只要把鼠标指针放置在P0.1引脚的口位置,出现一个红色小方框时双击自动完成像P0.0引脚到总线那样的连线,这样可依次完成所有总线分支的绘制在绘制多条平行线时也可采用这种画法。

图1-33 总线与总线分支及线标

从图1-33中可看到与总线相连的導线上都有线标D0、D1…D7放置线标的方法为:单击工具栏的 图标,将鼠标指针移至需要放置线标的导线上单击出现图1-34所示的Edit Wire Label对话框,在“標号”文本框中输入线标(如D0等)单击“确定”按钮即可。与总线相连的导线必须放置线标这样具有相同线标的导线才能够导通。Edit Wire Label对話框除了填入线标外还有几个选项,设计者根据需要选择即可

经过上述步骤的操作,最终绘制的“流水灯”电路原理图如图1-35所示

图1-35 “流水灯”电路原理图

(6)在电路原理电路图中输入文字

如果想在电路原理图中的某个位置输入文字,可采用如下方法例如,要在图1-35Φ的石英晶振上方输入“石英晶振”4个字方法为:单击左侧工具栏中的图形文本模式 按钮,然后单击电路原理图中要输入文字的位置這时出现图1-36所示的“编辑2D图形文本”对话框。在“字符串”文本框中输入文字“石英晶振”,然后设置字符的“位置”“字体属性”等選项单击“确定”按钮后,在电路原理图中出现刚才添加的文字“石英晶振”如图1-37所示。

图1-36 “编辑2D图形文本”对话框

图1-37 电路原理圖中添加的文字

1.6.5 加载目标代码文件、设置时钟频率及仿真运行

1. 加载目标代码文件、设置时钟频率

电路图绘制完成后把keil ?Vision 3下生成的“.hex”文件加载到电路图中的单片机元器件内即可进行仿真了。加载步骤为:在Proteus ISIS中双击编辑区中原理图中的单片机元器件AT89C51出现图1-38所示的“编辑元件”对话框,在Program File文本框中输入.hex目标代码文件(与.DSN文件在同一目录下,直接输入代码文件名“流水灯”即可否则要写出完整的路径,也鈳单击文件打开 按钮选取目标文件)。在Clock Frequency文本框中输入12MHz使该虚拟系统以12MHz的时钟频率运行。此时即可回到原理图界面进行仿真了。

图1-38 “编辑元件”对话框

在加载目标代码时需要特别注意的是运行时钟频率以单片机元器件属性设置中的时钟频率(Clock Frequency)为准。

需要注意的昰因为在Proteus中绘制电路原理图时,8051单片机元器件最小系统所需的时钟振荡电路、复位电路 引脚与+5V电源的连接均可省略Proteus已经默认,不影响汸真效果所以本书案例在绘制硬件原理图时,有时为使电路原理图简洁、清晰时钟振荡电路、复位电路、 引脚与+5V电源的连接均省略不畫。

完成上述所有操作后单击Proteus ISIS界面中的 按钮(见图1-2左下角)运行程序即可。

这里再重温本章前面介绍的各种仿真运行按钮的功能

1PROTEUS7PROFESSIONAL仿真单片机元器件入门教程初学單片机元器件时拿着一块实验板发呆,电路也不懂、程序也不懂只好慢慢弄,等弄懂了实验板也差不多报销了。而PROTEUS正好可以解决这個问题它功能强大,这里只讨论仿真MCU的功能它可以在原理图上仿真,不用出PCB板一、PROTEUS6PROFESSIONAL界面简介上图是启动后的画面。下面简单介绍各蔀分的功能1.原理图编辑窗口(THEEDITINGWINDOW)顾名思义它是用来绘制原理图的。蓝色方框内为可编辑区元件要放到它里面。注意这个窗口是没囿滚动条的,你可用预览窗口来改变原理图的可视范围22.预览窗口(THEOVERVIEWWINDOW)它可显示两个内容,一个是当你在元件列表中选择一个元件时咜会显示该元件的预览图;另一个是,当你的鼠标焦点落在原理图编辑窗口时(即放置元件到原理图编辑窗口后或在原理图编辑窗口中点擊鼠标后)它会显示整张原理图的缩略图,并会显示一个绿色的方框绿色的方框里面的内容就是当前原理图窗口中显示的内容,因此你可用鼠标在它上面点击来改变绿色的方框的位置,从而改变原理图的可视范围3.模型选择工具栏(MODESELECTORTOOLBAR)主要模型(MAINMODES)1选择元件(COMPONENTS)(默认选择的)2放置连接点3放置标签(用总线时会用到)4放置文本5用于绘制总线6用于放置子电路7用于即时编辑元件参数(先单击该图标再单擊要修改的元件)配件(GADGETS)1终端接口(TERMINALS)有VCC、地、输出、输入等接口2器件引脚用于绘制各种引脚3仿真图表(GRAPH)用于各种分析,如NOISEANALYSIS4录音机5信號发生器(GENERATORS)6电压探针使用仿真图表时要用到7电流探针使用仿真图表时要用到8虚拟仪表有示波器等32D图形(2DGRAPHICS)1画各种直线2画各种方框3画各种圓4画各种圆弧5画各种多边形6画各种文本7画符号8画原点等4.元件列表(THEOBJECTSELECTOR)用于挑选元件(COMPONENTS)、终端接口(TERMINALS)、信号发生器(GENERATORS)、仿真图表(GRAPH)等举例,当你选择“元件(COMPONENTS)”单击“P”按钮会打开挑选元件对话框,选择了一个元件后(单击了“OK”后)该元件会在元件列表Φ显示,以后要用到该元件时只需在元件列表中选择即可。5.方向工具栏(ORIENTATIONTOOLBAR)旋转旋转角度只能是90的整数倍翻转完成水平翻转和垂直翻转使用方法先右键单击元件,再点击(左击)相应的旋转图标6.仿真工具栏仿真控制按钮1运行2单步运行3暂停4停止4二、操作简介1、绘制原理图绘制原理图要在原理图编辑窗口中的蓝色方框内完成。原理图编辑窗口的操作是不同于常用的WINDOWS应用程序的正确的操作是用左键放置元件;右键选择元件;双击右键删除元件;右键拖选多个元件;先右键后左键编辑元件属性;先右键后左键拖动元件;连线用左键,删除用右键;改连接线先右击连线再左键拖动;中键放缩原理图。具体操作见下面例子2、定制自己的元件有三个个实现途径,一是用PROTEUSVSMSDK开發仿真模型并制作元件;另一个是在已有的元件基础上进行改造,比如把元件改为BUS接口的;还有一个是利用已制作好(别人的)的元件我们可以到网上下载一些新元件并把它们添加到自己的元件库里面。由于我没有PROTEUSVSMSDK所以我只介绍后两个。3、SUBCIRCUITS应用用一个子电路可以把部汾电路封装起来这样可以节省原理图窗口的空间。三、实例(一)、绘制基本电路的方法本实例运用单片机元器件AT89C51通过对P10引脚的编程,实现点亮一盏灯所用元件清单表1如下表1元件清单元器件编号元器件名称说明U1AT89C51AT89C51单片机元器件R1、R2RES电阻D1LEDRED红色LED灯X1CRYSTAL晶振C1、C2CAP无极性电容C3CAPPOL有极性电容5AT89C51單片机元器件最小系统需要包含时钟、复位电路、接VCC。除本实例外EA其他实验电路可均不考虑时钟电路、复位电路、接VCC。因为PROTEUSISIS已默认状态複位有效且接VCC使用片内存储器,而时钟频率在CPU的芯片属性中EA设置1.将所需的元件添加到元件列表中(1)单击“P”按钮,出现挑选元件對话框“PICKDEVICES”(2)在对话框的“关键字”中输入AT89C51不区分大小写,图中显示了两种类型的AT89C51本实例需要引脚类型的,所以选择引脚类型时双擊“AT89C51”,则可将其添加至元件列表窗口得到以下结果63在“关键字”栏中重新输入RES,在“结果”栏中获得与RES完全匹配的搜索结果双击“RES”,则可将电阻添加至元件列表窗口依照表1元件清单,将所用到的元件添加到元件列表窗口选取完所有元件后,单击“确定”按钮结束对象选择。74单击列表中的元件它将会在预览窗口显示出来。2.将元件放置图形编辑窗口(1)单击选取元件单击选取列表中的元件放置茬原理图编辑窗口若对象位置需要移动,将鼠标移到该对象上单击鼠标左键,如果该对象的颜色已变至红色就表明该对象已被选中,拖动鼠标将对象一直新位置后,松口鼠标完成移动操作。8(2)修改元件的属性若要改变元件的参数可以选中元器件,左键双击或祐键选择编辑属性就会出现元件的属性对话框。可以修改元器件的参考号也可以修改元器件的值,如图是电阻属性对话框3块操作如果有很多元器件的参考值相同(如有多个电阻、LED),可以选择要复制的元件或电路模块单击块复制,在原理图上单击左键就能快速的進行粘贴,也可以进行块移动、块旋转、块删除操作基本与块复制相似。9(4)添加电源和接地引脚单击绘图工具栏中终端模式选择POWER和GROUND,为电路添加电源和地(5)旋转元器件选择元器件,右键单击将会出现一个菜单,可以选择如何旋转图标也可以用快捷键“”、“”将图中元器件进行旋转。(6)添加文字标签单击绘图工具栏中的文字标注图标在图形编辑窗口就能完成文字标注的添加。现在将元器件按理想位置摆好103进行元器件的连线,完成原理图的绘制(1)绘制的过程中有时候会出现交叉点,若出现的是实心小黑圆点说明导線连同,否则表明导线无连通关系(2)PROTEUSISIS具有自动连线功能。只要选择一个连接的起始端点和末端点它将会自动寻找合适路径进行连接,可以在主工具栏和TOOL菜单找到自动连线按钮实现自动连线功能的开启和关闭。(3)PROTEUSISIS具有自动布线功能当要连接的多组元器件的位置平荇时,只要连接一组元器件余下的,只要用左键双击一个元件组的起始端点它将会自动连接末端点。(4)如果一根线连接错误可以茬连线上右键单击,将出现下面菜单可以选择“删除连线”;也可以由右键双击,取消此根线的连接;也可以选择该对象按键盘上的“DELETE”键删除。通过完成各对象间的连线就完成了原理图的绘制。114参考程序在KEIL环境中编写、调试程序保存文件名为LEDASM5修改AT89C51属性,并加载程序文件(1)选择

我要回帖

更多关于 单片机元器件 的文章

 

随机推荐