微机原理与接口技术课件:Proteus仿真平台的使用_第1页
微机原理与接口技术课件:Proteus仿真平台的使用_第2页
微机原理与接口技术课件:Proteus仿真平台的使用_第3页
微机原理与接口技术课件:Proteus仿真平台的使用_第4页
微机原理与接口技术课件:Proteus仿真平台的使用_第5页
已阅读5页,还剩102页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Proteus仿真平台的使用4.1

Proteus简介4.2

ProteusISIS的基本使用4.3

ProteusISIS下8086的仿真4.4

ProteusISIS下8086汇编语言程序设计示例本章小结学习目标

本章重点介绍ProteusISIS的作用及基本操作方法,ProteusISIS下8086的仿真(包括ProteusISIS电路原理图设计、Proteus中配置8086编译工具、编译汇编文件及仿真调试方法),ProteusISIS下8086汇编语言程序设计。要求读者熟悉和掌握Proteus的使用方法、仿真调试、汇编程序设计等相关知识,为后续章节的学习打下良好的基础。学习重点

(1) ProteusISIS的基本操作方法。

(2) ProteusISIS电路原理图设计。

(3) Proteus中8086编译工具的配置。

(4) Proteus中编译汇编文件及仿真调试。

(5) ProteusISIS下8086汇编语言程序设计。

4.1

Proteus简介

Proteus是英国LabcenterElectronics公司研发的电路分析与实物仿真软件,包括ISIS、ARES等软件模块,ARES模块主要用于完成PCB的设计,而ISIS模块用于完成电路原理图的布图与仿真。Proteus运行于Windows操作系统上,具有功能很强的ISIS智能原理图输入系统,有非常友好的人机互动窗口界面和丰富的操作菜单与工具。在ISIS编辑区中,能方便地完成单片机系统的硬件设计、软件设计,以及单片机源代码级调试与仿真。

Proteus有三十多个元器件库,拥有数千种元器件仿真模型;还有形象生动的动态器件库、外设库;特别是有从8051系列8位单片机到ARM732位单片机的多种单片机类型库。Proteus有多达十余种的信号激励源,十余种虚拟仪器(如示波器、逻辑分析仪、信号发生器等);可提供软件调试功能,既具有模拟电路仿真,数字电路仿真,单片机及其外围电路组成的系统的仿真,RS232动态仿真,I2C调试器、SPI调试器、键盘和LCD系统仿真的功能,还有用来精确测量与分析的Proteus高级图表仿真(ASF)。Proteus同时支持第三方的软件编译和调试环境,如KeilC51、uVision2等软件。Protues包含强大的调试工具,具有对寄存器、存储器、断点、单步模式IARC-SPY、Keil、MPLAB等开发工具的源程序进行调试的功能;可观察代码在仿真硬件上的实时运行效果;能对显示、按钮、键盘等外设的交互可视化进行仿真。Proteus还有使用极方便的印刷电路板高级布线编辑软件(PCB)。特别指出,Proteus库中数千种仿真模型是依据生产企业提供的数据来建模的,因此Proteus的设计与仿真极其接近实际。

目前,Proteus已成为流行的嵌入式系统设计与仿真平台,应用于各种领域。实践证明:Proteus是单片机应用产品研发的灵活、高效、正确的设计与仿真平台,它能明显提高研发效率、缩短研发周期,并节约研发成本。

4.2

ProteusISIS的基本使用

4.2.1

ProteusISIS操作界面及工具

ProteusISIS的工作界面是一种标准的Windows界面,包括标题栏、主菜单、标准工具栏、模型选择工具栏(即绘图工具栏)、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、原理图编辑窗口。

安装完Proteus后,单击ISIS快捷方式,运行ISISProfessional,会出现如图4-1所示的窗口界面。图4-1

ProteusISIS的工作界面

ProteusISIS的工作界面中各部分的功能简单介绍如下:

1.原理图编辑窗口(TheEditingWindow)

