Proteus在单片机技术实训教学中的应用

2023-03-02

单片机在各行各业中得到越来越广泛的应用, 社会对掌握单片机技术的人才需求也越来越多, 因而单片机技术实训已经成为高职高专类职业学校电类专业必开设的课程。但是在单片机技术实训过程中, 在学生选定实训方案后做硬件的元器件消耗往往比较大, 而且等待物理原型 (PCB板) 的时间比较长, 这就对于短时间的单片机实训教学带来了不小的难度。在单片机技术实训中使用Proteus软件可以节省大量的时间和费用。

1 Proteus软件介绍

1.1 Proteus软件简介

Proteus是英国Labcenter Electronics公司开发的多功能EDA软件, 是目前最先进最优秀的单片机与嵌入式系统的设计与仿真平台。Proteus中有几十个元器件库, 数千个元器件模型, 可以设计并仿真MCS-51系列、AVR系列、PIC系列等构成的系统;有示波器、逻辑分析仪等多种虚拟仪器;有多种信号激励源。Proteus与其它单片机仿真软件不同的是, 它不仅能仿真单片机CPU的工作情况, 也能仿真单片机外围电路 (如LED、LCD、8255、74LS373、RAM、ROM、马达、A/D、D/A等) 或没有单片机参与的其它电路的工作情况。由于Proteus中绝大多数的元器件模型与标准的SPISE相兼容, 并且是根据生产厂家提供的技术参数所建立起来的, 因此其仿真结果与实际非常接近, 使之成为具有现实意义的教学平台。

1.2 Proteus软件与Keil软件的联合

Proteus软件与Keil软件的联合方法有两种:一种是离线联合;另一种是在线联合。离线联合是指两者之间独立工作, 先通过Keil软件编译源程序并生成HEX等单片机能够识别的代码, 然后运行Proteus ISIS, 再将HEX文件与原理图中的单片机进行绑定即可。在线联合是指在Keil软件中调试运行程序, 同时在Proteus中观察实时仿真结果, 可以方便地查出系统设计中的软、硬件错误。具体设置步骤如下:

(1) 安装在线联合驱动程序vdmagdi.exe (可以在Proteus官方网站下载) 。安装完成后, 用记事本打开Keil文件夹下的TOOLS.INI文件, 可以发现在[C51]字段的最后多了两行, 分别是TDRV5=BINVDM51.DLL ("Proteus VSM Simulator") 和BOOK10=HLPVDMAGDI.HLP ("Proteus VSM AGDI Driver") , 前者用于Proteus软件与Keil软件的联合, 后者是一个帮助文档。

(2) 进入Keil开发环境, 选中菜单命令:Project——>Options for project, 在“Debug”选项卡中, 选择左边的“Use:”在下拉窗口中选择“Proteus VSM Simulator”。如果是单机在线调试, 直接点击“确定”按钮保存设置。如果是两台PC机之间的在线联合, 点击右边的“Setting”, 在“Host”栏中输入Proteus软件所能认识的标识符 (I P地址或计算机的DNS名) , 然后点击“OK”, 再点击“确定”按钮保存设置即可。

(3) 进入Proteus ISIS原理图输入环境, 在菜单栏中选择“DEBUG——>useremote debug monitor”, 选中之后, 在该选项之前有一个凹下去的“√”的符号。

所有的这些设置完成以后, 就可以开始联合调试仿真了。我们这里运用的是Proteus软件与Keil软件的离线联合使用。

2 实训过程

2.1 通过Proteus画原理图

打开Proteus ISIS编辑环境, 进入该仿真软件的主界面。在绘制原理图前, 要设置view菜单下的捕捉对齐和system下的颜色、图形界面大小等项目。通过工具栏中的P或者菜单命令Library/Pick devices/Symbol命令从库中选择元件命令, 在Pick Devices窗口中选择电路所需的元件如表1所示, 并添加到Devices Select (元器件收集) 窗口。

元器件添加完成后, 在Proteus ISIS编辑区域放置元件并调整其相对位置, 设置元件参数, 并完成元器件间连线得到如图1所示的跑马灯电路原理图。

2.2 用Keil软件编写程序

打开Keil软件, 建立一个名为“LED”的项目, 选择ATM EL中的AT89C51单片机, 新建汇编源文件 (*.asm) , 输入以下程序并保存。执行菜单命令:Project——>Options for project, 弹出“Options for Target”对话框, 选择“Output”选项卡, 在此选项卡中选中“Create HEX File”选项。编译、修改源程序直至没有语法错误并生成“LED.hex”。

2.3 对Proteus和Keil软件的设置 (参考1.2Proteus软件与Keil软件的联合)

2.4 利用Proteus软件调试硬件和软件

在Proteus ISIS中, 选中AT89C51并单击鼠标左键, 打开“Edit Component”对话框, 在“Program File”栏中, 选择添加先前生成的LED.hex文件, 此时便可以进行软件和硬件调试, Proteus提供了两种方法:一种是系统总体全速执行效果, 一种是对软件的分步调试以看具体的执行情况。对于总体全速执行效果的调试方法, 只需要执行Debug菜单下的Execute菜单项或按F12快捷键启动执行, 用Debug菜单下的Pause Animation菜单项或Pause键暂停系统的运行;用Debug菜单下的Stop Animation菜单项或按Shift+Break组合键停止系统运行。对于软件的分步调试, 应先执行Debug菜单下的Start/Restart Debugging菜单项命令, 此时可以选择Step Over (F10) 、Step Into (F11) 和Step Out (Ctrl+F11) 命令执行程序, 执行的效果是单步执行、进入子程序执行和跳出子程序执行。在对软件的分步调试时, 在Debug菜单中出现仿真中所涉及的单片机系统资源:8051CPU Rigisters-U1、8051 CPU SFR MemoryU1、8051 CPU Internal (IDATA) -U1等, 可供调试时分析和查看。系统总体全速执行和单步执行也可以通过工具栏中的相应工具按钮进行。程序运行结果如图2所示的跑马灯调试效果图。

3 结语

Proteus软件改变了原先单片机技术实训教学中难学、难懂、效果差的现象, 变抽象为形象, 激发了学生的兴趣, 提高了学习的效率, 改善了教学的效果和质量, 减少了材料的消耗。实践证明:Proteus软件是学生学与做、理论联系实际的的优秀仿真平台。

摘要:本文讲述了Proteus软件在单片机技术实训教学中的应用。以该软件作为教学中单片机系统设计与仿真平台, 明显激发了学生的兴趣, 改善了教学的效果, 提高了学习的效率, 减少了材料的消耗。Proteus软件为单片机技术实训教学提供了新思路、新手段、新模式。

关键词:Proteus软件,单片机技术实训,仿真

参考文献

[1] 周灵彬, 张靖武.PROTEUS的教学与应用仿真[J].单片机与嵌入式系统应用, 2008 (1) :76~79.

[2] 刘丙尧.Keil C+Proteus6.9——搭建自己的单片机仿真实验室[J].电子制作, 2007 (8) :52~54.

[3] 周润景, 张丽娜.基于PROTEUS的电路及单片机系统设计与仿真[M].北京:北京航空航天大学出版社, 2007:154~202.

上一篇:新型墙体材料应用现状分析下一篇:静脉留置针在临床的应用和护理