1、Proteus软件的单片机实验室建设博客日历博客信息日志总数:25 篇评论数量:2访问次数:2773keil uv3与proteus联调 发表于 2008-6-6 16:36:20 keil uv3与proteus联调 发表于 2008-5-24 2:12:01 proteus可以比较方便的搭建一个虚拟实验室,在一定程度上降低了开发要求网络上有很多关于proteus和keil联合调试程序的解决方案,但是有绝大部分都是手动修改或添加一些文件其实,软件公司提供和proteus联调的安装软件假设你已经安装好了proteus(测试版本为proteus 7.1 SP1)和keil uv3,则只需要联调安
2、装软件,两个包放在一起解压即可,Part A,Part B点击下载基于Proteus软件的单片机实验室建设 发表于 2008-6-6 16:31:38 基于Proteus软件的单片机实验室建设来源:电子爱好者协会 作者: 时间:2008-05-10 点击: 19 单片机技术是现代电子工程领域一门迅速发展的技术,应用于各种嵌入式系统中单片机技术的发展和推广极大地推动了电子工业的发展,其在教学和产业界的技术推广仍然是当今业界的一个热点单片机技术是现代电子工业中不可缺少的一项技术,掌握单片机技术是电子信息类专业学生就业的一个基本条件 目前各个高校都建立了单片机实验室,并且基本都是采用相应的硬件仿真设
3、备;但是由于单片机的种类繁多,再加上资金的限制,不可能在一个实验室包括所有种类的单片机仿真设备下面结合我校的单片机实验室建设浅谈一下我们的作法1 引入单片机软件仿真系统伴随着计算机软件和硬件技术的飞速发展,在各个领域都出现了各种仿真系统,为各种实际系统的开发提供了准确可靠的保证,同时节约了大量的人力和物力电子信息技术领域也不例外,出现了大量的仿真工具,如各种EDA工具:模数混合仿真的MultisimOrCADProtel等,数字系统设计仿真的Maxplus IIFundationExpert等,系统仿真软件Systemview等目前,在我校已建立了EDA实验室,配备了MultisimProte
4、lMaxplus II(Quatues)Systemview等软件和配套硬件;但这些软硬件对单片机的仿真无能为力,因此仍然需要建立单片机实验室过去,在单片机实验室的建设中基本都是采用硬件仿真系统,所以为了保证实验的顺利开设,同类型的硬件仿真开发系统就需要采购多套设备,这样硬件的投资成本相对较高另一个很重要的原因就是,目前单片机的课程除了主要开设8051系列单片机课程之外,还开设AVR系列PIC等系列的选修课为了保证相应实验的开设,必须要有配套的实验系统如果要保证一定的实验硬件设备套数,将是一笔更大的开支所以在目前经费非常紧张的情况下,根据经验,引入单片机软件仿真系统,就可以大大减少硬件设备的采
5、购,同时降低对硬件设备进行维护的工作量2 选择单片机软件仿真系统的标准目前,具有单片机仿真功能的软件比较多,如何选择软件,必须要有一个标准,以下是我们在建设实验室时遵循的标准(1) 单片机仿真和SPICE电路仿真相结合在仿真单片机系统时,不仅需要知道单片机内部各种寄存器数据存储器以及各个端口当前的状态,更重要的是要完成人机通道前向通道后向通道相互通道的配置与接口在这些接口电路中,有许多是模拟电路,而模拟电路的仿真就需要SPICE模型,因此必须要求该系统具有SPICE电路仿真功能(2) 支持主流单片机系统的仿真目前广泛采用的单片机系统有68000系列8051系列AVR系列PIC12系列PIC16
6、系列PIC18系列Z80系列HC11系列等很显然,如果该软件支持的单片机系统的系列很少,那就没有任何优势可言因为不可能为每一个系列的单片机配备一套软件,所以要求该软件尽可能将多个系列的单片机集成在一起(3) 提供软件调试功能在硬件仿真系统中具有全速单步设置断点等调试功能,同时可以观察各个变量寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能,同时要支持第三方的软件编译和调试环境只有这样,经过该单片机软件仿真系统训练的学生,才能够较快地熟悉和使用真正的硬件仿真系统(4) 提供丰富的外围接口器件外围接口不仅仅限于仅有的几个器件,这样更接近实际在训练学生时,可以选择不同的方案,这样更利于
7、培养学生(5) 提供丰富的虚拟仪器利用虚拟仪器在仿真过程中可以测量外围电路的特性,培养学生实际硬件的调试能力(6) 具有强大的原理图绘制功能目前绝大多数软件都能满足这个要求3 单片机实验室建设的配置方案(1) 软件仿真系统选用Proteus(海神)的ISIS该软件的特点: 全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势 具有模拟电路仿真数字电路仿真单片机及其外围电路组成的系统的仿真RS232动态仿真I2C调试器SPI调试器键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器逻辑分析仪信号发生器等 目前支持的单片机类型有:68000系列8051系列AVR系列PIC12系
8、列PIC16系列PIC18系列Z80系列HC11系列以及各种外围芯片 支持大量的存储器和外围芯片总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大,是其他任何一款软件不能相比的在单片机实验室为每一台计算机安装该软件安装套数的多少根据实验室的规模确定(2) 编译调试环境选用Keil C51 uVision2软件该软件支持众多不同公司的MCS51架构的芯片,集编辑编译和程序仿真等于一体,同时还支持PLM汇编和C语言的程序设计它的界面友好易学,在调试程序软件仿真方面有很强大的功能,很多51应用的工程师都在使用该软件;所以使用该软件将使学生获得很多实际工作经验,并且通过设置可与I
9、SIS联机调试单片机系统(3) 配置计算机平台上面介绍的这两款软件,对机器的配置要求都不高,主流的计算机都能满足要求至于计算机的数量,根据实验室的规模确定我们按标准班级的数量配置,基本保证每人一台(4) 配置硬件仿真器实验板编程器和示波器等我校每门课程基本安排10个左右的实验这10个实验都是比较常规的实验,不需要特殊的器件,所以每门课的实验首先都是通过单片机仿真软件实现的为了让学生的训练不脱离实际,给学生提供硬件仿真和验证的机会,我们的做法是:学生自己绘制原理图,自己编制程序,在仿真软件里首先调试通过,调试通过后,将自己编译好的程序用编程器去烧录,然后安装到目标实验板去观察运行结果,如果有问题
10、,再连接硬件仿真器去调试分析基于以上分析,我们在硬件的配置上有:8051系列的仿真器5套PIC系列的仿真器5套AVR系列的仿真器5套编程器2台,20M通用示波器5台,配套的目标实验板8051系列12套AVR系列12套PIC系列12套,相关的芯片若干配置有限的硬件设备,将节约的资金用于购买仿真软件(相对来说软件的价格远远低于硬件的价格),这样我们用有限的资金解决了单片机实验室的建设问题,对于经费紧张的学校有一定的借鉴价值至于在具体实施时会涉及到一些具体的技术问题,在网络上和软件的随机文档中都有这方面详细的资料,只要查看一下,基本都能解决总之,我们认为采用这样的方案有以下优势:有利于促进课程和教学
11、改革,更有利于人才的培养;从经济性可移植性可推广性角度讲,建立这样的实验室是非常有意义的;利用仿真系统,可以节约开发时间和开发成本;利用仿真系统,具有很大的灵活性和可扩展性;也是高校提升实验室建设水平有益的尝试以上是笔者对建立单片机实验室的一些粗浅的想法,只是想写出来和同行们一起探讨如有不妥之处,还请指正Proteus 仿真软件在单片机设计中的应用 发表于 2008-6-6 16:21:09 Proteus 仿真软件在单片机设计中的应用赵义强 康静 郭向亮山东省科学院自动化研究所,济南 250014摘 要 单片机应用技术所涉及到的实验实践环节比较多,而且硬件投入比较大在具体的工程实践中,如果因
12、为方案有误而进行相应的开发设计,会浪费较多的时间和经费Proteus 仿真软件很好的解决了这些问题,它可以象Protel 一样画好硬件原理图与KEIL 编程软件结合进行编程仿真调试关键词 单片机,Proteus 软件,Keil 软件,仿真1引言单片机在很多产品中得到广泛的应用,无论是51 系列AVR还是PIC 系列,他们各有各的特点,学习者也是逐年增加,但是在学习开发过程中,我们往往在确定方案后做试验的开支比较大,尤其是对于一些学生或者初学者这就可能成为他们学习的障碍在我们使用Proteus 软件以来大大节省了时间和开发费尤其将此软件用在单片机开发中是一个不错的选择我们这里主要讲述的是Prot
13、eus 软件与Keil 软件的结合与应用2Protues 软件介绍与应用2.1 Protues 软件介绍Proteus 是目前最好的模拟单片机外围器件的工具,它可以仿真51 系列AVR,PIC 等常用的MCU 及其外围电路(如LCD,RAM,ROM,键盘,马达,LED,AD/DA,部分SPI 器件,部分IIC 器件.)本文基于ProteusPRO6.7SP3和KEIL uVision3 软件当然,软件仿真精度有限,而且不可能所有的器件都找得到相应的仿真模型,用开发板和仿真器当然是最好选择,可是对于单片机爱好者,或者简单的开发应该是比较好的选择Proteus 与其它单片机仿真软件不同的是,它不仅
14、能仿真单片机CPU 的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象2.2 Protues 软件与Keil uVision 的结合对于初次使用Protues 软件的人可能还不知道如何设置,现在把设置步骤简介如下,仅供参考(本文只讨论在单机上结合,在两个联网机器使用由于篇幅限制不在此讨论):设置步骤如下:(1) 把proteus 安装目录下 VDM51.dll ( C
15、:ProgramFilesLabcenterElectronicsProteus6ProfessionalMODELS)文件复制到Keil 安装目录的 C51BIN 目录中;(2) 编辑C51 里tools.ini 文件, 加入:TDRV1=BINVDM51.DLL(PROTEUS VSM MONITOR-51 DRIVER);(3) Keil uVision 里设置: project-options forproject-debug tab;(4) 选中use proteus VSM monitor 51( 如果想用两台电脑仿真,双击setting,输入IP 地址 或者DNS name);(
16、5) 载入proteus 文件;(6) proteus 里选择DEBUG-use remote debug monitor;进入KEIL 的project 菜单option for target 工程名在DEBUG 选项中右栏上部的下拉菜选中 Proteus VSMMonitor-51 Driver 在进入seting,如果同一台机IP 名为127.0.0.1,如不是同一台机则填另一 台的IP 地址端口号一定为8000 注意:可以在一台机器上运行keil,另一台中运行proteus 进行远程仿真.(7)打开KEIL uVision, 按F5 开始仿真.2.3 proteus 的工作过程运行pr
17、oteus 的ISIS 程序后,进入该仿真软件的主界面在工作前,要设置view 菜单下的捕捉对齐和system 下的颜色图形界面大小等项目通过工具栏中的p(从库中选择元件命令)命令,在pick devices 窗口中选择电路所需的元件,放置元件并调整其相对位置,元件参数设置,元器件间连线,编写程序;在source 菜单的Define code generation tools 菜单命令下,选择程序编译的工具路径扩展名等项目;在source菜单的Add/remove source files 命令下,加入单片机硬件电路的对应程序;通过debug 菜单的相应命令仿真程序和电路的运行情况Proteu
18、s 软件所提供了30 多个元件库,数千种元件元件涉及到数字和模拟交流和直流等2.4 Proteus 软件所提供的调试手段Proteus 提供了比较丰富的测试信号用于电路的测试这些测试信号包括模拟信号和数字信号对于单片机硬件电路和软件的调试,Proteus 提供了两种方法:一种是系统总体执行效果,一种是对软件的分步调试以看具体的执行情况对于总体执行效果的调试方法,只需要执行debug 菜单下的execute 菜单项或F12 快捷键启动执行,用debug 菜单下的pause animation 菜单项或pause 键暂停系统的运行;或用debug 菜单下的stop animation 菜单项或sh
19、ift-break 组合键停止系统的运行其运行方式也可以选择工具栏中的相应工具进行对于软件的分步调试, 应先执行debug 菜单下的start/restart debugging 菜单项命令,此时可以选择stepover step into 和 step out 命令执行程序(可以用快捷键F10F11 和ctrl+F11),执行的效果是单句执行进入子程序执行和跳出子程序执行在执行了start / restart debuging命令后,在debug 菜单的下面要出现仿真中所涉及到的软件列表和单片机的系统资源等,可供调试时分析和查看2.5 Proteus 和KEIL uVision3 软件结合实
20、例本节将通过一个流水灯试验具体介绍Proteus 与KeiluVision 的结合与应用(1)通过Proteus 画原理图:(图1)(图1)(1)在Keil uVision 软件别写程序:#include#includevoid delayms(unsigned char ms)/ 延时子程序unsigned char i;while(ms-)for(i = 0; i 120; i+);main()unsigned char LED;LED = 0xfe;P0 = LED;while(1)delayms(250);LED = _crol_(LED,1);/循环右移1 位,点亮下一个LEDP0
21、= LED;(3)对Proteus 和Keil uVision 软件的设置:(参考2.2 Protues 软件与Keil uVision 的结合章节)(4)运行程序,运行结果如下(图2):实现流水灯功能图23总结Proteus 不仅可以作为学校单片机(电子等)实验的模拟仿真,也可以作为个人工作室的仿真实验作为电子技术或控制类相关专业的学生和工程技术人员,在学习了该软件后,可以充分地利用它所提供的资源,帮助自己提高工程应用能力在教学中利用该软件,除了能教单片机的具体课程内容外,还可以教会学生应用该工具的能力,为今后的工作打下基础参考文献:(1) Proteus 软件英文简介(2) 研学论坛用pr
22、oteus 构建虚拟单片 proteus软件 单片机 仿真 虚拟实验室 发表于 2008-6-6 16:12:07 用 proteus软件建立单片机仿真虚拟实验室 摘要:单片机应用技术所涉及到的实验实践环节比较多,而且硬件投入比较大在具体的工程实践中,如果因为方案有误而进行相应的开发设计,会浪费较多的时间和经费本文以学校单片机课程的实验教学为背景,较为全面地阐述采用仿真实验的方法关键词:proteus软件 单片机 仿真 虚拟实验室引 言单片机课程是机电自动化等专业的一门重要课程,可以充分体现学生利用已学知识解决实际工程问题的能力由于该学科是多基础多理论的实践性学科,在教学过程中必须软件硬件结合
23、,因此有学生感到难学,教师感到难教这样的尴尬现代科技的发展,促进了计算机技术在软件和硬件上的飞速发展,利用计算机软件的仿真技术,可以充分地仿真诸如电路的工作等实际的工程问题作者无意中找到一款软件Proteus,解决了许多的问题,而单片机虚拟实验室也是以该软件为核心建立起来的1 Proteus介绍Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果对于这样的仿真实验,从某种意义上
24、讲,是弥补了实验和工程应用间脱节的矛盾和现象(1)proteus的工作过程运行 proteus的ISIS程序后,进入该仿真软件的主界面在工作前,要设置view菜单下的捕捉对齐和system下的颜色图形界面大小等项目通过工具栏中的p(从库中选择元件命令)命令,在pick devices窗口中选择电路所需的元件,放置元件并调整其相对位置,元件参数设置,元器件间连线,编写程序;在source菜单的Define code generation tools菜单命令下,选择程序编译的工具路径扩展名等项目;在source菜单的Add/remove source files命令下,加入单片机硬件电路的对应程序
25、;通过debug菜单的相应命令仿真程序和电路的运行情况(2)Proteus软件所提供的元件资源Proteus 软件所提供了30多个元件库,数千种元件元件涉及到数字和模拟交流和直流等,具体情况如表1所列(3)Proteus软件所提供的仪表资源对于一个仿真软件或实验室,测试的仪器仪表的数量类型和质量,是衡量实验室是否合格的一个关键因素在Proteus软件包中,不存在同类仪表使用数量的问题,其提供的仪表如表2所列除了表2所列的测试仪表外,Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似但功能更多图形显示功能如表3所列(4)Proteus软
26、件所提供的调试手段Proteus提供了比较丰富的测试信号用于电路的测试这些测试信号包括模拟信号和数字信号,如表4所列对于单片机硬件电路和软件的调试,Proteus 提供了两种方法:一种是系统总体执行效果,一种是对软件的分步调试以看具体的执行情况对于总体执行效果的调试方法,只需要执行debug菜单下的execute菜单项或F12快捷键启动执行,用debug菜单下的pause animation菜单项或pause键暂停系统的运行;或用debug菜单下的stop animation 菜单项或shift-break组合键停止系统的运行其运行方式也可以选择工具栏中的相应工具进行对于软件的分步调试,应先执
27、行 debug菜单下的start/restart debugging 菜单项命令,此时可以选择step over step into 和 step out命令执行程序(可以用快捷键F10F11和ctrl+F11),执行的效果是单句执行进入子程序执行和跳出子程序执行在执行了start / restart debuging命令后,在debug菜单的下面要出现仿真中所涉及到的软件列表和单片机的系统资源等,可供调试时分析和查看2 实验的组织在单片机的理论教学和实验中,所涉及到的内容包括了四方面,即单片机系统资源软件技术硬件接口电路软件和硬件结合的应用系统因此教师在进行教学时,应该充分考虑课程的特点并作
28、合理的模块划分,在每次实验课程前作适当的准备工作,以使教学任务能集中和突出以下例子中所涉及到的单片机均为51系列(1)系统资源的实验教学任何一种单片机均提供了一定的系统资源对于51系列单片机来讲,其所提供的资源是以寄存器和存储器的方式体现出来的对于寄存器内容的查看,可以采用多种可以模拟仿真51单片机的软件来实现对于Proteus 软件来讲,可以执行在debug菜单下registers菜单项命令打开相应的窗口对于系统内部存储器的查看,同样是执行debug 菜单下的 internal memory 菜单项命令打开相应的窗口(2)软件技术在软件技术的实验中所涉及到的内容主要包括对语言中具体语句的执行
29、效果验证算法的具体实现程序中语法错误的检查和逻辑错误的验证等内容对于纯软件的实验教学内容,教师在实验设置时应充分考虑到学生的能力并作好具体的准备工作,以达到预期的教学目的例如,对于两个16位二进制数的乘法运算R4R5R6R7=R3R4R5R6R7的汇编语言实现为了较为直观地验证程序执行的正确性,教师在之前应该设计一个硬件电路,能完成数据的输入(带显示)和结果的输出(显示),并设计主程序bcd码到二进制的转换二进制码到bcd码的转换bcd码到显示码的转换显示等程序的设计,学生只在实验中进行乘法运算的算法设计并作为子程序加入系统中即可(3)硬件接口电路单片机的接口电路所涉及到的知识涵盖了电子电路设
30、计的相关领域,也涉及到单片机应用系统具体的工作需要接口电路部分涉及到线路的连接元器件的选择工作方式的设置电路工作的稳定性和可靠性电路的空间需求等等许多方面的知识和内容;但就学生实验来讲,所涉及到的并不需要这么全面作为 Proteus 仿真软件,其仿真电路时所模拟的元件真实工作情况,和单片机应用系统的实际工作环境还是有一定的差别因此只能根据教学的需要,让学生自行设计电路并设置其工作方式其实验可以通过两种方式组织实施,一是根据具体的要求,让学生设计接口电路并编写相应的程序;一是根据程序的要求,设计单片机接口电路例如,对于键盘输入和显示(数码管)接口电路的设计,可以采用比较多的方法来实现选择何种方法
31、,与键盘中键的数量和数码管的个数以及显示的方式等都有关系选择一种采用几种方法都能实现的键盘键数(如12个)和显示位数(如4位或4位半),提出具体的诸如必须预留的口地址成本控制等要求,让学生自行设计接口电路当然,对于如A/D转换等接口电路的设计,教师应该在事先设计出单片机电路的其它部分,并以模块的方式进行处理,给学生提供电路的接口信号(4)软件和硬件结合的应用系统软件和硬件的结合,就是一个单片机的应用系统了这一步的实验可以在课程设计中以课题的方式提出来处理,也可以将其分解成不同的接口部分在接口电路的多次实验中分次完成在这一阶段,硬件电路的设计已经不是最为关键的了,而软件系统的设计调试和运行才是实验的主要内容因此可以以建议性的意见给出具体的硬件电路,并提出该电路所需要完成的具体工作,由学生进行软件的设计和调试(5)观摩实验学生自行设计的硬件系统和软件,一般存在着某方面的不足,当给出了相应的实验设计任务后,学生就算能顺利的完成,但其中所涉及到的有些方式方法并不能在自己的设计中充分领悟Protues系统提供了相应的一些范例,比如单片机系统中的计算器示例,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1