原理图编辑窗口是用来编辑和绘制原理图的,元件要放到原理图编辑窗口中。注意,这个窗口是没有滚动条的,可用预览窗口来改变原理图的可视范围。

1)坐标系统(CO-ORDINATESYSTEM)

ISIS中坐标系统的基本单位是10 nm,主要是为了和ProteusARES保持一致;但坐标系统的识别(read-out)单位被限制在1 th。坐标原点默认在图形编辑区的中间,图形的坐标值能够显示在屏幕的右下角的状态栏中。图4-2

View菜单

3)实时捕捉(RealTimeSnap)

当鼠标指针指向引脚末端或者导线时,鼠标指针将会捕捉到这些物体,这种功能被称为实时捕捉。实时捕捉可以方便地实现导线和引脚的连接。通过Tools菜单的RealTimeSnap命令或者快捷键Ctrl + S可以切换该功能;通过View菜单的Redraw命令可以刷新显示内容,同时预览窗口中的内容也将被刷新。当执行其他命令导致显示错乱时,使用实时捕捉功能可以恢复显示。

4)视图的缩放与移动

通过以下三种方式可以实现视图的缩放与移动:

(1)用鼠标左键点击预览窗口中想要显示的位置,使编辑窗口显示以鼠标点击处为中心的内容。

(2)在编辑窗口内移动鼠标,按下Shift键,用鼠标“撞击”边框,使显示平移。这称之为Shift + Pan。

(3)用鼠标指向编辑窗口并按

缩放键或者操作鼠标的滚动键,会以鼠标指针位置为中心重新显示。

2.预览窗口(TheOverviewWindow)

预览窗口可显示以下两个内容:

(1)当鼠标焦点落在原理图编辑窗口时(即放置元件到原理图编辑窗口后或在原理图编辑窗口中点击鼠标后),预览窗口会显示整张原理图的缩略图,并会显示一个绿色的方框,绿色的方框里面的内容就是当前原理图窗口中显示的内容。因此,可用鼠标在它上面点击来改变绿色的方框的位置,从而改变原理图的可视范围。

(2)其他情况下,预览窗口显示将要放置的对象的预览。此内容称为PlacePreview特性,该特性在下列情况下被激活:

①当一个元件在元件列表中被选中时;

②当使用旋转或镜像按钮时;

③当为一个可以设定朝向的对象选择类型图标时(例如:Componenticon、DevicePinicon等)。

当放置对象或者执行其他非以上操作时,PlacePreview会自动消除。

3.模型选择工具栏(ModeSelectorToolbar)

模型选择工具栏(即绘图工具栏)主要由模型选择工具、配件选择工具和2D图形选择工具三部分组成,如表4-1所示。

4.元件列表(TheObjectSelector)

元件列表用于挑选元件(components)、终端接口(terminals)、信号发生器(generators)、仿真图表(graph)等。例如,要选择“元件(components)”,可单击“P”按钮打开挑选元件对话框,选择一个元件单击“OK”后,该元件会显示在元件列表中,以后要用到该元件时,只需在元件列表中选择即可。

5.方向工具栏(OrientationToolbar)

方向工具栏如表4-2所示,使用时先选中元件单击右键,再左击相应的方向工具图标。6.仿真工具栏

仿真工具栏中为仿真控制按钮,如表4-3所示。4.2.2基本操作

1.绘制原理图

绘制原理图在原理图编辑窗口中完成。原理图编辑窗口的操作与常见的Windows应用程序操作不同,正确的操作方法如下:

(1)用左键放置元件。

(2)用右键选择元件。

(3)双击右键删除元件。

(4)用右键拖选多个元件。

(5)先右键后左键拖动元件。

(6)先右键后左键编辑元件属性。

(7)连线用左键,删除用右键。

(8)改线连线时,先右击连线,再左键拖动。

(9)用中键缩放原理图。

2.定制元件

在ProteusISIS中定制元件有以下3种方法:

(1)在已有的元件基础上进行改造,如把元件改为总线接口。

(2)利用已有的元件,并在网上下载一些新元件,把它们添加到自己的元件库中。

