ch02-Proteus仿真软件使用及例子

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2章 Proteus仿真软件使用
一. 实验目的
1. 熟悉Proteus的菜单界面,掌握Proteus的基本操作
2. 掌握8086最小系统的构成
3. 熟悉原理图绘制工具, 掌握Proteus中绘制8086系统原理图的方法
4. 学习Proteus与Emu8086的整合过程
5. 能够根据系统框图在Proteus中绘制8086系统原理图,并加载程序,得到仿真结果
二. 实验条件
安装有Emu8086、Proteus仿真软件的电脑一台。

三. 预习要求
预习Proteus仿真平台的使用方法。

Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件,是一款集单片机和SPICE分析于一身的仿真软件,功能强大。

它运行于Windows操作系统上,可以仿真、分析各种模拟器件和集成电路。

Proteus 本身不带有8086 的汇编器和C 编译器,因此必须使用外部的汇编器和编译器,如Emu8086软件。

1. 通过示例程序了解Proteus仿真平台
2
微微机原理与接口技术实用教程
单击“开始”——“所有程序”——“Proteus 7 Professional”——“ISIS 7 Professional”,启动Proteus仿真平台。

Proteus自带一个8086的示例程序,通过单击Proteus仿真软件左上角的“文件”——“打开设计”——选择“VSM for 8086”——“8086 Demo Board”——“DemoBoard.dsn”,打开8086示例程序,如图2.1。

该示例是以8086为核心,设计了Array
一个具有加减乘除功能的整数计算器,数据用4位七段数码管显示器显示。

通过单击Proteus仿真软件左上角的“文件”——“新建设计”建立新的设计。

图 2.1 8086示例程序
2.Proteus ISIS 工作界面
Proteus ISIS的工作界面是一种标准的Windows界面,如图2.2所示。

包括:标题栏、
主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。

图 2.2 Proteus ISIS 的工作界面
3.Proteus 仿真8086最小系统
Proteus 新建设计,选择元器件,连线,建立原理图(*.dsn );(2
)Emu8086编制相关程序,生成*.asm 文件(例如mycode.asm ),并由Emu8086编译为exe 文件(例如mycode.exe );(3)双击原理图中的8086 CPU ,在接下来的对话框中,“Program File ”预览窗口
图形编辑窗口




栏 仿真进程按钮
对 象选择 窗口
微微机原理与接口技术实用教程
4框中,选择需要加载的文件(例如mycode.exe ),如图2.3所示。

(4)单击仿真进程按钮中的“运行”按钮,开始仿真,得到仿真结果。

图 2.3 加载程序
4.Proteus 配置8086汇编编译工具
将程序嵌入8086 CPU 的方法,除了上述(2)(3)两步之外,也可以在Proteus 中进行一些设置,之后在Proteus 中直接调用Emu8086,生成相应exe 文件,步骤如下:
(1)打开 PROTEUS
菜单栏的“源代码”——“设定代码生成工具”:
(2)在(1)弹出的对话框中选择“新建”按钮:
第1章微型计算机概述5
(3)在(2)弹出的对话框中,找到本机安装的Emu8086文件夹,选择其中的可执行程序“emu8086.exe”,单击“打开”按钮:
微微机原理与接口技术实用教程
6
(4)回到设置对话框后,将“源程序扩展名”设置为“ASM
”,目标代码扩展名设置为“EXE ”,单击“确定”按钮,设置好Emu8086为外部编译器:
第1章微型计算机概述7
以下几步添加源程序代码:
(5)单击菜单栏“源代码”——“添加/删除源文件”:
(6)在弹出的对话框中单击“新建”按钮:
8
微微机原理与接口技术实用教程
(7)在弹出的对话框中,选择相应汇编程序(例如mycode.asm):
第1章微型计算机概述9
点击“确定”,成功。

5. Proteus 调试
在仿真运行过程中,通过Proteus“调试”菜单中的各项选项,可以进行各项调试功能,例如查看寄存器内容、变量内容等。

微微机原理与接口技术实用教程
10
第一栏的菜单是仿真开始、暂停与停止的控制菜单,与 Proteus ISIS 左下角的仿真控制按钮的功能是一样的。

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

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

第四栏是诊断和远程调试监控,但 8086 没有远程监控功能。

诊断可以设置对总线读写,指令执行,中断事件和时序等进行跟踪。

有四个级别,分别是取消、警告、跟踪和调试。

级别的不同,决定事件记录的不同。

例如,如果要对中断的整个过程进行详细的分析,则可以选择跟踪或者调试级别,ISIS 将会对中断产生的过程,响应的过程进行完整的记录。

最后一栏是 8086
的各种调试窗口,包括观察窗口、存储器窗口、寄存器窗口、源代码窗口和变量窗口。

观察窗口可以添加变量进行观察,并且可以设置条件断点。

这在调试程序的时候非常有用。

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

寄存器窗口实时显示 8086 各个寄存器的值。

第1章
微型计 计算机概述
11
存储器窗口实时显示 示存储器的内 内容,仿真开 开始的时候,ISIS 会自动 动把可执行文 文件.exe 加载到0x00 000 地址开始 始的一段空间 间内。

源代码调试窗口是最 最主要的调试 试窗口,在这 这里可以设置 置断点,控制 制程序的运行 行,如果 是C程序,还 还可以进行反 反汇编。


四. 实验 验例子
CPU 通过 通 8255A 与开关 与 K0~K3 和 LED 显示器的接口如 如图 2.4 所示 示。

假设 8255A 的端 口地址为 28 80H~283H, 开关设置的二进制信息由 B 口输入, 经程序转换 换成对应的七 七段 LED 段码后,通过 过 A 口输出,由七段 LE ED 显示开关二进制的状态 态值,如:B 口读入的值 值为 0000 时 LED 将显 显示 0;以此 此类推,B 口读入的值为 1111 时 LED D 将显示 F。

请编写其控 控制程序 并在 Proteus s 中进行仿真 真。


8086 中编写汇 汇编程序(s shiyan2.asm m) 1.根据要求在 Emu8 MOV MOV OUT A AA: MOV MOV IN AND XLAT MOV OUT DX,00 026H AL,82 2H DX,AL L ;初始化 8255A, ,选择 A 口输 输出,B 口输入 入 BX,O OFFSET TAB BL ;表的偏移地 地址送 BX DX,00 022H AL,DX FH AL,0F ;转换 换成对应的七 七段码 020H DX,00 DX,AL L ; 显示 ;读入 入开关状态


12
微微机原理与接口技术实用教程
JMP TABL: DB DB DB DB
AA 3FH,06H,5BH,4FH 66H,6DH,7DH,07H 7FH,6FH,77H,7CH 39H,5EH,79H,71H
;对应 0~F 的七段码
2. 根据系统框图绘制 Proteus 原理图 通过本实验掌握 8086 系统原理图的绘制方法。

绘制原理图的步骤为: 新建设计——添加元件——连线——保存 原理图绘制如下(shiyan2.dsn):
3. 加载程序 用前面介绍的两种方法,将程序 shiyan2.asm 加载到 8086 CPU。

4. 调试 设置断点、单步运行程序进行调试; 观察每一步运行时, 8086 内部寄存器的数值变化。

5. 运行 单击运行按钮,启动仿真,通过点击开关 K0~K3,观察 LED 显示器的显示内容是否符 合要求,若不符合,需要找出原因并解决。



















相关文档
最新文档