下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 单片机仿真软件PROTEUS入门编程

单片机仿真软件PROTEUS入门编程.doc

单片机仿真软件PROTEUS入门编程

Mildred京华
2017-09-21 0人阅读 举报 0 0 暂无简介

简介:本文档为《单片机仿真软件PROTEUS入门编程doc》,可适用于工程科技领域

单片机仿真软件PROTEUS入门编程兰州石化职业技术学院目录第一章概述一、进入ProteusISIS二、工作界面三、基本操作图形编辑窗口预览窗口(TheOverviewWindow)对象选择器窗口图形编辑的基本操作参考参考作原理图仿真调试四、实例一电路图的绘制KeilC与Proteus连接调试五、实例二使用元件工具箱使用状态信息条使用对话框使用仿真信息窗口关闭ProteusISIS四、菜单命令简述主窗口菜单表格输出窗口(Table)菜单方格输出窗口(Grid)菜单Smith圆图输出窗口(Smith)菜单直方图输出窗口(Histogram)菜单第二章基于的PID炉温度调节器的硬件设计及仿真ProteusISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上可以仿真、分析(SPICE)各种模拟器件和集成电路该软件的特点是:实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS动态仿真、IC调试器、SPI调试器、键盘和LCD系统仿真的功能有各种虚拟仪器如示波器、逻辑分析仪、信号发生器等。支持主流单片机系统的仿真。目前支持的单片机类型有:系列、系列、AVR系列、PIC系列、PIC系列、PIC系列、Z系列、HC系列以及各种外围芯片。提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能同时可以观察各个变量、寄存器等的当前状态因此在该软件仿真系统中也必须具有这些功能同时支持第三方的软件编译和调试环境如KeilCuVision等软件。具有强大的原理图绘制功能。总之该软件是一款集单片机和SPICE分析于一身的仿真软件功能极其强大。本章介绍ProteusISIS软件的工作环境和一些基本操作。一、进入ProteusISIS双击桌面上的ISISProfessional图标或者单击屏幕左下方的“开始”“程序”“ProteusProfessional”“ISISProfessional”出现如图所示屏幕表明进入ProteusISIS集成环境。图启动时的屏幕二、工作界面ProteusISIS的工作界面是一种标准的Windows界面如图所示。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。图ProteusISIS的工作界面三、基本操作图形编辑窗口在图形编辑窗口内完成电路原理图的编辑和绘制。为了方便作图坐标系统(COORDINATESYSTEM)ISIS中坐标系统的基本单位是nm主要是为了和ProteusARES保持一致。但坐标系统的识th别(readout)单位被限制在。坐标原点默认在图形编辑区的中间图形的坐标值能够显示在屏幕的右下角的状态栏中。点状栅格(TheDotGrid)与捕捉到栅格(SnappingtoaGrid)编辑窗口内有点状的栅格可以通过View菜单的Grid命令在打开和关闭间切换。点与点之间的间距由当前捕捉的设置决定。捕捉的尺度可以由View菜单的Snap命令设置或者直接使用快th捷键F、F、F和CTRLF。如图所示。若键入F或者通过View菜单的选中Snap你会注意到鼠标在图形编辑窗口内移动时坐标值是以固定的步长th变化这称为捕捉如果你想要确切地看到捕捉位置可以使用View菜单的XCursor命令选中后将会在捕捉点显示一个小的或大的交叉十字。实时捕捉(RealTimeSnap)当鼠标指针指向管脚末端或者导线时鼠标指针将会被捕捉到这些物体这种功能被称为实时捕捉该功能可以使你方便的实现导线和管脚的连接。可以通过Tools菜单的RealTimeSnap命令或者是CTRLS切换该功能。可以通过View菜单的Redraw命令来刷新显示内容同时预览窗口中的内容也将被刷新。当执行其它命令导致显示错乱时可以使用该特性恢复显示。视图的缩放与移动可以通过如下几种方式:,用鼠标左键点击预览窗口中想要显示的位置这将使编辑窗口显示以鼠标点击处为中心的内容。,在编辑窗口内移动鼠标按下SHIFT键用鼠标“撞击”边框这会使显示平移。我们把这称为ShiftPan。,用鼠标指向编辑窗口并按缩放键或者操作鼠标的滚动键会以鼠标指针位置为中心重新显示。预览窗口(TheOverviewWindow)该窗口通常显示整个电路图的缩略图。在预览窗口上点击鼠标左键将会有一个矩形蓝绿框标示出在编辑窗口的中显示的区域。其他情况下预览窗口显示将要放置的对象的预览。这种PlacePreview特性在下列情况下被激活:,当一个对象在选择器中被选中,当使用旋转或镜像按钮时,当为一个可以设定朝向的对象选择类型图标时(例如:Componenticon,DevicePinicon等等),当放置对象或者执行其他非以上操作时placepreview会自动消除,对象选择器(ObjectSelector)根据由图标决定的当前状态显示不同的内容。显示对象的类型包括:设备终端管脚图形符号标注和图形。,在某些状态下对象选择器有一个Pick切换按钮点击该按钮可以弹出库元件选取窗体。通过该窗体可以选择元件并置入对象选择器在今后绘图时使用。对象选择器窗口通过对象选择按钮从元件库中选择对象并置入对象选择器窗口供今后绘图时使用。显示对象的类型包括:设备终端管脚图形符号标注和图形。图形编辑的基本操作对象放置(ObjectPlacement)放置对象的步骤如下(Toplaceanobject:)根据对象的类别在工具箱选择相应模式的图标(modeicon)。、根据对象的具体类型选择子模式图标(submodeicon)。、如果对象类型是元件、端点、管脚、图形、符号或标记从选择器里(selector)选择你想要的对象的名字。对于元件、端点、管脚和符号可能首先需要从库中调出。、如果对象是有方向的将会在预览窗口显示出来你可以通过预览对象方位按钮对对象进行调整。、最后指向编辑窗口并点击鼠标左键放置对象。选中对象(TagginganObject)用鼠标指向对象并点击右键可以选中该对象。该操作选中对象并使其高亮显示然后可以进行编辑。选中对象时该对象上的所有连线同时被选中。要选中一组对象可以通过依次在每个对象右击选中每个对象的方式。也可以通过右键拖出一个选择框的方式但只有完全位于选择框内的对象才可以被选中。在空白处点击鼠标右键可以取消所有对象的选择。删除对象(DeletinganObject)用鼠标指向选中的对象并点击右键可以删除该对象同时删除该对象的所有连线。拖动对象(DragginganObject)用鼠标指向选中的对象并用左键拖曳可以拖动该对象。该方式不仅对整个对象有效而且对对象中单独的labels也有效。如果WireAutoRouter功能被使能的话被拖动对象上所有的连线将会重新排布或者'fixedup'。这将花费一定的时间(秒左右)尤其在对象有很多连线的情况下这时鼠标指针将显示为一个沙漏。如果你误拖动一个对象所有的连线都变成了一团糟你可以使用Undo命令撤消操作恢复原来的状态。拖动对象标签(DragginganObjectLabel)许多类型的对象有一个或多个属性标签附着。例如每个元件有一个“reference”标签和一个“value”标签。可以很容易地移动这些标签使你的电路图看起来更美观。移动标签的步骤如下(Tomovealabel)、选中对象、用鼠标指向标签按下鼠标左键。、拖动标签到你需要的位置。如果想要定位的更精确的话可以在拖动是改变捕捉的精度(使用F、F、F、CTRLF键)。、释放鼠标调整对象大小(ResizinganObject)子电路(Subcircuits)、图表、线、框和圆可以调整大小。当你选中这些对象时对象周围会出现黑色小方块叫做“手柄”可以通过拖动这些“手柄”来调整对象的大小。调整对象大小的步骤如下(Toresizeanobject)、选中对象、如果对象可以调整大小对象周围会出现黑色小方块叫做“手柄”。、用鼠标左键拖动这些“手柄”到新的位置可以改变对象的大小。在拖动的过程中手柄会消失以便不和对象的显示混叠。调整对象的朝向(ReorientinganObject)许多类型的对象可以调整朝向为或通过x轴y轴镜象。当该类型对象被选中后“RotationandMirror”图标会从兰色变为红色然后就可以来改变对象的朝向。调整对象朝向的步骤如下(Toreorientanobject)、选中对象、用鼠标左键点击Rotation图标可以使对象逆时针旋转用鼠标右键点击Rotation图标可以使对象顺时针旋转。、用鼠标左键点击Mirror图标可以使对象按x轴镜象用鼠标右键点击Mirror图标可以使对象按y轴镜象。毫无疑问当RotationandMirror图标是红色时操作他们将回改变某个对象即便你当前没有看到它实际上这中颜色的指示在你想对将要放置的新对象操作时是格外有用的。当图标是红色时首先取消对象的选择此时图标会变成兰色说明现在可以“安全“调整新对象了。编辑对象(EditinganObject)许多对象具有图形或文本属性这些属性可以通过一个对话框进行编辑这是一中很常见的操作有多种实现方式。编辑单个对象的步骤是(Toeditasingleobjectusingthemouse):、选中对象、用鼠标左键点击对象。连续编辑多个对象的步骤是(Toeditasuccessionofobjectsusingthemouse)、选择MainMode图标再选择InstantEdit图标。、依次用鼠标左键点击各个对象以特定的编辑模式编辑对象的步骤是(Toeditanobjectandaccessspecialeditmodes:)、指向对象、使用键盘CTRL'E'对于文本脚本来说这将启动外部的文本编辑器。如果鼠标没有指向任何对象的话该命令将对当前的图进行编辑。通过元件的名称编辑元件的步骤如下(Toeditacomponentbyname:)、键入'E'、在弹出的对话框中输入元件的名称(partID)。确定后将会弹出该项目中任何元件的编辑对话框并非只限于当前sheet的元件。编辑完后画面将会以该元件为中心重新显示。你可以通过该方式来定位一个元件即便你并不想对其进行编辑。在OBJECTSPECIFICS这一节中将详细说明对应于每种对象类型的具体编辑操作方式。编辑对象标签(EditingAnObjectLabel)元件、端点、线和总线标签都可以象元件一样编辑。编辑单个对象标签的步骤是(Toeditasingleobjectlabelusingthemouse:)、选中对象标签。、用鼠标左键点击对象。连续编辑多个对象标签的步骤是(Toeditasuccessionofobjectlabelsusingthemouse:)、选择MainMode图标再选择InstantEdit图标。、依次用鼠标左键点击各个标签。任何一种方式都将弹出一个带有LabelandStyle栏的对话框窗体。可以参照指南中EditingLocalStyles这一节得到编辑local文本类型的详细内容。拷贝所有选中的对象(CopyingallTaggedObjects)拷贝一整块电路的方式(Tocopyasectionofcircuitry:)、选中需要的对象具体的方式参照上文的TagginganObject部分。、用鼠标左键点击Copy图标。、把拷贝的轮廓拖到需要的位置点击鼠标左键放置拷贝。、重复步骤放置多个拷贝。、点击鼠标右键结束当一组元件被拷贝后他们的标注自动重置为随机态用来为下一步的自动标注做准备防止出现重复的元件标注。移动所有选中的对象(MovingallTaggedObjects)移动一组对象的步骤是(Tomoveasetofobjects:)、选中需要的对象具体的方式参照上文的TagginganObject部分。、把轮廓拖到需要的位置点击鼠标左键放置。你可以使用块移动的方式来移动一组导线而不移动任何对象。更进一步的讨论可以参照DraggingWires这一节。删除所有选中的对象(DeletingallTaggedObjects)删除一组对象的步骤是(Todeleteagroupofobjects:)、选中需要的对象具体的方式参照上文的TagginganObject部分。、用鼠标左键点击Delete图标。如果错误删除了对象可以使用Undo命令来恢复原状。画线(WIRINGUP)画线(WirePlacement)你一定发现没有画线的图标按钮。这是因为ISIS的智能化足以在你想要画线的时候进行自动检测。这就省去了选择画线模式的麻烦。在两个对象间连线(Toconnectawirebetweentwoobjects)、左击第一个对象连接点。、如果你想让ISIS自动定出走线路径只需左击另一个连接点。另一方面如果你想自己决定走线路径只需在想要拐点处点击鼠标左键。一个连接点可以精确的连到一根线。在元件和终端的管脚末端都有连接点。一个圆点从中心出发有四个连接点可以连四根线。由于一般都希望能连接到现有的线上ISIS也将线视作连续的连接点。此外一个连接点意味着根线汇于一点ISIS提供了一个圆点避免由于错漏点而引起的混乱。(注:原文是Sinceitiscommontowishtoconnecttoexistingwires,ISISalsotreatswiresascontinuousconnectionpointsFurthermore,assuchajunctioninvariablymeansthatwiresaremeetingatapointitalsoplacesadotforyouThiscompletelyavoidsambiguitiesthatcouldotherwisearisefrommissingdots)在此过程的任何一个阶段你都可以按ESC来放弃画线。线路自动路径器(WireAutoRouter)线路自动路径器(WAR)为你省去了必须标明每根线具体路径的麻烦。该功能默认是打开的但可通过两种途径方式略过该功能。如果你只是在两个连接点左击WAR将选择一个合适的线径。但如果你点了一个连接点然后点一个或几个非连接点的位置ISIS将认为你在手工定线的路径将会让你点击线的路径的每个角。路径是是通过左击另一个连接点来完成的。WAR可通过使用工具菜单里的WAR命令来关闭。这功能在你想在两个连接点间直接定出对角线时是很有用的。重复布线(WireRepeat)假设你要连接一个字节ROM数据总线到电路图主要数据总线你已将ROM总线和总线插入点如以下放置。首先左击A然后左击B在AB间画一根水平线。双击C重复布线功能会被激活自动在CD间布线。双击E、F以下类同。重复布线完全复制了上一根线的路径。如果上一根线已经是自动重复布线将仍旧自动复制该路径。另一方面如果上一根线为手工布线那么将精确复制用于新的线(原文:thenitsexactroutewillbeoffsetandusedforthenewwire)。拖线(DraggingWires)尽管线一般使用连接和拖的方法但也有一些特殊方法可以使用。如果你拖动线的一个角那该角就随着鼠标指针移动。如果你鼠标指向一个线段的中间或两端就会出现一个角然后可以拖动。注意:为了使后者能够工作线所连的对象不能有标示否则ISIS会认为你想拖该对象。也可使用块移动命令来移动线段或线段组。移动线段或线段组(Tomoveawiresegmentoragroupofsegments)、在你想移动的线段周围拖出一个选择框。若该“框”为一个线段旁的一条线也是可以的。、左击“移动”图标(在工具箱里)。、如图标所示的相反方向垂直于线段移动“选择框”(tagbox)。、左击结束。如果操作错误可使Undo命令返回。由于对象被移动后节点可能仍留在对象原来位置周围ISIS提供一项技术来快速删除线中不需要的节点。从线中移走节点(Toremoveakinkfromawire)、选中(Tag)要处理的线。、用鼠标指向节点一角按下左健。、拖动该角和自身重合(如下图)。、松开鼠标左键。ISIS将从线中移走该节点。主窗口是一个标准Windows窗口除具有选择执行各种命令的顶部菜单和显示当前状态的底部状态条外菜单下方有两个工具条包含与菜单命令一一对应的快捷按钮窗口左部还有一个工具箱包含添加所有电路元件的快捷按钮。工具条、状态条和工具箱均可隐藏。这里的两个图分别是中文和英文主窗口。参考四、编辑区域的缩放Proteus的缩放操作多种多样极大地方便了我们的设计。常见的几种方式有:完全显示(或者按“F”)、放大按钮(或者按“F”)和缩小按钮(或者按“F”)拖放、取景、找中心(或者按“F”)。五、点状栅格和刷新编辑区域的点状栅格是为了方便元器件定位用的。鼠标指针在编辑区域移动时移动的步长就是栅格的尺度称为“Snap(捕捉)”。这个功能可使元件依据栅格对齐。、显示和隐藏点状栅格点状栅格的显示和隐藏可以通过工具栏的按钮或者按快捷键的“G”来实现。鼠标移动的过程中在编辑区的下面将出现栅格的坐标值即坐标指示器它显示横向的坐标值。因为坐标的原点在编辑区的中间有的地方的坐标值比较大不利于我们进行比较。此时可通过点击菜单命令“View”下的“Origin”命令也可以点击工具栏的按钮或者按快捷键“O”来自己定位新的坐标原点。、刷新编辑窗口显示正在编辑的电路原理图可以通过执行菜单命令“View”下的“Redraw”命令来刷新显示内容也可以点击工具栏的刷新命令按钮回或者快捷键“R”与此同时预览窗口中的内容也将被刷新。它的用途是当执行一些命令导致显示错乱时可以使用该命令恢复正常显示。六、对象的放置和编辑、对象的添加和放置点击工具箱的元器件按钮使其选中再点击IsIs对象选择器左边中间的置P按钮出现“PickDevices”对话框如图所示。在这个对话框里我们可以选择元器件和一些虚拟仪器。笔者以添加单片机PICF为例来说明怎么把元器件添加到编辑窗口的。在“Gategory(器件种类)”下面我们找到“MicoprocessorIC”选项鼠标左键点击一下在对话框的右侧我们会发现这里有大量常见的各种型号的单片机。找到单片机PICF双击“PICF”情形如图所示。这样在左边的对象选择器就有了PICF这个元件了。点击一下这个元件然后把鼠标指针移到右边的原理图编辑区的适当位置点击鼠标的左键就把PICF放到了原理图区。、放置电源及接地符号我们会发现许多器件没有Vcc和GND引脚其实他们隐藏了在使用的时候可以不用加电源。如果需要加电源可以点击工具箱的接线端按钮这时对象选择器将出现一些接线端如图所示。在器件选择器里点图击GROUND鼠标移到原理图编辑区左键点击一下即可放置接地符号同理也可以把电源符号POWER放到原理图编辑区。、对象的编辑调整对象的位置和放置方向以及改变元器件的属性等有选中、删除、拖动等基本操作方法很简单不再详细说明。其他操作还有:()拖动标签:许多类型的对象有一个或多个属性标签附着。可以很容易地移动这些标签使电路图看起来更美观。移动标签的步骤如下:首先点击右键选中对象然后用鼠标指向标签按下鼠标左键。一直按着左键就可以拖动标签到你需要的位置释放鼠标即可。()对象的旋转:许多类型的对象可以调整旋转为。、。、。、。或通过x轴y轴镜象旋转。当该类型对象被选中后“旋转工具按钮”图标会从蓝色变为红色然后就可以改变对象的放置方向。旋转的具体方法是:首先点击右键选中对象然后根据你的要求用鼠标左键点击旋转工具的个按钮。()编辑对象的属性:对象一般都具有文本属性这些属性可以通过一个对话框进行编辑。编辑单个对象的具体方法是:先用鼠标右键点击选中对象然后用鼠标左键点击对象此时出现属性编辑对话框。也可以点击工具箱的按钮再点击对象也会出现编辑对话框。图是电阻的编辑对话框这里你可以改变电阻的标号、电阻值、PCB封装以及是否把这些东西隐藏等修改完毕点击“OK”按钮即可。参考作原理图仿真调试原理图的绘制、画导线Proteus的智能化可以在你想要画线的时候进行自动检测。当鼠标的指针靠近一个对象的连接点时跟着鼠标的指针就会出现一个“×”号鼠标左键点击元器件的连接点移动鼠标(不用一直按着左键)就。出现了粉红色的连接线变成了深绿色。如果你想让软件自动定出线路径,只需左击另一个连接点即可。这就是Proteus的线路自动路径功能(简称WAR)如果你只是在两个连接点用鼠标左击WAR将选择一个合适的线径。WAR可通过使用工具栏里的“WAR”命令按钮来关闭或打开也可以在菜单栏的“Tools”下找到这个图标。如果你想自己决定走线路径只需在想要拐点处点击鼠标左键即可。在此过程的任何时刻你都可以按ESC或者点击鼠标的右键来放弃画线。、画总线为了简化原理图我们可以用一条导线代表数条并行的导线这就是所谓的总线。点击工具箱的总线按钮即可在编辑窗口画总线。、画总线分支线点击工具的按钮画总线分支线它是用来连接总线和元器件管脚的。画总线的时候为了和一般的导线区分我们一般喜欢画斜线来表示分支线但是这时如果WAR功能打开是不行的需要把WAR功能关闭。画好分支线我们还需要给分支线起个名字。右键点击分支线选中它接着左键点击选中的分支线就会出现分支线编辑对话框同端是连接在一起的放置方法是用鼠标单击连线工具条中图标或者执行Place/NetLabel菜单命令这时光标变成十字形并且将有一虚线框在工作区内移动再按一下键盘上的Tab键系统弹出网络标号属性对话框在Net项定义网络标号比如PB单击OK】将设置好的网络标号放在第()步放置的短导线上(注意一定是上面)单击鼠标左键即可将之定位。()放置总线将各总线分支连接起来方法是单击放置工具条中图标或执行Place/Bus菜单命令这时工作平面上将出现十字形光标将十字光标移至要连接的总线分支处单击鼠标左键系统弹出十字形光标并拖着一条较粗的线然后将十字光标移至另一个总线分支处单击鼠标的左键一条总线就画好了。、使用技巧。当电路中多根数据线、地址线、控制线并行时使用总线设计。三、跳线跳线在电路板设计中经常使用但在一般的教科书中往往没有谈及这个问题只有靠设计者在设计中自己去摸索。跳线简单地说就是在电路板中用一根将两焊盘连接的导线也有人把它称为跨接线。多使用于单面板、双面板设计中特别是单面板设计中使用得更多。在单面板的设计中当有些铜膜线无法连接即使ProteSE给连通了进行电气检查也是错的系统会显示错误标志。通常解决的办法是使用跳线跳线的长度应该选择如下几种:mm、mm和mm。放置跳线的方法是在布线层(底层布线)用人工布线的方式放置当遇到相交线的时候就用过孔走到背面(顶层)进行布线跳过相交线然后回到原来层面(底层)布线。值得说明的是为了便于识别最好在顶层的印丝层(TopOverlay)做上标志在图中有两根跳线。在PCB板安装元件的时候跳线就用短的导线或者就用剪下元件引脚上多余的部分安装。(EditWireLabe)如图所示。我们在Label标签下的String右边填上所起的分支线的名称。、放置线路节点如果在交叉点有电路节点则认为两条导线在电气上是相连的否则就认为它们在电气上是不相连的。笔者发现ISIS在画导线时能够智能地判断是否要放置节点。但在两条导线交叉时是不放置节点的这时要想两个导线电气相连只有手工放置节点了。点击工具箱的节点放置按钮当把鼠标指针移到编辑窗口指向一条导线的时候会出现一个“×”号点击左键就能放置一个节点。Proteus可以同时编辑多个对象即整体操作。常见的有整体复制暑、整体删除暖、整体移动墨、整体旋转圈几种操作方式。图模拟调试、一般电路的模拟调试笔者用一个简单的电路来演示如何进行模拟调试。电路如图所示。设计这个电路的时候需要在“Category(器件种类)”里找到“BATTERY(电池)”、“FUSE(保险丝)”、“LAMP(灯泡)”、“POTLIN(滑动变阻器)”、“SWITCH(开关)”这几个元器件并添加到对象选择器里。另外我们还需要一个虚拟仪器电流表。点击虚拟仪表按钮罾在对象选择器找到“DCAMMETER(电流表)”添加到原理图编辑区按照图布置元器件并连接好。我们在进行模拟之前还需要设置各个对象的属性。选中电源B再点击左键出现了属性对话框如图所示。在“ComponentReference”后面填上电源的名称在“Voltage”后面填上电源的电动势的值这里我们设置为V。在“InternalResistance”后面填上内电阻的值Ω。其他元器件的属性设置如下:滑动变阻器的阻值为Ω灯泡的电阻是Ω额定电压是V保险丝的额定电流是A内电阻是Ω。点击菜单栏“Debug(调试)”下的按钮或者点击模拟调试按钮的运行按钮也可以按下快捷键“CtrlF”进入模拟调试状态。把鼠标指针移到开关的这时出现了一个“”号点击一下就合上了开关如果想打开开关鼠标指针移到将出现一个“一”号点击一下就会打开开关。开关合上后我们就发现灯泡已经点亮了电流表也有了示数。把鼠标指针移到滑动变阻器附近的分别点击使电阻变大或者变小我们会发现灯泡的亮暗程度发生了变化电流表的示数也发生了变化。如果电流超过了保险丝的额定电流保险丝就会熔断。可惜在调试状态下没有修复的命令。我们可以这样修复:按圃按钮停止调试然后再进入调试状态保险丝就修复好了。、单片机电路的模拟电路设计首先我们设计一个简单的单片机电路如图所示。电路的核心是单片机ATCC、C和晶振B构成单片机时钟电路。单片机的P口接个发光二极管二极管的正极通过限流电阻接到电源的正极两个按键SB与SB一端接到单片机的P、P脚另一端接地。电路功能按下按键SB时个发光二极管从LED到LED轮流发光。当按下按键SB时发光二极管熄灭。程序设计程序主要有按键检测子程序、按键处理子程序、LED发光子程序等。程序的编译该软件有自带编译器有ASM的、PIC的、AVR的汇编器等。在ISIS添加上编写好的程序方法如下.点击菜单栏“Source”在下拉菜单点击“Add/RemoveSourceFiles(添加或删除源程序)”出现一个对话框如图所示。点击对话框的“NEW”按钮在出现的对话框找到文件设计好的huayang.asm点击打开在“CodeGenerationTool”的下面找到“ASEM”然后点击“OK”按钮设置完毕我们就可以编译了。点击菜单栏的“Source”在下拉菜单点击“BuildAll”过一会编译结果的对话框就会出现在我们面前如图所示。如果有错误对话框会告诉我们是哪一行出现了问题可惜的是点击出错的提示光标不能跳到出错地方但是能告诉出错的行号。模拟调试选中单片机ATC左键点击ATC在出现的对话框里点击ProgramFile按钮找到刚才编译得到的HEX文件然后点击“OK”按钮就可以模拟了。点击模拟调试按钮的运行按钮进人调试状态。点击按键SB看到发光二极管是否依次点亮也试试按键SB。我们还可以单步模拟调试点击按钮进人单步调试状态这时应该出现如图所示对话框。在这个对话框里。我们可以设置断点。鼠标点击一下程序语句此时这个语句变为黑色点击右键出现一个菜单点击按钮就在相应的语句设置了断点也可以点击右上角的按钮设置断点。点击焉按钮可以取消断点。在单步模拟调试状态下点击菜单栏的“Debug”在下拉菜单的最下面我们看到了如图所示的情形。点击SimulationLog会出现和模拟调试有关的信息:点击CPUSFRMemory会出现特殊功能寄存器(SFR)窗口点击CPUInternal(IDATA)Memory出现数据寄存器窗口。比较有用的还是WatchWindow窗口点击一下将出现图的窗口在这里可以添加常用的寄存器。在图的窗口里点击右键在出现的菜单点击AddItem(Byname)就会出现图的在这里我们选择P双击P这时P就在WatchWindow窗口。我们可发现无论在单步调试状态还是在全速调试状态WatchWindow的内容都会随着寄存器的变化而变化这点是很有用的。四、实例一下面以一个简单的实例来完整的展示一个KeilC与Proteus相结合的仿真过程。单片机电路设计如图所示。电路的核心是单片机ATC。单片机的P口八个引脚接LED显示器的段选码(a、b、c、d、e、f、g、dp)的引脚上单片机的P口六个引脚接LED显示器的位选码(、、、、、)的引脚上电阻起限流作用总线使电路图变得简洁。程序设计实现LED显示器的选通并显示字符。电路图的绘制、将所需元器件加入到对象选择器窗口。PickingComponentsintotheSchematic单击对象选择器按钮如图所示弹出“PickDevices”页面在“Keywords”输入ATC系统在对象库中进行搜索查找并将搜索结果显示在“Results”中如图所示。在“Results”栏中的列表项中双击“ATC”则可将“ATC”添加至对象选择器窗口。接着在“Keywords”栏中重新输入SEG如图所示。双击“SEGMPXCABLUE”则可将“SEGMPXCABLUE”(位共阳段LED显示器)添加至对象选择器窗口。最后在“Keywords”栏中重新输入RES选中“MatchWholeWords”,如图所示。在“Results”栏中获得与RES完全匹配的搜索结果。双击“RES”则可将“RES”(电阻)添加至对象选择器窗口。单击“OK”按钮结束对象选择。经过以上操作在对象选择器窗口中已有了SEGMPXCABLUE、ATC、RES三个元器件对象若单击ATC在预览窗口中见到ATC的实物图如图所示若单击RES或SEGMPXCABLUE在预览窗口中见到RES和SEGMPXCABLUE的实物图如图所示。此时我们已注意到在绘图工具栏中的元器件按钮处于选中状态。、放置元器件至图形编辑窗口PlacingComponentsontotheSchematic在对象选择器窗口中选中SEGMPXCABLUE将鼠标置于图形编辑窗口该对象的欲放位置、单击鼠标左键该对象被完成放置。同理将ATC和RES放置到图形编辑窗口中。如图所示。若对象位置需要移动将鼠标移到该对象上单击鼠标右键此时我们已经注意到该对象的颜色已变至红色表明该对象已被选中按下鼠标左键拖动鼠标将对象移至新位置后松开鼠标完成移动操作。由于电阻R~R的型号和电阻值均相同因此可利用复制功能作图。将鼠标移到R单击鼠标右键选中R在标准工具栏中单击复制按钮拖动鼠标按下鼠标左键将对象复制到新位置如此反复直到按下鼠标右键结束复制。此时我们已经注意到电阻名的标识系统自动加以区分。、放置总线至图形编辑窗口单击绘图工具栏中的总线按钮使之处于选中状态。将鼠标置于图形编辑窗口单击鼠标左键确定总线的起始位置移动鼠标屏幕出现粉红色细直线找到总线的终了位置单击鼠标左键再单击鼠标右键以表示确认并结束画总线操作。此后粉红色细直线被蓝色的粗直线所替代如图所示。、元器件之间的连线WiringUpComponentsontheSchematicProteus的智能化可以在你想要画线的时候进行自动检测。下面我们来操作将电阻R的右端连接到LED显示器的A端。当鼠标的指针靠近R右端的连接点时跟着鼠标的指针就会出现一个“×”号表明找到了R的连接点单击鼠标左键移动鼠标(不用拖动鼠标)将鼠标的指针靠近LED显示器的A端的连接点时跟着鼠标的指针就会出现一个“×”号表明找到了LED显示器的连接点同时屏幕上出现了粉红色的连接单击鼠标左键粉红色的连接线变成了深绿色同时线形由直线自动变成了º的折线这是因为我们选中了线路自动路径功能。Proteus具有线路自动路径功能(简称WAR)当选中两个连接点后WAR将选择一个合适的路径连线。WAR可通过使用标准工具栏里的“WAR”命令按钮来关闭或打开也可以在菜单栏的“Tools”下找到这个图标。同理我们可以完成其它连线。在此过程的任何时刻都可以按ESC键或者单击鼠标的右键来放弃画线。、元器件与总线的连线画总线的时候为了和一般的导线区分我们一般喜欢画斜线来表示分支线。此时我们需要自己决定走线路径只需在想要拐点处单击鼠标左键即可如图所示。、给与总线连接的导线贴标签PARTLABELS单击绘图工具栏中的导线标签按钮使之处于选中状态。将鼠标置于图形编辑窗口的欲标标签的导线上跟着鼠标的指针就会出现一个“×”号如图所示。表明找到了可以标注的导线单击鼠标左键弹出编辑导线标签窗口如图所示。在“string”栏中输入标签名称(如a)单击“OK”按钮结束对该导线的标签标定。同理可以标注其它导线的标签如图所示。注意在标定导线标签的过程中相互接通的导线必须标注相同的标签名。至此我们便完成了整个电路图的绘制。KeilC与Proteus连接调试、假若KeilC与Proteus均已正确安装在C:ProgramFiles的目录里把C:ProgramFilesLabcenterElectronicsProteusProfessionalMODELSVDMdll复制到C:ProgramFileskeilCCBIN目录中。、用记事本打开C:ProgramFileskeilCCTOOLSINI文件在C栏目下加入:TDRV=BINVDMDLL("ProteusVSMMonitorDriver")其中“TDRV”中的“”要根据实际情况写不要和原来的重复。(步骤和只需在初次使用设置。)、进入KeilCμVision开发集成环境创建一个新项目(Project)并为该项目选定合适的单片机CPU器件(如:Atmel公司的ATC)。并为该项目加入KeilC源程序。源程序如下:#defineLEDS#include"regh"led灯选通信号unsignedcharcodeSelect={x,x,x,x,x,x}unsignedcharcodeLEDCODES={xc,xF,xA,xB,x,x,x,xF,x,x,x,x,xC,xA,x,A,b,C,d,ExE,xFF,xC,x,xF,xBFF,空格,P,H,,}voidmain(){chari=longintjwhile(){P=P=LEDCODESiP=Selectifor(j=j>j)该LED模型靠脉冲点亮第i位靠脉冲点亮后会自动熄来头。修改循环次数改变点亮下一位之前的延时可得到不同的显示效果。iif(i>)i=}}、单击“Project菜单OptionsforTarget”选项或者点击工具栏的“optionfortarget”按钮弹出窗口点击“Debug”按钮出现如图所示页面。在出现的对话框里在右栏上部的下拉菜单里选中“ProteusVSMMonitor一Driver”。并且还要点击一下“Use”前面表明选中的小圆点。再点击“Setting”按钮设置通信接口在“Host”后面添上“”如果使用的不是同一台电脑则需要在这里添上另一台电脑的IP地址(另一台电脑也应安装Proteus)。在“Port”后面添加“”。设置好的情形如图所示点击“OK”按钮即可。最后将工程编译进入调试状态并运行。、Proteus的设置进入Proteus的ISIS鼠标左键点击菜单“Debug”选中“useromotedebugermonitor”如图所示。此后便可实现KeilC与Proteus连接调试。、KeilC与Proteus连接仿真调试单击仿真运行开始按钮我们能清楚地观察到每一个引脚的电频变化红色代表高电频蓝色代表低电频。在LED显示器上循环显示、、、、、。五、实例二电路图的绘制、将所需元器件加入到对象选择器窗口。PickingComponentsintotheSchematic单击对象选择器按钮如图所示。在弹出“PickDevices”页面中使用搜索引擎在“Keywords”栏中分别输入“LS”、“CBUS”和“MEMORY”在搜索结果“Results”栏中找到该对象并将其添加至对象选择器窗口如图所示。、放置元器件至图形编辑窗口。将“LS”、“CBUS”和“MEMORY”放置到图形编辑窗口如图所示。、放置总线至图形编辑窗口单击绘图工具栏中的总线按钮使之处于选中状态。将鼠标置于图形编辑窗口绘制出如图所示的总线。在绘制总线的过程中应注意:当鼠标的指针靠近对象的连接点时鼠标的指针会出现一个“×”号表明总线可以接至该点在绘制多段连续总线时只需要在拐点处单击鼠标左键其它步骤与绘制一段总线相同。、添加时钟信号发生器和接地引脚单击绘图工具栏中的信号发生器按钮在对象选择器窗口选中对象DCLOCK如图所示。将其放置到图形编辑窗口。单击绘图工具栏中的IntersheetTerminal按钮在对象选择器窗口选中对象GROUND如图所示。将其放置到图形编辑窗口。、元器件之间的连线WiringUpComponentsontheSchematic在图形编辑窗口完成各对象的连线如图所示。此过程中注意两点:当时钟信号发生器与单片机的XTAL引脚完成连线后系统自动将信号发生器名改为U(XTAL)取代以前使用的“”当线路出现交叉点时若出现实心小黑园点表明导线接通否则表明导线无接通关系。当然我们可以通过绘图工具栏中的连接点按钮完成两交叉线的接通。、给导线或总线加标签单击绘图工具栏中的导线标签按钮在图形编辑窗口完成导线或总线的标注如图所示。此过程中注意两点:当时钟信号发生器与单片机的XTAL引脚完成连线标注为CLOCK后系统自动将信号发生器名改为CLOCK取代以前使用的“U(XTAL)”总线的命名可以与单片机的总线名相同也可不同。但方括号内的数字却赋予了特定的含义。例如总线命名为:AD意味着此总线可以分为条彼此独立的命名为AD、AD、AD、AD、AD、AD、AD、AD的导线若该总线一旦标注完成则系统自动在导线标签编辑页面的“String”栏的下拉菜单中加入以上组导线名今后在标注与之相联的导线名时如AD要直接从导线标签编辑页面的“String”栏的下拉菜单中选取如图所示若标注名为直接在导线标签编辑页面的“String”栏中输入“$WR$”即可也就是说可以用两个“$”符号来字母上面的横线。、添加电压探针单击绘图工具栏中的电压探针按钮在图形编辑窗口完成电压探针的添加如图所示。在此过程中电压探针名默认为“”当电压探针的连接点与导线或者总线连结后电压探针名自动更改为已标注的导线名总线名或者与该导线连接的设备引脚名。、设置元器件的属性在图形编辑窗口内将鼠标置于时钟信号发生器上单击鼠标右键选中该对象单击鼠标左键进入对象属性编辑页面如图所示。在“FrequencyHz”栏中输入M单击“OK”按钮结束设置。此番操作意味着时钟信号发生器给单片机提供频率为MHz的时钟信号。在图形编辑窗口内将鼠标置于单片机上单击鼠标右键选中该对象单击鼠标左键进入对象属性编辑页面如图所示。在“ProgramFile”中通过打开按钮添加程序执行文件。、添加虚拟逻辑分析仪在我们绘制图形的过程中遇到复杂的图形通常一幅图很难准确的表达设计者的意图往往需要多幅图来共同表达一个设计。ProteusISIS能够支持一个设计有多幅图的情况。前面我们所绘图形是装在第一幅图中这一点我们可通过状态栏中的“Rootsheet”中得知下面我们将虚拟逻辑分析仪添加到第二幅图(“Rootsheet”)中。单击“Design”菜单选中其下拉菜单“NewSheet”,如图所示。或者单击标准工具栏中的新建一幅图按钮此时我们注意到状态栏中显示为“Rootsheet”表明可以在第二幅图中绘制设计图了。此时我们也注意到在“Design”菜单中有许多针对不同图幅的操作比如:不同图幅之间的切换可以使用快捷键“PageDown”或“PageUp”等可供我们使用。单击绘图工具栏中的虚拟仪器按钮在对象选择器窗口选中对象LOGICANALYSER如图所示。将其放置到图形编辑窗口。、给逻辑分析仪添加信号终端单击绘图工具栏中的IntersheetTerminal按钮在对象选择器窗口选中对象DEFAULT如图所示将其放置到图形编辑窗口在对象选择器窗口选中对象BUS如图所示将其放置到图形编辑窗口如图所示。、将信号终端与虚拟逻辑分析仪连线并加标签在图形编辑窗口完成信号终端与虚拟逻辑分析仪连线。单击绘图工具栏中的导线标签按钮在图形编辑窗口完成导线或总线的标注将标注名移动至合适位置如图所示。通过标注我们顺利地完成了第一幅图与第二幅图的衔接。至此我们便完成了整个电路图的绘制。、调试运行使用快捷键“PageDown”将图幅切换到“Rootsheet”。单击仿真运行开始按钮我们能清楚地观察到:引脚的电频变化。红色代表高电频蓝色代表低电频灰色代表未接入信号或者为三态。电压探针的值在周期性的变化。单击仿真运行结束按钮仿真结束。使用快捷键“PageDown”将图幅切换到“Rootsheet”。单击仿真运行开始按钮我们能清楚地观察到虚拟逻辑分析仪A、A、A、A端代表高低电频红色与蓝色交替闪烁通常会同时弹出虚拟逻辑分析仪示波器如图所示。如未弹出虚拟逻辑分析仪示波器可单击仿真结束按钮结束仿真。单击“Debug”菜单选中并执行下拉菜单“ResetPopupWindows”如图所示。在弹出的对话框中选择“Yes”执行。再单击仿真运行开始按钮便会弹出虚拟逻辑分析仪示波器。单击逻辑分析仪的启动键在逻辑分析仪上出现如图所示的波形图这就是读写存储器的时序图六、实例三使用元件工具箱ProteusISIS主窗口左端的元件工具箱与工具条的作用相似包含添加全部元器件的快捷图标按钮与菜单中的元器件添加命令完全对应用法与工具条一致。通过选取主窗口的菜单项ViewElementPalette()可以隐藏显示这个工具箱。使用状态信息条ProteusISIS主窗口下端的状态条显示当前电路图编辑状态以及键盘中几个键的当前状态这些状态显示用于方便用户的操作。几个输出窗口下端也有状态条显示当前鼠标位置对应的坐标值并随鼠标的移动及时地更新便于用户读图。通过选取主窗口的菜单项ViewStatusBar()可以隐藏显示这个状态条。使用对话框ProteusISIS中全部参数输入均采用对话框完成。各种对话框虽功能不同但都具有共同的特点。所有对话框均包含有按钮、列表框、组合框、编辑框等几种控制均含有OK()和Cancel()两个特殊按钮。点按OK()可关闭对话框并使参数输入生效点按Cancel()也可关闭对话框但使参数输入全部失效。使用计算器工具计算器窗口可以计算微带线特性和常规算术运算详见第章使用仿真信息窗口ProteusISIS的仿真信息窗口显示正在进行的电路仿真的执行状态、出错信息以及执行结果如电路的成品率等。用户可根据这些信息来查错、是否继续做优化、是否应强行终止仿真。通过选取主窗口的菜单项ViewSimulationMessage()可以隐藏显示这个窗口。关闭ProteusISIS在主窗口中选取菜单项FileExit()屏幕中央出现提问框问用户是否想关闭ProteusISIS关闭ProteusISIS点按OK()键即可关闭ProteusISIS。如果当前电路图修改后尚未存盘在提问框出现前还会询问用户是否存盘。四、菜单命令简述以下分别列出主窗口和四个输出窗口的全部菜单项。对于主窗口在菜单项旁边同时列出工具条中对应的快捷鼠标按钮。主窗口菜单File()()New()新建一个电路文件()Open()…打开一个已有电路文件()Save()将电路图和全部参数保存在打开的电路文件中()SaveAs()…将电路图和全部参数另存在一个电路文件中()Print()…打印当前窗口显示的电路图()PageSetup()…设置打印页面()Exit()退出ProteusISISEdit()()Rotate()旋转一个欲添加或选中的元件()Mirror()对一个欲添加或选中的元件镜像()Cut()将选中的元件、连线或块剪切入裁剪板()Copy()将选中的元件、连线或块复制入裁剪板()Paste()将裁切板中的内容粘贴到电路图中()Delete()删除元件连线或块()Undelete()恢复上一次删除的内容()SelectAll()选中电路图中全部的连线和元件View()()Redraw()重画电路()ZoomIn()放大电路到原来的两倍()ZoomOut()缩小电路到原来的/()FullScreen()全屏显示电路()DefaultView()恢复最初状态大小的电路显示()SimulationMessage()显示/隐藏分析进度信息显示窗口()CommonToolbar()显示/隐藏一般操作工具条()OperatingToolbar()显示/隐藏电路操作工具条()ElementPalette()显示/隐藏电路元件工具箱()StatusBar()显示/隐藏状态条Place()()Wire()添加连线()Element()添加元件aLumped()添加各个集总参数元件bMicrostrip()添加各个微带元件cSParameter(S)添加各个S参数元件dDevice()添加各个三极管、FET等元件()Done()结束添加连线、元件Parameters()()Unit()打开单位定义窗口()Variable()打开变量定义窗口()Substrate()打开基片参数定义窗口()Frequency()打开频率分析范围定义窗口()Output()打开输出变量定义窗口()OptYieldGoal()打开优化成品率目标定义窗口()Misc()打开其它参数定义窗口Simulate()()Analysis()执行电路分析()Optimization()执行电路优化()YieldAnalysis()执行成品率分析()YieldOptimization()执行成品率优化()UpdateVariables()更新优化变量值()Stop()强行终止仿真Result()()Table()打开一个表格输出窗口()Grid()打开一个直角坐标输出窗口()Smith()打开一个Smith圆图输出窗口()Histogram()打开一个直方图输出窗口()CloseAllCharts()关闭全部输出窗口()LoadResult()调出并显示输出文件()SaveResult()将仿真结果保存到输出文件Tools()()InputFileViewer()启动文本显示程序显示仿真输入文件()OutputFileViewer()启动文本显示程序显示仿真输出文件()Options()更改设置Help()()Content()查看帮助内容()Elements()查看元件帮助()About()查看软件版本信息表格输出窗口(Table)菜单()()Print()…打印数据表()Exit()关闭窗口()()Variable()…选择输出变量方格输出窗口(Grid)菜单()()Print()…打印曲线()Pagesetup()…打印页面()Exit()关闭窗口()()Variable()…选择输出变量()Coord()…设置坐标Smith圆图输出窗口(Smith)菜单()()Print()…打印曲线()Pagesetup()…打印页面()Exit()关闭窗口()()Variable()…选择输出变量直方图输出窗口(Histogram)菜单()()Print()…打印曲线()Pagesetup()…打印页面()Exit()关闭窗口()()Variable(变量)…选择输出变量

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/58

单片机仿真软件PROTEUS入门编程

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利