(3)用ProteusVSMSDK开发仿真模型,并制作元件。4.2.3元件的使用

1.对象放置(ObjectPlacement)

对象放置的步骤如下:

(1)根据对象的类别在工具箱选择相应的模式图标(modeicon)。

(2)根据对象的具体类型选择子模式图标(sub-modeicon)。

(3)如果对象类型是元件、端点、引脚、图形、符号或标记,则从选择器(selector)里选择想要的对象的名字。对于元件、端点、引脚和符号,可能首先需要从库中调出。

(4)如果对象是有方向的,则会在预览窗口显示出来,可以通过预览对象方位按钮对对象进行调整。

(5)指向编辑窗口并点击鼠标左键放置对象。

2.选中对象(TagginganObject)

用鼠标指向对象并点击右键可以选中该对象。使选中对象高亮显示,可以对其进行编辑。选中对象时,该对象上的所有连线同时被选中。

要选中一组对象,可以采用依次在每个对象右击选中每个对象的方式,也可以采用右键拖出一个选择框的方式,但只有完全位于选择框内的对象才可以被选中。

在空白处点击鼠标右键可以取消所有对象的选择。

3.删除对象(DeletinganObject)

用鼠标指向选中的对象并点击右键可以删除该对象,同时删除该对象的所有连线。

4.拖动对象(DragginganObject)

用鼠标指向选中的对象并用左键拖曳可以拖动该对象。该方式不仅对整个对象有效,而且对对象中单独的labels也有效。

如果线路自动路径器功能被使能,则被拖动对象上所有的连线会重新排布或者修整。这将花费一定的时间(10秒左右),尤其在对象有很多连线的情况下,这时鼠标指针变为一个“沙漏”状。如果错误拖动一个对象,所有的连线都被打乱,则可以使用Undo命令撤消操作,将其恢复为原来的状态。

5.拖动对象标签(DragginganObjectLabel)

许多类型的对象有一个或多个属性标签附着。例如,每个元件有一个“reference”标签和一个“value”标签。可以很容易地移动这些标签使得电路图看起来更美观。

移动标签的步骤如下:

(1)选中对象。

(2)用鼠标指向标签,按下鼠标左键。

(3)拖动标签到所需要的位置。如果想要定位的更精确,可以在拖动时改变捕捉的精度(使用F4、F3、F2、Ctrl + F1键)。

(4)释放鼠标。

6.调整对象大小(ResizinganObject)

子电路(Sub-circuits)、图表、线、框和圆的大小可以被调整。当选中这些对象时,对象周围会出现黑色小方块即“手柄”,通过拖动这些“手柄”可以调整对象的大小。

调整对象大小的步骤如下:

(1)选中对象。

(2)如果对象的大小可以被调整,对象周围就会出现黑色小方块,即“手柄”。

(3)用鼠标左键拖动这些“手柄”到新的位置,可以改变对象的大小。在拖动的过程中,“手柄”会消失,以免与对象的显示混叠。

7.调整对象的朝向(ReorientinganObject)

许多类型对象的朝向可以被调整为0°、90°、270°、360°,或通过x轴、y轴镜像。当该类型对象被选中时,Rotation图标和Mirror图标会从蓝色变为红色,然后就可以来改变对象的朝向。

调整对象朝向的步骤如下:

(1)选中对象。

(2)用鼠标左键点击Rotation图标可以使对象逆时针旋转,用鼠标右键点击Rotation图标可以使对象顺时针旋转。

(3)用鼠标左键点击Mirror图标可以使对象按x轴镜像,用鼠标右键点击Mirror图标可以使对象按y轴镜像。

8.编辑对象(EditinganObject)

许多对象具有图形或文本属性,这些属性可以通过一个对话框进行编辑,这是一种常见的操作,有多种实现方式。元件、端点、线和总线标签都可以如同元件一样编辑。

1)编辑单个对象的步骤

(1)选中对象。

(2)用鼠标左键点击对象。

2)连续编辑多个对象的步骤

