第I章 初步认识Proteus ISIS
传统的单片机系统开发除了需要购置诸如仿真器、编程器、示波器等价格不菲的电子设备外,开发过程也较烦琐。如图I.1所示,用户程序需要在硬件完成的情况下才能进行软硬件联合调试,如果在调试过程中发现硬件错误需修改硬件,则要重新设计硬件目标板的PCB(Printed Circuit Board,印制电路板)并焊接元器件。因此无论从硬件成本还是从开发周期来看,其高风险、低效率的特性显而易见。
图I.1 传统的单片机系统设计流程
来自英国Labcenter公司的Proteus软件很好地诠释了利用现代EDA工具方便快捷开发单片机系统的优势。Proteus软件可以对基于微控制器的设计连同所有的周围电子器件一起仿真,用户甚至可以实时采用诸如LED/LCD、键盘、RS-232终端等动态外设模型来对设计进行交互仿真。Proteus套件目前在单片机的教学过程中,逐渐受到重视,并被提倡应用于单片机数字实验室的构建之中。Proteus支持的微处理芯片(Microprocessors Ics)包括8051系列、AVR系列、PIC系列、HC11系列、ARM7/LPC2000系列以及Z80等,集编辑、编译、仿真调试于一体。它的界面简单友好,可利用该软件提供的数千种数字/模拟仿真元器件以及丰富的仿真设备,使得在程序调试、系统仿真时不仅能观察到程序执行过程中单片机寄存器和存储器等内容的变化,还可从工程的角度直观地看到外围电路工作情况,非常接近工程应用。另外,Proteus ISIS还能与第三方集成开发环境(如Keil C51的μVision3)进行联合仿真调试,给予开发人员莫大便利。
如图I.2所示为基于Proteus ISIS仿真软件的单片机系统设计流程,它极大地简化了设计工作,并有效地降低了成本和风险,得到众多单片机工程师的青睐。
图I.2 基于Proteus ISIS仿真软件的单片机系统设计流程
在PC上安装Proteus软件后,即可完成单片机系统原理图电路绘制、PCB设计,更为显著的特点是,可以与单片机的µVision3 IDE工具软件结合进行编程仿真调试。本章以Proteus 7 Professional为背景介绍Proteus ISIS在单片机系统设计中的应用。
Proteus 7 Professional软件主要包括ISIS和ARES,其中ISIS用于绘制原理图并可进行电路仿真(SPICE仿真),ARES用于PCB设计。本书只介绍前者。
一、Proteus ISIS界面介绍
安装完Proteus 7 Professional后,选择“开始”→“程序”→“Proteus 7 Professional”→“ISIS 7 Professional”,就可以进入ISIS Professional的开发界面,如图I.3所示。
图I.3 Proteus ISIS的开发界面
ISIS Professional分为3个窗口:导航窗口、元器件列表区和原理图编辑窗口。
导航窗口:也称预览窗口,可以显示全部的原理图。当从元器件列表区中选择一个新的元器件对象时,在导航窗口中可以预览选择的对象。
元器件列表区:画原理图时,显示所选择的全部元器件。
原理图编辑窗口:用于放置元器件,绘制原理图。
工具箱:工具箱提供不同的操作工具,实现多种功能。工具图标说明如下。
电路绘制模块:
配件模块:
2D图形模块:
方向工具模块:
仿真工具栏:
仿真控制按钮,由左向右功能分别为:运行、单步运行、暂停、停止。
二、Proteus ISIS仿真资源
Proteus ISIS的资源用于虚拟仿真实验室。
元器件库资源包含30多个元器件库,数千种元器件,涉及数字和模拟、交流和直流等,具体见表I.1。
表I.1 主要元器件库资源
对于一个仿真软件或虚拟实验室,能够测试的仪器仪表的数量、类型和质量,是衡量实验室是否合格的关键因素。在Proteus软件包中,同类仪表使用数量无限制,其提供的仪表资源见表I.2。
除了表I.2所列的测试仪表外,Proteus还提供了图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似但功能更多。图形显示功能见表I.3。
表I.2 仪表资源
表I.3 图形显示功能
Proteus提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号,见表I.4。
表I.4 测试信号资源
三、元器件的选取
单击“选择元器件”按钮,打开“Pick Devices”对话框,如图I.4所示。
图I.4 选取元器件
Keywords:输入所用元器件的名称。
Category:元器件所属的大类。
Subcategory:元器件所属的子类。
Manufacturer:元器件的生产厂商。
Proteus的库文件是按类存放的,即类→子类(或生产厂商)→元器件,如果不知道元器件的关键字,先选取元器件的类,再选取元器件的子类或选取元器件的生产厂商,然后,在元器件列表区中将会显示符合条件的元器件列表,按照封装,选择合适的元器件。如果知道元器件的名称,则可以在“Keywords”框输入元器件的名称或名称的一部分。如果要求关键字全部匹配,可以选中“Match Whole Words”复选框。找到符合要求的元器件后,双击该元器件的名称,该元器件显示在元器件列表区中。当所用的元器件选取完成后,单击“OK”按钮,关闭对话框,结束元器件选择。
四、设置Proteus ISIS和μVision 3的联调
Proteus ISIS支持第三方集成开发环境,可以支持μVision 3的联调。具体来说就是在μVision 3下编写程序,然后编译将程序生成的HEX文件;Proteus ISIS的单片机电路可以通过加载HEX文件进行仿真。
1.需要安装的软件
① Proteus 7 Professional
② Keil μVision3 IDE
③ vdmagdi.exe
其中vdmagdi.exe是一个插件,可以实现Proteus与Keil μVision3 IDE的联调,这个插件可以从Labcenter公司网站下载。
2.Proteus的设置
打开Proteus 7 Professional的ISIS 7 Professional,创建一个原理图文件,从菜单栏中选择“Debug”,打开菜单,如图I.5所示,选择“Use Remote Debug Monitor”命令,意思是选择第三方调试工具,如Keil μVision3 IDE。
3.μVision3 IDE的设置
图I.5 “Debug”菜单
在μVision3开发环境下,选择菜单命令“Project”→“Options for Target‘Target 1’”,也可以单击工具栏中的 按钮,打开μVision3 IDE的设置对话框,如图I.6所示。μVision3 IDE主要包含两个方面的设置。
图I.6 μVision3 IDE的设置对话框
(1)Debug设置
选择“Debug”选项卡,如图I.7所示,单击“Use”单选钮,显示黑点表示选中。然后在旁边的下拉列表中选择“Proteus VSM Monitor”项。接着单击“Settings”按钮,在打开的对话框中设置通信接口,在“Host”框中输入“127.0. 0.1”(已默认添加)。如果调试的仿真电路是在另外一台计算机中,则需要在这里输入另一台计算机的IP地址(也应安装Proteus)。在“Port”框中输入“8000”。设置完成后,单击“OK”按钮即可。
图I.7 IDE中Debug的设置
(2)Output设置
选择“Output”选项卡,选中“Create HEX File”复选框,打钩表示选中,如图I.8所示,表示编译链接后产生烧录程序存储器的HEX文件。
图I.8 IDE中Output的设置
通过以上步骤,就完成了Proteus和μVision 3的联调设置。
通过第II章的4个实例将进一步学习Proteus的使用方法,以及Proteus和μVision 3之间是如何联调的。