单片机虚拟实验系统构建的研究_第1页
单片机虚拟实验系统构建的研究_第2页
单片机虚拟实验系统构建的研究_第3页
单片机虚拟实验系统构建的研究_第4页
单片机虚拟实验系统构建的研究_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

目录摘要 1前言 21单片机传统实验系统与虚拟实验系统的比较 21.1单片机传统实验系统的特点 21.2单片机虚拟实验系统的特点 21.3单片机实验系统的选择方案 32单片机虚拟实验系统构建软件 32.1Proteus软件介绍 3软件的组成 3软件的特点 4软件的工作界面 42.2Keil软件介绍 5软件的组成 5软件的特点 52.3Proteus与Keil软件的双向选择 53基于Proteus与Keil单片机虚拟实验系统的实现 63.1Proteus与Keil进行联合仿真的设置 63.2Keil软件中的联合仿真设置 63.3Proteus与Keil联合仿真调试方法 74单片机虚拟实验系统实例 84.1交通灯实验电路图 84.2实验原理及目的 85开发过程中的问题 96结论 9谢辞 10参考文献 11

单片机虚拟实验系统构建的研究汪亮摘要:关键词:Proteus;KeilTheStudyofSingleChipComputerVirtualSystemWANGLiangAbstract:ThispaperproposesaschemeofbuildingsinglechipcomputerlaboratorybasedontheProteusandKeilsoftware.ItintroducesthefeaturesandfunctionsoftheProteusandKeilsoftware,andshowsthemethodofhowtouseittorealizethedesignandsimulationofsinglechipmicrocontrollercircuitsystem.Itsolvestheproblemsofcapitalshortagefortraditionalsinglechiplabsandthedifficultyinequipmentmaintenancetoacertainextent.ItputsforwardthefeasibilityofusingProteusandKeiltobuildVirtuallaboratoryandintroducesitsapplicationinelectronictechnologybyanalyzinganapplicationexample.Keywords:singlechipcomputer;virtual;Proteus;Keil