(1)选择MainMode图标,再选择InstantEdit图标。

(2)依次用鼠标左键点击各个对象。

3)以特定的编辑模式编辑对象的步骤

(1)指向对象。

(2)使用快捷键Ctrl + E。

对于文本脚本来说,这将启动外部的文本编辑器。如果鼠标没有指向任何对象,则该命令对当前的图进行编辑。

4)通过元件的名称编辑元件的步骤

(1)键入E。

(2)在弹出的对话框中输入元件的名称(PartID)。

确定后将会弹出该项目中任何元件的编辑对话框,并非只限于当前sheet的元件。编辑完后,画面将会以该元件为中心重新显示。通过该方式可以定位一个元件,即使并不想对其进行编辑。

5)编辑单个对象标签的步骤

(1)选中对象标签。

(2)用鼠标左键点击对象。

6)连续编辑多个对象标签的步骤

(1)选择MainMode图标,再选择InstantEdit图标。

(2)依次用鼠标左键点击各个标签。

任何一种方式,都将弹出一个带有LabelandStyle栏的对话框窗体。

9.拷贝所有选中的对象(CopyingallTaggedObjects)

拷贝一整块电路的方式如下:

(1)选中需要的对象,具体的方式参照“选中对象(TagginganObject)”部分。

(2)用鼠标左键点击Copy图标。

(3)把拷贝的轮廓拖到需要的位置,点击鼠标左键放置拷贝。

(4)重复步骤(3),放置多个拷贝。

(5)点击鼠标右键结束。

当一组元件被拷贝后,它们的标注自动重置为随机态,用来为下一步的自动标注做准备,以防出现重复的元件标注。

10.移动所有选中的对象(MovingallTaggedObjects)

移动一组对象的步骤如下:

(1)选中需要的对象,具体的方式参照“选中对象(TagginganObject)”部分。

(2)把轮廓拖到需要的位置,点击鼠标左键放置。

使用块移动的方式可以移动一组导线,而不移动任何对象。

11.删除所有选中的对象(DeletingallTaggedObjects)

删除一组对象的步骤如下:

(1)选中需要的对象。

(2)用鼠标左键点击Delete图标。

如果错误删除了对象,可以使用Undo命令将其恢复为原状。4.2.4连线

1.画线(WiringUp)

1)画线

ProteusISIS没有画线的图标按钮,因为ISIS的智能化足以在画线时自动检测。

2)在两个对象间连线

(1)单击第一个对象连接点。

(2)单击另一个连接点。如果想设定走线路径,只需在想要拐点处点击鼠标左键。

在元件和终端的引脚末端都有连接点,一个连接点可以精确地连一根线。一个圆点从中心出发有四个连接点,可以连四根线。由于一般都希望能连接到现有的线上,ISIS也将线视作连续的连接点。此外,一个连接点意味着3根线交汇于一点,ISIS提供一个圆点,避免由于错漏点而引起的混乱。

在画线过程的任何一个阶段,可以按Esc键放弃画线。

2.线路自动路径器(WireAutoRouter,WAR)

线路自动路径器可省去必须标明每根线具体路径的麻烦。这个功能在两个连接点间直接定出对角线时是很有用的。

该功能默认是打开的,但可通过以下两种途径略过该功能:

(1)如果单击一个连接点,然后单击一个或几个非连接点的位置,ISIS将认为处在手工定线的路径,这就要单击线的路径的每个角,最后路径是通过单击另一个连接点来完成的。若只是单击两个连接点,WAR将自动选择一个合适的线径。

(2)使用工具栏里的WAR命令来关闭WAR。

3.重复布线(WireRepeat)

假设要连接一个8字节ROM数据总线到电路图主要数据总线,已将ROM、总线和总线插入点按如图4-3所示位置放置。首先单击A,然后单击B,在AB间画一根水平线。双击C,重复布线功能被激活,自动在CD间布线。双击E、F,重复布线。

重复布线完全复制上一根线的路径。如果上一根线已经是自动重复布线,将仍旧自动复制该路径。另一方面,如果上一根线为手工布线,那么将精确复制用于新的线。图4-3重复布线

