Proteus仿真ARM7实验手册Proteus仿真ARM7实验手册作者:陈拓chentuo@ms.xab.ac.cn2007年6月27日最后修改日期:2008年8月22日摘要仿真软件Proteus是英国Labcenterelectronics公司的EDA工具软件,Proteus已有十五年的历史,在全球广泛使用,除了其具有和其它EDA工具一样的原理布图、PCB自动或人工布线及电路仿真的功能外,其革命性的功能是,他的电路仿真是互动的,针对微处理器的应用,可以直接在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出,还能看到运行后输入输出的效果,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,您不需要别的,Proteus为您建立了完备的电子设计开发环境!Proteus产品系列也包含了革命性的VSM技术,用户可以对基于微控制器的设计连同所有的周围电子器件一起仿真。Proteus可以仿真8051、ARM、AVR、PIC单片机,不愧为一款非常优秀的嵌入式仿真软件。简而言之,proteus是个很好的东西,几乎没有他不能干的!Proteus嵌入式系统仿真与设计平台使你真正在PC上就可完成从原理图设计、电路仿真、PCB设计到软件代码调试、实时仿真、测试和验证的整个开发过程。Proteus可以和KeiluVision配合使用,在Proteus里面画原理图,在Keil里面编写C语言程序,协同仿真调试。名词SPICE是一种用于电路描述与仿真的语言与仿真器软件,英文全称SimulationProgramwithIntegratedCircuitsEmphasis。用于检测电路的连接和功能的完整性,以及用于预测电路的行为。主要用于模拟电路和混合信号电路的仿真。SPICE是1975年由加里福尼亚大学伯克利分校的DonaldPederson在电子研究实验室首先建立的。第一版和第二版都是用Fortran语言编写的,从第三版开始用C语言编写。EDA是电子设计自动化(ElectronicDesignAutomation)的缩写。ProteusVSM虚拟系统模型(ProteusVirtualSystemModelling(VSM))组合了混合模式的SPICE电路仿真、动态器件和微控制器模型,实现了完整的基于微控制器设计的协同仿真,第一次真正使在物理原型出来之前对这类设计的开发和测试成为可能。预备知识本文的读者应该具有:•模拟电路和数字电路基础。•嵌入式开发概念。•嵌入式操作系统概念。•实时式操作系统概念。•ARM技术基础。准备工作中国科学院西安网络中心©2007-20081先安装Proteus7.12。程序在本手册的配套光盘中,先看使用说明,再运行setup71.exe。xiaoyllyProteus仿真ARM7实验手册目录(上册)一、初探Proteus二、Proteus虚拟仪器的使用三、电路图设计四、KeilforARM程序设计与电路仿真五、KeilforARM实例1:UART程序设计与电路彷真六、KeilforARM实例2:A/D程序设计与电路彷真七、KeilforARM实例3:GPIO程序设计与电路仿真八、Keil与Proteus整合的电路仿真中国科学院西安网络中心©2007-20082九、ARM的开发步骤Proteus仿真ARM7实验手册一、初探Proteus在用Proteus进行电路设计和仿真之前,我们先装好Proteus,并看看Proteus自带的例子,熟悉Proteus的基本用法和功能。安装Proteus详细说明见Proteus安装光盘的“使用说明.txt”。启动Proteus原理图设计开始所有程序Protues7ProfessionalISIS7Professional在Proteus启动时弹出的ViewSampleDesigns窗口中选择Yes,查看Proteus自带的例子。Protues7自带的例子有16组,如下图所示。详细说明见附录1。仿真Proteus原理图设计ISIS7Professional启动后就可以使用仿真按钮对电路进行仿真,仿真按钮有四个,功能分别是启动仿真、单步运行调试仿真、暂停仿真和停止仿真。体验Proteus自带的范例详细内容见附录1。中国科学院西安网络中心©2007-20083Proteus仿真ARM7实验手册二、Proteus虚拟仪器的使用学习光盘附带资料:Proteus介绍.pdfPROTEUS特点.pdfProteusVSM.pdfPROTEUS应用.pdfProteus教程1之入门.pdfProteus教程2之修改元件.pdfVSMSHOW.ppt中国科学院西安网络中心©2007-20084Proteus中文入门教程.docProteus仿真ARM7实验手册三、Proteus电路设计使用Proteus仿真的基础是要准确绘制原理图,并进行合理的设置。绘制原理图使用ISIS原理图输入系统。下面以一个实际的ARM仿真为例,介绍如何使用Proteus进行电路原理图设计。启动Proteus原理图设计开始所有程序Protues7ProfessionalISIS7Professional启动画面原理图编辑界面中国科学院西安网络中心©2007-20085默认的绘图格点为100th(1th=0.001inch)。如果希望使用标准纸张绘图可选择模板。Proteus仿真ARM7实验手册选择模板FileNewDesign选择模板选择LandscapeA4模板OK。添加模板中国科学院西安网络中心©2007-20086保存(SaveDesign):counterProteus仿真ARM7实验手册选取元件LibraryPickDevices/Symbol….。选取元件选择的元件右击设计图纸PlaceComponentLPC2106放在合适的位置。摆放其他元件。元件以默认的方向摆放,可以使用左下角(或右击元件)的旋转与翻转命令,改变元件的方向。双击元件可以改变元件的参数,如电阻的阻值等。鼠标滚轮用来缩放图纸。改变图纸大小:SystemSetSheetSizes...。通过View菜单改变点格大小。窗口昀左侧是工具箱。中国科学院西安网络中心©2007-20087PCB封装选择区PCB封装预览区元件预览区元件列表区生产厂家元件子类元件类别关键词Proteus仿真ARM7实验手册摆放元件LPC2106中国科学院西安网络中心©2007-20088摆放其他元件Proteus仿真ARM7实验手册右击目标元件Rotate。改变元件方向添加电源:单击工具栏中的图标,或右击设计图纸PlaceTerminalPOWER。添加接地终端:右击设计图纸PlaceTerminalGROUND。中国科学院西安网络中心©2007-20089添加电源和接地终端Proteus仿真ARM7实验手册Proteus支持自动布线。分别单击两个引脚(注意对准小红框),两个引脚之间会自动添加走线,也可以手动走线,或手动修正走线。连接走线后的电路图添加电源电压标签。双击电源终端,在“EditTerminalLabel”对话窗口中输入电压值。中国科学院西安网络中心©2007-200810编辑终端标签Proteus仿真ARM7实验手册配置电源电压。DesignConfigurePowerRails…。注意:配置电源对仿真很重要。配置电源输入电源电压值。单击New,在弹出的对话框中输入电压值3.3V,添加电源供给。提示:如果我们在定义电源时带上符号,例如+3.3V,软件会自动加上这个电源,免得麻烦。输入电压值单击OK,选择Unconnectedpowernets列表框中的电压值3.3V单击Add按钮,右侧列表框显示3.3V。用同样的方法添加1.8V电源。中国科学院西安网络中心©2007-200811配置好的电源Proteus仿真ARM7实验手册完整电路图双击LPC2106芯片,弹出EditComponent对话框。EditComponent对话框中国科学院西安网络中心©2007-200812单击ProgramFile的浏览按钮,添加已经编译好的目标程序文件counter.hex,OK。Proteus仿真ARM7实验手册单击启动仿真按钮,运行仿真,单击电路图中按键可观察到数码管数字增大或减小。仿真结果这4个按钮的功能分别是:启动仿真、单步运行仿真、暂停仿真和停止仿真。单击停止仿真按钮,停止运行。注意:在仿真过程中按KEY2时Proteus下方的状态栏中可以看到如下的提示:这是因为KEY1和KEY2靠的太近了,可以通过按KEY2右旁的小红点进行操作,或者把KEY2向下拉远一些。中国科学院西安网络中心©2007-200813Proteus仿真ARM7实验手册四、KeilforARM安装安装KeilforARM在本手册的配套光盘中找到mdk302a.exe,双击开始安装。注意:安装完成后HelpAbout中的版本与安装文件的版本V3.02a不同。Next中国科学院西安网络中心©2007-200814接受许可协议,NextProteus仿真ARM7实验手册选择安装目录,下一步填写客户信息,下一步等待安装过程结束,下一步结束Finish注册KeilforARM中国科学院西安网络中心©2007-200815启动KeiluVision3,FilelisencemanagementProteus仿真ARM7实验手册在本手册的配套光盘中找到Keil_lic_v3.2.exe,双击运行将KeilLicenseManagement窗口中的CID(这里是C8Z7Z-5HL1Y)复制到KeilLicenseCreator的ExternalCIDco中,点击Generate按钮,生成LICO和SN。将LICO复制到KeilLicenseManagement窗口中的NewLicenseIDCode输入框中,单击AddLIC按钮,如图。***LICAddedSucessfully***表示LicenseIDCode添加成功。中国科学院西安网络中心©2007-200816CloseProteus仿真ARM7实验手册五、KeilforARM实例1:UART程序设计与电路彷真(使用KeilCARM编译器)使用UART1来输出字符“HelloWorld”。注释:UART(UniversalAsynchronousReceiver/Transmitter)通用异步收发器。UART0也称串口1;UART1也称串口2。电路设计在Proteus的ISIS中设计使用UART1的电原理图如下。电路原理图打开Keil项目打开已有的项目:ProjectOpenProject…中国科学院西安网络中心©2007-200817选择项目Proteus仿真ARM7实验手册如果要新建项目,请看下面-创建Keil项目。创建Keil项目启动KeiluVision3KeiluVision3界面设定编译器Keil将依据不同的编译器生成不同的启动代码。(1)ProjectComponents,Environment,Books…或单击图标,弹出Components,EnvironmentandBooks对话框。设置编译器在EnvironmentandBooks对话框中可以选择编译器、设置工具、库文件和INC文件等的路径及默认文件扩展名。(2)如图选中UseKeilCARMCompiler和UseSettingfromTOOLS.INI复选框,更改编中国科学院西安网络中心©2007-200818Proteus仿真ARM7实验手册译器。(3)单击“确定”按钮保存设置。注意:破解的mdk302a以上版本在这里会出问题。建立Keil项目(1)ProjectNewProject,显示CreateNewProject对话框,指定项目路径并输入文件名hello。建立新项目(2)单击“保存”按钮,显示SelectDeviceforTarget‘Target1’对话框,如图。选择CPU类型在Database