1、Proteus仿真软件使用方法 作者: 日期:15 个人收集整理 勿做商业用途实验八 Proteus仿真软件使用方法1. 实验目的:(1) 了解Proteus仿真软件的使用方法。(2)了解51单片机编程器Keil与Proteus仿真软件的联用方法。2. 实验要求:通过讲授和操作练习,学会正确使用Proteus仿真软件及Keil编程及其联合调试。3. 实验内容: (1)Proteus 仿真软件介绍 Proteus 软件是由英国LabCenter Electronics 公司开发的EDA工具软件,由ISIS和ARES两个软件构成,其中ISIS是一款便捷的电子系统仿真平台软件,ARES是一款高级的布
2、线编辑软件.它集成了高级原理布线图、混合模式SPICE电路仿真、PCB设计以及自动布线来实现一个完整的电子设计。 通过Proteus ISIS软件的VSM(虚拟仿真技术), 用户可以对模拟电路、数字电路、模数混合电路,以及基于微控制器的系统连同所有外围接口电子元器件一起仿真。 图81是Proteus ISIS的编辑窗口: 图81 ISIS的编辑界面图中最顶端一栏是“标题栏”,其下的“File View Edit 是“菜单栏,再下面的一栏是“命令工具栏”,最左边的一栏是“模式选择工具栏”;左上角的小方框是“预览窗口”,其下的长方框是“对象选择窗口,其右侧的大方框是“原理图编辑窗口”。 选择左侧“
3、模式选择工具栏”中的图标,并选择“对象选择窗口”中的P按钮,就会出现如图8-2的元器件选择界面: 图8-2 元器件库选择界面在元器件列表框中点击你需要的器件类型(例如:电阻-Resistors,单片机芯片MicroprocessorICs, LEDOptoelectronics)或在左上角的关键字(Keywords)框中输入你需要的器件名称的关键字(如:信号源 - Clock, 运放 - CA3140等),就会在图82中间的大空白框列出你所需的一系列相关的元件。此时,你可用鼠标选中你要的元件,则图8-2右上角的预览框会显示你所要元件的示意图,若就是你要的元器件,则点击OK按钮,该元器件的名称就
4、会列入位于图8-1左侧的“对象选择窗口”中(参见图1左侧下方框)。 所需元器件选择好后,在“对象选择窗口选择某器件,就可以将它放到图81中的“原理图编辑窗口”中(若器件的方向不合适,你可以利用图1左下角的旋转按钮来改变它)。将所要的元器件都选好后,将它们安放到合适的位置,就可以用连接线把电路连接好,结果存盘(请按规定的目录存盘,并记住其路径/目录/文件名学号-实验序号). (2)51单片机编程器 Keil V3的使用 Keil编程器可用于MCS-51单片机软件编程与调试,它的工作界面如图83所示: Keil编程器是Keil Software Inc/Keil Electronic GmbH 开
5、发的基于80C51内核的微处理器软件开发平台,可以完成从工程(Project)的建立和管理、程序的编译和连接、目标代码的形成、软件仿真等一套完整的软件开发流程。它与Proteus挂接,可以进行单片机应用系统的硬件仿真. 汇编语言编程方法: 打开“File”菜单 选择新建“New.。” 在弹出的文本框(Text1)中编写所需的汇编语言程序 程序写好后,保存(从FileSave As。.选择某目录,文件名.ASM, 存盘); 打开“Project”菜单 选择新建工程“New Project。.” 在弹出的窗口填写:工程名 保存(文件名的后缀是 .uv2 。 此时图83的工程窗口中将建立Target
6、1及 Source Group 1) ; 打开“Project菜单 选择Components,Environment,Books。 在弹出的窗口的Project Components 点击“Add Files 加入所写的汇编文件(选中该文件,Add); 打开“Project菜单 选择“Select Device for Target Target 1在弹出的CPU窗口选择所用的单片机厂家(选Atmel)及CPU芯片名称(如AT89C51),按“确定”键; 打开“Project”菜单 选择“Options for Target Target 1”在弹出的窗口中选择“Output” 填入输出文件名
7、称,并选择输出文件类型(HEX文件),见图84. 图8-3 Keil V3 界面图 图84 为输出文件命名及确定HEX类型 打开“Project”菜单 选择“Options for Target Target 1”在弹出的窗口中选择“Debug 为连接调试选择仿真器 见图8-5 按“确定”键。 图8-5 选择调试的仿真器及运行设置 单击(参见图8-3)完成对所编写程序的编译,编译情况会显示在图83的输出窗口中,如有语法错误,会给出提示,应修改出错处后,再次编译。 (3)仿 真: 在Proteus ISIS 界面调入所设计的硬件图,双击CPU,填入相应的HEX运行文件的名称(参见图86,文件所在
8、目录应正确),点击运行按钮,即可实现与硬、软件的联合调试. 图8-6 单片机程序可执行文件的路径、名称输入 (4)示 例:硬件电路图见图87所示;相应的汇编语言程序如下:ORG 0000H AJMP MAIN MAIN: MOV C, P1.3 ;将接按键的I/O口的状态(0或1)移给进位位C , MOV P1。7, C ;再由进位位C转给对应的发光二极管的连接位。 MOV C, P1.2 ;以便控制发光二极管的亮或灭。 MOV P1。6, C MOV C, P1。1 MOV P1。5, C MOV C, P1.0 MOV P1。4, C ACALL DELAY AJMP MAIN DELAY
9、: MOV R5, #5FH ;软件延时子程序 L1: MOV R6, 0AFH DJNZ R6, $ DJNZ R5, L1 RET图87 示例的硬件电路图在Keil编程界面输入上述程序,编译成可执行HEX文件,双击图8-7的CPU,参考图86填好相应的HEX文件的路径及名称,按“OK键退出。点击运行按钮(图87下沿的),运行情况见图8-8所示。 图8-8 示例电路运行结果请自己完成以上示例的硬、软件调试。每人的实验结果打包,以文件名(DZ班学号实验序号)上交, 并完成实验报告.(3)KEIL编译器与Proteus软件联调图8-10 远程联调Proteus设置在Proteus ISIS 界面
10、调入所设计的硬件图,点击调试,使用远程调试设备选项打,即启动了Proteus与Keil的远程联调功能.紧接着点击ISIS 界面左下方的按钮,使得所设计的电路处于运行模式.Keil平台,创建工程,打开“Project”菜单 选择“Options for Target Target 1”在弹出的窗口中选择“Debug 为连接调试选择仿真器 见图811 按“确定键。图8-11 Keil+Proteus联调Keil端设置设置完毕后,点击Keil工程编译成功,点击图812的按钮,使得编译成功的源文件进入调试状态。图8-12 Keil+Proteus联调进入联调状态,程序处于待运行状态,最初始的时候,PC
11、指针光标指向0000H开始的位置。用户分别选择 四个功能键,可以实现程序全速运行,单步进入,单步退出及程序复位等功能的选择。实现程序运行的Debug跟踪,辅助调试程序,最终用户运行的结果可以通过图810的ISIS界面观察硬件的状态变化。图813 程序运行状态(4)作业:在Proteus ISIS 界面设计图814、815所示的MCS51单片机分别于ADC0809及DAC0832的接口的电路原理图,为下一次实验做好准备。图8-14 8031与ADC0809的接口设计图8-14 8031与DAC0832的接口设计实验九 并行AD、DA实验1. 实验目的 掌握采用并行接口实现外部器件的扩展方法; 掌
12、握ADC0809模/数转换芯片与单片机的接口设计及ADC0809的典型应用; 掌握DAC0832模/数转换芯片与单片机的接口设计及DAC0832的典型应用.2. 预习要求 理解内存与IO统一编址的外设端口地址的映射及控制; 理解用查询方式、中断方式完成模/数转换程序的编写方法; 理解DAC0832直通方式,单缓冲器方式、双缓冲器方式的编程方法。3. 实验设备计算机 1台; Proteus仿真软件 1套。4. 实验说明 ADC0809的工作方式AD从启动转换到转换结束需要一段时间,称为转换时间。ADC0809转换是否结束可以通过EOC管脚表征。在START信号上升沿之后不久,EOC变为低电平.当
13、A/D转换结束时,EOC立即输出一正阶跃信号,可用来作为A/D转换结束的查询信号或中断请求信号。从启动AD转换到实现AD转换结果的读取有三种方法:延时法、查询法和中断法。延时法就是在启动AD转换结束后,经过一段时间的等待之后(等待时间=转换时间),实现AD转换结果的读取。查询法是启动AD转换结束后,不断查询EOC的管脚电平的状态是否为高电平,如果条件满足,认为转换结束,进行AD转换结果的读取.中断法是利用EOC转换结束后产生的电平变化,触发单片机的外部中断,并在中断服务程序内,实现AD转换结果的读取。由于表征ADC0809转换结束的EOC电平逻辑与89C51单片机外部中断电平逻辑标准相反,所以
14、采用中断法触发89C51的外部中断,需要将EOC经过一个反相器,再与外部中断接口连接。 DAC0832的工作方式DAC0832内部有两个寄存器,能实现三种工作方式:双缓冲、单缓冲和直通方式.双缓冲工作方式是指两个寄存器分别受到控制。当ILE、CS和WR1信号均有效时,8位数字量被写入输入寄存器,此时并不进行A/D转换.当WR2和XFER信号均有效时,原来存放在输入寄存器中的数据被写入DAC寄存器,并进入D/A转换器进行D/A转换.在一次转换完成后到下一次转换开始之前,由于寄存器的锁存作用,8位D/A转换器的输入数据保持恒定,因此D/A转换的输出也保持恒定。 单缓冲工作方式是指只有一个寄存器受到
15、控制。这时将另一个寄存器的有关控制信号预先设置成有效,使之开通,或者将两个寄存器的控制信号连在一起,两个寄存器作为一个来使用。直通工作方式是指两个寄存器的有关控制信号都预先置为有效,两个寄存器都开通。只要数字量送到数据输入端,就立即进入D/A转换器进行转换.这种方式应用较少. 5. 基础型实验内容 图91为ADC0809的扩展电路图,利用Proteus仿真软件设计该硬件电路图.说明AD转换的过程,并在Keil环境设置断点运行以下程序,可调电源分别调至两个极端,观察寄存器及内存单元的变化。 图9-1 ADC0809的扩展电路图 ORG 0000H MAIN:CLR A SETB P3.3;设定与
16、EOC接口IO处于接收状态 MOV DPTR,#0FEF8H ;选择A/D端口地址 NOP MOVX DPTR,A;启动AD转换WAIT: JB P3.3,WAIT MOVX A,DPTR ; 读入结果 NOP LJMP MAIN 图9-2为DAC0832的扩展电路图,利用Proteus仿真软件设计该硬件电路图.填写下列程序中的空白处,说明DA转换的过程,并在Keil环境运行设置断点运行该程序,调节RW1C4,观察寄存器的变化与万用表输出值的变化。图92 DAC0832的扩展电路图ORG 0100HSTART: MOV DPTR,#0FEFFH ;置DAC0832的地址LP: MOV A,#0
17、FFH ;设定高电平MOVX DPTR,A ;启动D/A转换,输出高电平 LCALL DELAY ;延时显示高电平 MOV A,#00H ;设定低电平 MOVX DPTR,A ;启动D/A转换,输出低电平 LCALL DELAY ;延时显示低电平 SJMP LP ;连续输出方波DELAY: MOV R3,#11 ;延时子程序D1: NOP NOP NOP NOP NOP DJNZ R3,D1 RET END6. 设计型实验内容 根据基础型实验的步骤、,由DAC0832输出模拟量,ADC0809采集数据。分配端口实现的硬件连接,画出流程并设计程序实现该过程,比较输出的数据跟采集到的数据是否一致,如不一致分析一下产生误差的原因. 结合实验十显示模块,设计流程并编写程序实现基于ADC0809分别采用延时法、查询法、中断法采集数据,并将采集到的十六进制结果显示在LED显示模块上。 采用DAC0832设计一简易的信号发生器,设计流程并编写程序实现50Hz的方波、锯齿波。7. 实验扩展及思考 采用ADC0809的8个通道采集8个模拟量信号,并将实际电压值分通道、分时地显示在LED上. 采用DAC0832设计一正弦信号发生器,在相同输出点数的情况下,并实现最高频率的输出。
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100