4.拖线(DraggingWires)

尽管线一般使用连接和拖的方法,但也有一些特殊方法可以使用。

如果拖动线的一个角,则该角随着鼠标指针移动;如果鼠标指向一个线段的中间或两端,就会出现一个角,然后可以拖动。

注意:为了使后者能够工作,线所连的对象不能有标示,否则ISIS会认为想拖该对象。

5.移动线段或线段组(Tomoveawiresegmentoragroupofsegments)

移动线段或线段组的步骤如下:

(1)在需要移动的线段周围拖出一个选择框,若该“框”为一个线段旁的一条线也是可以的。

(2)单击工具箱里的“移动”图标。

(3)如图4-4所示的相反方向垂直于线段移动“选择框”(Tag-Box)。

(4)单击结束。

如果操作错误,可使用Undo命令返回。

由于对象被移动后节点可能仍留在对象原来位置周围,因此ISIS提供了一项可快速删除线中不需要的节点的技术。

也可使用块移动命令来移动线段或线段组。图4-4移动线段或线段组

6.从线中移走节点(Toremoveakinkfromawire)

从线中移走节点的步骤如下:

(1)选中(Tag)要处理的线。

(2)用鼠标指向节点一角,按下左键。

(3)拖动该角和自身重合。

(4)松开鼠标左键,ISIS将从线中移走该节点。4.2.5器件标注

ProteusISIS提供4种方式来标注器件,即手动标注、全局标注器、属性分配工具和实时标注。默认选择是实时标注,可以在绘图完成后使用属性分配工具或者自动标注工具对标注进行调整。

1)手动标注

手动标注在对象属性编辑(EditProperties)对话框中进行设置。

2)全局标注器

全局标注器用于对原理图中的器件进行自动标注。

进行全局标注的方法是:选择“Tools”菜单中的

“GlobalAnnotator”命令,弹出如图4-5所示的参数设置对话框。

使用全局标注器可以对整个设计进行快速标注,也可以标注未被标注的器件(即图中“?”的器件)。全局标注器有两种操作模式。

(1)增量标注:标注限于特定范围(整个设计或当前图纸)内未被标注的元件。

(2)完全标注:标注限于特定范围(整个设计或当前图纸)内的全部元件。

对于层次化设计的电路推荐使用完全标注模式。图4-5全局标注设置对话框

3)属性分配工具(PAT)

使用属性分配工具可以放置固定或递增的标注。

假设要重新标注R4之后的电阻,即从R4开始,产生增量为1的序列R5、R6等标注电阻,此时可以使用属性分配工具,设置步骤如下:

①选择“Tools”菜单中的“PropertyAssignmentTool”命令,弹出如图4-6所示的参数设置对话框。

②在“String”文本框中输入REF=R#,在“Count”栏中输入4,单击“OK”按钮即可完成设置。

图4-6属性分配工具

ProteusISIS会自动进入选择模式,这样就可以通过单击元件来完成编号工作。

PAT工具也可以应用于其他的场合,比如修改器件量值、替换器件和总线标号放置等,是一个非常强大的应用工具。

4)实时标注

选择实时标注功能后,器件放置时会自动获得标注。4.2.6编辑窗口的操作

1.编辑区域的缩放

原理图编辑的主窗口是一个标准Windows窗口,除具有选择执行各种命令的顶部菜单和显示当前状态的底部状态条外,菜单下方有两个工具条,包含与菜单命令一一对应的快捷按钮;窗口左部还有一个工具箱,包含添加所有电路元件的快捷按钮。工具条、状态条和工具箱均可隐藏。

Proteus的缩放操作多种多样,极大地方便了工程项目的设计。常见的几种缩放方式有:完全显示(或者按“F8”),放大按钮(或者按“F6”)和缩小按钮(或者按“F7”),拖放、取景、找中心(或者按“F5”)。

2.点状栅格和刷新