前言现代科技和计算机技术的迅速发展,促进了计算机技术在软件和硬件上的飞速发展,利用计算机软件的虚拟仿真技术,出现一种基于仿真软件构建虚拟实验系统的方案,虚拟实验系统是指应用虚拟现实技术来仿真实际实验的计算机应用系统。如果将计算机软件的虚拟仿真技术应用于单片机仿真实验,将所有元件由软件构成,就可以建立一个本文所研究的单片机虚拟实验系统。当前单片机虚拟试验系统主要利用Proteus与Keil软件构建,这两个软件功能十分强大,它弥补了单片机传统试验系统中的某些不足,给我们单片机教学带来更多的方便。1单片机传统实验系统与虚拟实验系统的比较1.1单片机传统实验系统的特点传统的单片机实验利用一些大公司已经做好的实验箱,根据其提供的实验教材和程序,进行搭线的验证性的实验。在这种实验箱中,具体的电路图我们看不到,试验箱的结构本身也不了解,因而这种传统的实验系统对于学生的创造性设计能力来说并没有起到真正的作用。传统的单片机实验系统制约了同学们开发设计一个单片机系统的积极性。当我们真正设计一个单片机系统的时候,如果采用传统的实验教学方法,需要购置的设备比较多,做实验学生们就必须要去实验室,学生自己焊接电路可能出错,还有试验设备损耗及不安全因素等等。学生们对系统由哪些模块组成、各个模块的具体组成电路、采用什么样的元件和芯片,如何进行连接等问题从传统的单片机实验系统中很难掌握。1.2单片机虚拟实验系统的特点采用单片机虚拟实验系统具有比较明显的优势,如涉及到的实验实习内容全面、硬件投入少、实验过程中损耗小、与工程实践最为接近等。单片机虚拟实验系统提供了包括电子技术、电工学和微处理器在内的虚拟实验平台,具有很高的系统性和集成性,具有良好的发展前景。内容全面。其能实验的内容包括软件部分的汇编、C51等语言的调试过程,也包括硬件接口电路中的大部分类型。对同一类功能的接口电路,可以采用不同的硬件来搭建完成,因此采用虚拟实验系统进行实验,克服了用单片机实验箱中硬件电路固定、不能更改、实验内容固定等方面的局限性,可以扩展同学们的思路和提高同学们的学习兴趣。硬件投入少,经济优势明显。虚拟实验系统所提供的元件库中,大部分可以直接用于接口电路的搭建,同时该软件所提供的仪表,不管在质量还是数量上,都是可靠和经济的。如果在实验中投入这样的真实的仪器仪表,仅从仪表的维护来讲,其工作量也是比较大的。因此采用软件的方式进行试验,其经济优势是比较明显的。实验过程中损耗小,基本没有元器件的损耗问题。采用虚拟实验系统进行的实验教学,则不存在上述的问题,其在实验的过程中是比较安全的。与工程实践最为接近,可以了解实际问题的解决过程。在进行课程设计或进行大实验的时候,可以具体的在虚拟实验系统中做一个工程项目,并将其最后移植到一个具体的硬件电路中,了解将仿真软件和具体的工程实践如何结合起来,利于对工程实践过程的了解和学习。1.3单片机实验系统的选择方案虚拟实验系统只需要一台电脑就可以在实验室、机房,甚至学生宿舍进行实验,不受实验条件、时间、场地的限制,可以反复修改程序,同时看到程序执行的结果。构建虚拟实验系统不仅弥补了硬件资源的投入不足,而且克服了实验箱教学中固定硬件资源导致实验内容固定的局限性,可使大量单片机实验在虚拟环境中实现。学生自行设计与工程接近的项目可以先在软件环境中模拟通过,再将其最后移植到一个具体的硬件电路,既让学生了解将仿真软件与具体工程如何结合起来,有利于对工程实践的了解和学习,培养实际动手能力,同时也解决了因方案不正确所造成的硬件投入的浪费从而节省硬件资源。因此,基于这些优点,本文将提出基于Proteus与Keil构建的单片机虚拟实验系统的方案。通过此方案的研究,来避免传统实验系统所带来的各种缺陷,培养同学们在单片机学习中判断、分析和解决实际问题的能力。2单片机虚拟实验系统构建软件2.1Proteus软件介绍Proteus软件的组成Proteus是由英国LabcenterElectronics在1989年开发的EDA软件,它不仅具有其他EDA工具的仿真功能,还能仿单片机及外围器件。目前该软件在全球拥有众多用户,如HP、ST、AD、SONY、Panasonic等一些知名公司,也包括像剑桥大学、斯坦福大学等许多大学用户,广泛用于这些院校的大学或研究生电子学教学与实验中。世界著名电子杂志《电子世界(EWW)》曾将Proteus软件评为最好的单片机及外围器件的仿真软件。因而在本虚拟实验系统中作为仿真软件。目前,Proteus的最新版本为Proteus7.3。Proteus软件按其主要功能划分为三个部分:智能原理图输入系统ISIS(IntelligentSchematicInputSystem);虚拟系统模型VSM(VirtualSystemModeling);高级布线编辑软件ARES(AdvancedRoutingandEditingSoftware)。Proteus的模块结构如图2-1所示。图2-1Proteus模块结构图roteus软件的特点Proteus可以完成从原理图设计、电路分析与仿真、处理器代码调试及实时仿真、系统测试及功能验证到生成PCB的整个开发过程。Proteus提供SchematicDrawing,SPICE仿真与PCB设计功能,这一点与Multisim和Protel比较类似,可以完成质量精美达到直接出版水平的原理图和PCB版图。同样它还提供了丰富的虚拟工具,如示波器、逻辑分析仪、RAM、ROM、键盘、马达、LED、LCD、AD/DA、部分SPI器件等,用户借助这些虚拟工具可以直接观察电路系统的硬件结果。Proteus功能上最卓越的改进是可以直接仿真CPU及外围电路。它支持目前主流的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列,符合单片机软件仿真系统的标准。它支持的外围设备包括373,led,示波器等。这种仿真能力是Multisim等仿真软件望尘莫及的。目前Wave、Keil、Dubug、MPLAB和MedWin等软件可演示具体的执行过程,但只是侧重于算法的验证。Proteus在编译方面支持Keil等软件,可以根据虚拟仪器的结果直接进行源代码的调试。Proteus结合这些软件进行联合仿真的过程如同利用硬件仿真器和其他测试仪器直接进行硬件开发,可以给用户带来直接的硬件开发经验。2.1.3Proteus软件的工作界面ProteusISIS的工作界面是一种标准的Windows界面,如图2-2所示。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。图2-2ProteusISIS的工作界面2.2Keil软件介绍Keil软件的组成Keil是德国开发的一个51系列单片机开发软件平台,最开始只是一个支持C语言和汇编语言的编译器软件。后来随着开发人员的不断努力以及版本的不断升级,使它已经成为了一个重要的单片机开发平台。Keil软件是目前最流行开发MCS-51系列单片机的软件。它集编辑、编译、仿真、调试于一体,界面友好,易学易用,因而作为本系统开发软件。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。Keil的μVision2可以进行纯粹的软件仿真(仿真软件程序,不接硬件电路);也可以利用硬件仿真器,搭接上单片机硬件系统,在仿真器中载入项目程序后进行实时仿真;还可以使用μVision2的内嵌模块KeilMonitor-51,在不需要额外的硬件仿真器的条件下,搭接单片机硬件系统对项目程序进行实时仿真。uVision2调试器具备所有常规源极调试,符号调试特性以及历史跟踪,代码覆盖,复杂断点等功能。DDE界面和shift语言支持自动程序测试。Keil目前最新版本是C51Version8.12。Keil软件的特点目前可供选用的51系列开发软件有很多种,如国产的有Wave、MedWin、TKStudio、Dais、AEDK等,国外的有Keil、Aspier、SiliconLaboratories及IAR等。Keil软件相比其他软件主要具有以下特点:具有全功能的源代码编辑器,支持汇编、PLM和C程序设计。器件库可以用来配置开发工具设置,支持目前广泛采用的单片机系统有8051系列、PIC系列、HC11系列、AVR系列等。项目管理器可以用来创建和维护用户的项目;方便用户进行项目管理。集成的MAKE工具可以汇编、编译和连接用户嵌入式应用。所有开发工具的设置都是对话框形式的;可视化界面方便用户操作。真正的源代码级的对CPU和外围器件的调试器。高级GDI(AGDI)接口用来在目标硬件上进行软件调试以及和Monitor-51进行通信。2.3Proteus与Keil软件的双向选择Proteus也可以写程序,但只能是汇编语言,而且它带的编辑器太弱。除非设置成其它编辑器用。假如不用Proteus也不用仿真器件,单独用Keil也能够仿真各端口的输入输出。例如在网上下载ledkey.dll和simboard.dll插件,这些插件就像一个简单的实验板,安装到Keil软件的c51\bin文件夹中即可分别仿真灯管实验和键盘实验。这对一些简单的仿真还可以,总体仿真没有PROTEUS来的灵活,它需要的插件找不到就必须用PROTEUS来仿真。Proteus在设计的时候已经注意到和各种单片机编译程序的整合了,如它可以Keil、MPLAB等软件结合使用。Keil是目前比较优秀的51单片机的汇编和C语言的开发工具,具备功能强大的软件仿真和硬件仿真(需硬件支持)功能,把这两个软件结合起来用,调试软硬件就非常方便。Proteus和KeilIDE之间,通过VDM(VirtualDebugMonitor)协议通讯实现源码级的调试(Debug)。两者相结合,在KeiluVision3中调用ProteusISISProfessional进行MCU外围器件的虚拟仿真,实现在不使用真正开发板的情况下,通过Keil对该仿真电路进行源码级的Debug。Keil与Proteus的整合调试可以实现系统的总调,在该虚拟实验系统中,Keil作为软件调试界面,Proteus作为硬件仿真和调试界面。3基于Proteus与Keil单片机虚拟实验系统的实现3.1Proteus与Keil进行联合仿真的设置Proteus和Keil联合使用有两种方法,一种是离线联合,另一种是在线联合。所谓离线联合是指两者相互独立工作,先通过Keil编辑、修改、编译源程序并生成HEX文件,然后再运行ProteusISIS,将HEX文件与原理图中的MCU进行绑定即可,这种方法很简单,本文主要研究的是在线联合。由于网上Proteus和Keil软件版本很多,各版本联合的方法不一样,下面以Proteus6.7与KeilV2.12版本软件说一下的软件安装的设置。首先安装Proteus与Keil,然后把\Proteus\MODELS目录下VDM51.dll文件复制到Keil安装目录下的\C51\BIN目录中。再用记事本修改Keil安装目录下Tools.ini文件,在C51字段加入TDRV5=BIN\VDM51.DLL("ProteusVSMMonitor-51Driver"),保存文件并关闭记事本,完成安装过程。在现联合仿真还要进行一些设置,下面以一个简单的实例来展示一个Keil与Proteus联合仿真的设置过程。如图3-1所示,打开Proteus,完成整个电路图的绘制。图3-1循环彩灯综合实验3.2Keil软件中的联合仿真设置进入KeilCμVision2开发集成环境,创建一个新项目(Project),并为该项目选定合适的单片机CPU器件(如:Atmel公司的AT89C51)。在该项目加入Keil源程序。同样一个电路图也可以进行多个源程序的调用,如在循环彩灯综合实验中,我们可以分别进行指令循环延时和定时器中断延时的实验。这样节省了我们画电路图过程中的时间。Keil设置如下:单击“Project菜单/OptionsforTarget”选项或者点击工具栏的“optionfortarget”按钮,弹出窗口,点击“Debug”按钮,出现如图3-2所示页面。图3-2Keil联合仿真设置在出现的对话框里在右栏上部的下拉菜单里选中“ProteusVSMMonitor一51Driver”。并且还要点击一下“Use”前面表明选中的小圆点。再点击“Setting”按钮,设置通信接口,在“Host”后面添上“127.0.0.1”。如果使用的不是同一台电脑,即进行远程仿真,则需要在这里添上另一台电脑的IP地址(另一台电脑也应安装Proteus),在“Port”后面添加“8000”,这样可以在一台机器上运行Keil,另一台中运行Proteus,远程仿真不在本篇论文研究的范围之内。设置好点击“OK”3.3Proteus与Keil联合仿真调试方法在Proteus的debug菜单中选中UseRemoteDebugMonitor,此处选中才可以和Keil联合仿真,以后打开程序这地方就不用再设置了。如图3-3所示。图3-3Proteus联合仿真设置单击仿真运行开始按钮,我们能清楚地观察到每一个引脚的电频变化,红色代表高电频,蓝色代表低电频。也可以在Keil中进行debug,同时在Proteus中查看直观的结果。这样就可以像使用仿真器一样进行单步和全速调试了,并且在Proteus里可以观测实验结果,跟单击仿真运行开始按钮效果一样。4单片机虚拟实验系统实例4.1交通灯实验电路图交通灯实验是单片机实验中一个比较典型的实验,在本实验中,我们模拟这样一个实验过程,首先初始态两个路口的红灯全亮,之后东西路口的绿灯亮,南北路口的红灯亮,东西方向通车,延时一段时间后东西路口绿灯灭,黄灯开始闪烁。闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北方向开始通车,延时一段时间后,南北路口的绿灯灭,黄灯开始闪烁。闪烁若干次后,再切换到东西路口方向,重复上述过程。具体实验电路图如图4-1所示。图4-1交通灯实验图4.2实验原理及目的在这个实验中我们主要熟悉扩展并行I/O口的方法,用到P0口的数据传输功能,P0和P2寻址功能,以及P3口中P3.6的第二功能。扩展并行I/O口的方法主要有两种:一是采用单片机专用的扩展I/O接口芯片,如8155、8212、8255等;二是利用通用三总线扩展三态门等接口。当应用系统需要扩展的I/O口数量较少,且功能单一时一般采用锁存器三态门等集成电路芯片构成简单的I/O口。依次扩展简单并行口选择器件的原则是输入三态,输出锁存。只要根据此原则,在很多应用系统中,采用74系列TTL电路或4000系列MOS电路芯片,即能组成简单的扩展I/O口,将并行数据输入或输出。常用8位三态缓冲器74LS244组成输入口,采用8D锁存器74LS273、74LS373、74LS377组成输出口。本实验采用8D锁存器74LS273作为输出口,利用P0和P2分别作为低八位和高八位寻址端,通过或门连接到在8D锁存器CLK端,CLK端为高电频时跟随D端状态,而在CLK端变为低电频的瞬间锁存信号的D触发器,从而完成输出。MCS-51单片机把外扩I/O口和片外RAM统一编址,每个扩展的接口相当于一个扩展的外部RAM单元,访问外部接口就像访问外部RAM一样,用的都是MOVX指令,并产生(RD或WE)信号。用RD/WE作为输入/输出控制信号。5开发过程中的问题本文在研究Proteus与Keil软件特点的基础上,提出了构建虚拟实验室的整体思路,对一些关键性的技术问题进行了有益的探索和尝试。鉴于个人目前理论和实践的水平以及时间方面的因素,今后还需要在以下一些方面进一步地研究和完善:在设计过程中,系统只是对一些常用的芯片进行了仿真,一方面虚拟器件库有待进一步扩充,另一方面需要对一些内部逻辑更复杂的器件进行分析。虚拟实验室的网络化、多媒体化是未来发展的方向,建立一个多人协作的虚拟实验室,有利于促进交流与合作,降低教育成本。而本系统联合仿真中没涉及到多台电脑之间,例如用一台电脑作服务器,实验室其他电脑作客户端的远程联机仿真,在前面构建的过程中,我们其实发现远程联合仿真在Proteus中只需设置相应的IP地址是可以实现的,以后可在这方面做进一步的探索研究。6结论通过本系统的研究我们已经发现Proteus与Keil构建单片机虚拟实验系统优点,但是虚拟实验是不可能代替实物实验,实物实验过程中元件参数分散性、误差和干扰等现象客观存在,这需要在实物实验中去体会和掌握。主张实验教学采用软件仿真技术并不否定传统的实物实验,

温馨提示

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

评论

0/150

提交评论