编辑区域的点状栅格,是为了方便元器件定位用的。鼠标指针在编辑区域移动时,移动的步长就是栅格的尺度,称为“Snap(捕捉)”。这个功能可使元件依据栅格对齐。

1)显示和隐藏点状栅格

点状栅格的显示和隐藏可以通过工具栏中的按钮或者按快捷键“G”来实现。在鼠标移动的过程中,编辑区的下方将出现栅格的坐标值,即坐标指示器,它显示横向的坐标值。坐标的原点在编辑区的中间,当有的地方的坐标值比较大,不利于进行比较时,可通过点击“View”菜单中的“Origin”命令,也可通过点击工具栏中的按钮或者按快捷键“O”来定位新的坐标原点。

2)刷新

编辑窗口显示正在编辑的电路原理图,通过执行“View”菜单中的“Redraw”命令,也可通过点击工具栏中的刷新命令按钮或者按快捷键“R”来刷新显示内容,与此同时,预览窗口中的内容也将被刷新。当因执行一些命令而导致显示错乱时,使用“Redraw”命令可以将其恢复正常显示。

3.对象的放置和编辑

1)对象的添加和放置

单击工具箱中的元器件按钮,使其选中,再点击ISIS对象选择器左边的置P按钮,出现“PickDevices”对话框,如图4-7所示。

在“PickDevices”对话框里可以选择元器件和一些虚拟仪器。下面以选择8086芯片为例,来说明把元器件添加到编辑窗口中的方法。在“Category”(器件种类)下面找到“MicroprocessorICs”选项,然后单击鼠标左键,在对话框的右侧出现了8086元件,如图4-7所示。图4-7选取元器件窗口中的元器件列表

2)放置电源及接地符号

单击工具箱的终端按钮,对象选择器中将出现一些接线端,如图4-8所示。

在器件选择器里分别点击图4-8左侧“TERMINALS”栏下的“POWER”与“GROUND”,再将鼠标移到原理图编辑区,点击左键即可放置电源符号;同样,也可以把接地符号放到原理图编辑区。

3)对象的编辑

调整对象的位置和放置方向以及改变元器件的属性等,有选中、删除、拖动等基本操作。

(1)拖动标签:许多类型的对象有一个或多个属性标签附着。可以很容易地移动这些标签使电路图看起来更美观。移动标签的步骤如下:首先点击右键选中对象,然后用鼠标指向标签,按下鼠标左键。一直按着左键就可以拖动标签到需要的位置,释放鼠标即可。

(2)对象的旋转:许多类型的对象可以调整旋转为0、90、270、360(角度),或通过x轴y轴镜象旋转。当该类型对象被选中后,“旋转工具按钮”图标会从蓝色变为红色,然后就可以改变对象的放置方向。

旋转的具体方法是:首先点击右键选中对象,然后根据要求用鼠标左键点击方向工具栏中的4个按钮。

(3)编辑对象的属性:对象一般都具有文本属性,这些属性可以通过一个对话框进行编辑。

编辑单个对象的具体方法是:先用鼠标右键点击选中对象,然后用鼠标左键点击对象,此时出现属性编辑对话框。也可以通过先点击工具箱中的按钮再点击对象的方法打开属性编辑对话框。例如,要编辑电阻对象的属性,可在电阻属性的编辑对话框里,改变电阻的标号、电阻值、PCB封装以及是否把这些东西隐藏等,修改完毕后,点击“OK”按钮即可。其他元器件的操作方法与此相同。

4.3

ProteusISIS下8086的仿真

4.3.1

ProteusISIS电路原理图设计

本书以图4-9所示电路为例,说明ProteusISIS电路原理图设计的一般过程。图4-9示例电路

1.画导线

Proteus的智能化体现在画线时能进行自动检测。当鼠标的指针靠近一个对象的连接点时,跟着鼠标的指针就会出现一个“×”号,用鼠标左键点击元器件的连接点,移动鼠标(不用一直按着左键),粉红色的连接线就变成了深绿色。如果想让软件自动定出线路径,只需左击另一个连接点即,这就是Proteus的线路自动路径功能(简称WAR)。如果只是用鼠标左击两个连接点,WAR将选择一条合适的线径。WAR可通过使用工具栏里的“WAR”命令按钮来关闭或打开,也可以在菜单栏的“Tools”下找到这个图标。

2.画总线

为了简化原理图,可用一条导线代表数条并行的导线,这就是所谓的总线。点击工具箱中的总线按钮,即可在编辑窗口中画总线。

3.画总线分支线

点击工具箱中的按钮,画总线分支线。总线分支线是用来连接总线和元器件引脚的。画总线时,为了和一般的导线区分,一般用斜线来表示分支线,但是这时如果WAR功能打开是不行的,需要把WAR功能关闭。画好分支线后还需要给分支线命名。右键点击分支线选中它,左键点击选中的分支线后会出现分支线编辑对话框。相同端是连接在一起的,放置方法是用鼠标单击连线工具条中的图标或者执行“Place”菜单中的“NetLabel”命令,这时光标变成十字形并且将有一虚线框在工作区内移动,再按键盘上的“Tab”键,系统弹出网络标号属性对话框,在“Net”项中定义网络标号(比如PB0),然后单击“OK”按钮,将设置好的网络标号放在先前放置的短导线上(注意一定是上面),单击鼠标左键即可将之定位。

4.连接各总线分支

单击放置工具条中的图标或执行“Place”菜单中的“Bus”命令,这时工作平面上将出现十字形光标,将十字光标移至要连接的总线分支处并单击鼠标左键,系统弹出十字形光标并拖着一条较粗的线,然后将十字光标移至另一个总线分支处,单击鼠标左键,一条总线就画好了。

注意:当电路中多根数据线、地址线、控制线并行时,应使用总线设计。

5.放置线路节点

如果在交叉点有电路节点,则认为两条导线在电气上是相连的,否则就认为它们在电气上是不相连的。ProteusISIS在画导线时能够智能地判断是否要放置节点。但是,在两条导线交叉时是不放置节点的,这时要想两个导线电气相连,必须手动放置节点。点击工具箱中的节点放置按钮“+”,当把鼠标指针移到编辑窗口,并指向一条导线时,会出现一个“×”号,点击左键即可放置一个节点。4.3.2

Proteus中配置8086编译工具

Proteus教学实验系统(8086/8051)主要由教学实验箱、实验指导书及其配套光盘组成。通过USB连接线把电脑与实验箱相连接,能完成针对8086的各种交互式仿真实验;通过ISP下载器,可以对8051芯片进行ISP编程,从而进行单片机实验课程。

Proteus本身不带有8086的汇编器和C编译器,因此必须使用外部的汇编器和编译器。汇编器有很多,如TASM、MASM等。C编译器也有很多,如TurboC2.0、BorlandC、VC++、DigitalMarsCCompiler等。这里实验箱选用的是MASM和DigitalMarsCCompiler。在相应的Projects(汇编)和C_Projects(C语言)目录下可以找到Tools目录,里面就有所需要的编译工具。其中,MASM的版本是6.14.8444,DigitalMarsCCompiler的版本是8.42n。下面介绍如何在Proteus中调用外部的编译器进行编译,生成可执行文件.exe。

1. Proteus配置8086汇编编译工具

首先,将tools文件夹(包含汇编程序ml.exe、链接程序link16.exe和批处理文件make.bat)复制到与Proteus实验仿真电路图文件夹在同一级的目录中,修改make.bat文件的内容如下:

@ECHOOFF

..\tools\ml/c/Zd/Zi%1

setstr=%1

setstr=%str:~0,-4%

..\tools\link16/CODEVIEW%str%.obj,%str%.exe,nul.map,,

打开Proteus下的“源代码→设定代码生成工具”菜单,如图4-10所示。图4-10“设定代码生成工具”菜单窗口

其次,在出现的对话框中点击“新建”按钮,选择tools目录下的make_c.bat文件,然后在源程序扩展名下写入ASM,目标代码扩展名写入OBJ,最后,点击“确定”按钮完成配置,如图4-11所示。图4-11“添加/移除代码生成工具”窗口

2.Proteus配置8086C编译工具

使用DigitalMarsCCompiler编译C文件的设置过程如下:

首先,打开Proteus下的“源代码→设定代码生成工具”菜单。

其次,在出现的对话框中点击“新建”按钮,tools目录下的make_c.bat文件,然后在源程序扩展名下写入C,目标代码扩展名下写入EXE,最后,点击“确定”按钮完成配置,如图4-12所示。图4-12添加C代码生成工具4.3.3

Proteus中编译8086汇编文件

1.编译8086汇编文件

打开Proteus下的“源代码→添加/删除源文件”命令,如图4-13所示。图4-13“添加/删除源文件”菜单窗口

在出现的对话框中点击“新建”按钮,加入之前做好的后缀为 .ASM的汇编文件,再选择代码生成工具,找到建好的8086汇编生成工具MAKE,最后点击“确定”按钮,如图4-14所示。

选择“源代码→循环程序.ASM”命令,即可打开源代码编辑窗口,输入并保存汇编源程序,如图4-15所示。图4-14“添加/移除源代码”窗口图4-15源代码编辑窗口

选择“源代码→全部编译”命令,如图4-16所示,可编译源代码。编译成功后,可见如图4-17所示的信息。图4-16“全部编译”菜单窗口图4-17编译成功后的信息窗口

2.编译8086C文件

打开Proteus下的“源代码→添加/删除源文件”命令,如图4-13所示。

在出现的对话框中点击“新建”按钮,如图4-18所示,加入之前做好的后缀为.C的C文件,再选择代码生成工具,找到建好的8086汇编生成工具MAKE_C。其中和汇编不同的是,这里还要加入一个汇编启动文件,但代码生成工具则为空(加入的汇编启动文件为RTL.ASM,如图4-19所示)。

先加入C文件,如图4-18所示;再加入ASM启动文件,如图4-19所示。图4-18添加C文件图4-19添加ASM启动文件图4-20编译代码图4-21编译结果4.3.4仿真调试

Proteus中提供了很多调试工具和手段,这些工具的菜单都放在Proteus的Debug(调试)菜单下,如图4-22所示。图4-22调试菜单

第一栏的菜单是仿真开始、暂停与停止的控制菜单,与ProteusISIS左下角的仿真控制按钮的功能是一样的。

第二栏是执行菜单,可以执行一定的时间后暂停,也可以加断点执行和不加断点执行。

第三栏是代码调试菜单,有单步、连续单步,跳进/跳出函数,跳到光标处等功能。

第四栏是诊断和远程调试监控菜单,但8086没有远程监控功能。设置诊断选择命令可以设置对总线读写、指令执行、中断事件和时序等进行跟踪,跟踪信息的等级有四个级别,分别是取消、只是警告、完全跟踪和调试。级别不同,决定事件记录不同。例如,如果要对中断的整个过程进行详细的分析,则可以选择跟踪或者调试级别,ISIS将会对中断产生的过程、响应的过程进行完整的记录,有助于读者加深中断过程的理解。设置诊断选项如图4-23所示。

最后一栏是8086的各种调试窗口,包括观察窗口、存储器窗口、寄存器窗口、源代码窗口和变量窗口。图4-23设置诊断选项

其中观察窗口如图4-24所示,可以添加变量进行观察,并且可以设置条件断点,如图4-25所示。这在调试程序的时候非常有用。图4-24观察窗口图4-25设置条件断点

变量窗口如图4-26所示,会自动把全局变量添加进来,并实时显示变量值,但不能设置条件断点。

寄存器窗口如图4-27所示,实时显示8086各个寄存器的值。图4-26变量窗口图4-27寄存器窗口

存储器窗口如图4-28所示,实时显示存储器的内容。仿真开始时,ISIS会自动把可执行文件 .exe加载到0x0000地址开始的一段空间内。图4-28存储器窗口图4-29源代码调试窗口

4.4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论