单片机系统设计与制作Proteus 软件学习指南.docx
- 文档编号:15806235
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:23
- 大小:824.48KB
单片机系统设计与制作Proteus 软件学习指南.docx
《单片机系统设计与制作Proteus 软件学习指南.docx》由会员分享,可在线阅读,更多相关《单片机系统设计与制作Proteus 软件学习指南.docx(23页珍藏版)》请在冰点文库上搜索。
单片机系统设计与制作Proteus软件学习指南
Proteus软件学习指南
【知识目标】
(1)了解Proteus仿真软件在单片机开发中的作用和意义;
(2)了解Proteus软件的菜单功能。
【能力目标】
(1)能用Proteus构建单片机硬件系统;
(2)选择正确的仿真测试仪器进行观察;
(3)在程序加载到单片机CPU后台时,能选择正确的方式进行仿真调试。
Proteus软件是由英国LabcenterElectronics公司开发的EDA工具软件,已有近20年的历史。
该软件集成了高级原理布图、混合模式SPICE电路仿真、PCB设计以及自动布线来实现一个完整的电子设计系统。
它是一种混合电路仿真工具,包括模拟电路仿真、数字电路仿真、单片机及其外围电路组成的仿真等。
Proteus软件由ISIS和ARES两个软件构成,其中ISIS是一款便捷的电子系统仿真平台软件,ARES是一款高级的布线编辑软件。
ISIS是一个操作简便且功能强大的原理绘图工具,它整合了SPICE的仿真模型,拥有超过8000个元件的庞大库的结构。
ARES则可将ISIS的仿真原理图生成PCB版图。
Proteus支持许多通用的微控制器,如PIC系列、AVR系列、8051系列等;同时它还支持ARM、PLD及各种外围芯片的仿真,如基于HD44780芯片的字符LCD、RAM等;具有单步运行、断点设置等调试功能;能与常用编译器如Keil、IAR、Proton等协同调试;有直流电流表/电压表、交流电压表/电流表、示波器逻辑分析仪、频率计等虚拟仪器,为仿真中的测量记录提供了方便;支持图形化分析功能,具有频率特性、傅里叶分析等图形方式,可将仿真曲线精美地绘制出来。
随着计算机技术的迅速发展,使用EDA软件进行电路仿真与设计已经成为一种趋势。
众多院校在电路实践教学改革中引入了EDA技术,并建立了EDA实验室。
配备了EWB、Pspice、Multisim、Protel、MaxPlusII、SystemView等相关软件及配套硬件。
但这些设备对仿真单片机却无能为力。
Proteus不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前最好的仿真单片机及外围器件的工具。
虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。
任务简介
本次任务以跑马灯项目为例介绍的Proteus使用,重点掌握和使用Proteus软件的元件库使用及有关参数设置。
任务实施
3.1运行Proteus仿真软件
点击桌面图标
,如图1-49所示,或者点击电脑的“开始”,双击程序目录Proteus7Professional/ISIS7Professional的图标
,出现如图1-50所示的启动界面。
图1-49运行Proteus软件
图1-50Proteus7启动页面
ProteusISIS的工作界面是一种标准的Windows界面,如图1-51所示。
包括:
标题栏、主菜单、标准工具栏、模型选择工具栏、预览窗口、元件列表、原来编辑窗口、挑选元件按钮、库管理按钮、方向工具栏、仿真按钮等。
图1-51Proteus界面各工具栏
3.2基本操作
1.预览窗口的作用
该窗口通常显示整个电路图的缩略图。
在预览窗口上点击鼠标左键,将会有一个矩形蓝绿框标示出在编辑窗口的中显示的区域,如图1-52预览窗口显示所示,他其他情况下,预览窗口显示将要放置的对象的预览。
这种PlacePreview特性在下列情况下被激活:
●当一个对象在选择器中被选中。
●当使用旋转或镜像按钮时。
●当为一个可以设定朝向的对象选择类型图标时(例如:
Componenticon,DevicePinicon等等)。
●当放置对象或者执行其他非以上操作时,placepreview会自动消除。
●对象选择器(ObjectSelector)根据由图标决定的当前状态显示不同的内容。
显示对象的类型包括:
设备,终端,管脚,图形符号,标注和图形。
●在某些状态下,对象选择器有一个Pick切换按钮,点击该按钮可以弹出库元件选取窗体。
通过该窗体可以选择元件并置入对象选择器,在今后绘图时使用。
图1-52预览窗口显示
2.编辑区域的缩放
Proteus的缩放操作多种多样,极大地方便了我们的设计。
常见的几种方式有:
完全显示(或者按“F8”)、放大按钮(或者按“F6”)和缩小按钮(或者按“F7”),拖放、取景、找中心(或者按“F5”)。
也可以通过如下几种方式:
●用鼠标左键点击预览窗口中想要显示的位置,这将使编辑窗口显示以鼠标点击处为中心的内容。
●在编辑窗口内移动鼠标,按下SHIFT键,用鼠标“撞击”边框,这会使显示平移。
我们把这称为Shift-Pan。
●用鼠标指向编辑窗口并按缩放键或者操作鼠标的滚动键,会以鼠标指针位置为中心重新显示。
3.基本工具介绍
(1)模型选择工具栏(ModeSelectorToolbar)
主要模型(MainModes):
从左边开始:
1)选择元件(components)(默认选择的)。
2)放置连接点。
3)放置标签(用总线时会用到)。
4)放置文本。
5)用于绘制总线。
6)用于放置子电路。
7)用于即时编辑元件参数(先单击该图标再单击要修改的元件)。
(2)配件(Gadgets):
从左边开始:
1)终端接口(terminals):
有VCC、地、输出、输入等接口。
2)器件引脚:
用于绘制各种引脚。
3)仿真图表(graph):
用于各种分析,如NoiseAnalysis。
4)录音机。
5)信号发生器(generators)。
6)电压探针:
使用仿真图表时要用到。
7)电流探针:
使用仿真图表时要用到。
8)虚拟仪表:
有示波器等。
(3)仿真控制按钮
从左边开始:
1)运行。
2)单步运行。
3)暂停。
4)停止。
3.3对象的放置和编辑
1.对象的添加和放置
以跑马灯原理图为例,从元件的挑选添加和放置来介绍一般原理图绘制时的对象的添加和放置。
点击工具箱的左侧元器件模式按钮
,使其选中,再点击挑选元件按钮P,出现“Pickfromlibraries”对话框,如图1-53挑选元器件所示,出现PickDevices对话框如图1-54设备选择页面所示。
图1-53挑选元器件
图1-54设备选择页面
在这个对话框里我们可以选择元器件和一些虚拟仪器。
这里以添加单片机AT89C52为例来说明怎么把元器件添加到编辑窗口的。
在“Keyword”下面输入AT89C52关键字,在“Gategory(器件种类)”下面,我们找到“MicoprocessorIC”选项,鼠标左键点击一下,在对话框的右侧,我们会发现这里有大量常见的各种型号的单片机。
找到单片机AT89C52,双击“AT89C52”,如图1-55选择器件所示:
图1-55选择器件
这样在左边的对象选择器就有了AT89C52这个元件了。
点击一下这个元件,然后把鼠标指针移到右边的原理图编辑区的适当位置,点击鼠标的左键,就把80C51放到了原理图区,如图1-56所示:
图1-56将选择器件放到编辑区
通常我们将原理图中需要用的元件依次通过图1-53挑选元器件的方法从元件库中先挑选出来,在跑马灯电路中所需的原件有:
电容(CAP)、晶体振荡器(CRYSTAL)、电阻(RES)、电解电容(GENELECT22U16V)、按钮(BUTTON)、红色LED灯(LED-RED)、单片机AT89C52。
符号分别如图1-57所示。
在跑马灯电路中我们把相应的元件挑出来后,在元件列表区能看到这些被跳出来的元件,如图1-58跑马灯元件列表所示,附录1给出了Proteus提供的所有元件分类及子类,从元件库挑选好的器件依次放入原理图编辑窗口区,如图1-59放置跑马灯元件所示。
符号
名称
RES
CAP
GENELECT22U16V
CRYSTAL
LED-RED
BUTTON
AT89C52
图1-57跑马灯元件名称与符号
图1-58跑马灯元件列表
图1-59放置跑马灯元件
2.放置电源及接地符号
我们会发现许多器件没有Vcc和GND引脚,其实他们隐藏了,在使用的时候可以不用加电源。
如果需要加电源可以点击左侧工具箱的
按钮,这时对象选择器将出现POWER、GROUND等,在对象选择器里点击GROUND,鼠标移到原理图编辑区,左键点击一下即可放置接地符号;同理也可以把电源符号POWER放到原理图编辑区。
如图1-60放置电源及接地符号所示。
图1-60放置电源及接地符号
3.对象的编辑
调整对象的位置和放置方向以及改变元器件的属性等,有选中、删除、拖动等基本操作,其他操作还有拖动标签、对象的旋转、编辑对象的属性,这些操作只要用鼠标点击右键,如图1-61对象操作所示中选择相应的功能进行操作。
(1)拖动标签(DragObject):
许多类型的对象有一个或多个属性标签附着。
可以很容易地移动这些标签使电路图看起来更美观。
移动标签的步骤如下:
首先点击右键选中对象,然后用鼠标指向标签,按下鼠标左键。
一直按着左键就可以拖动标签到你需要的位置,释放鼠标即可。
(2)对象的旋转(RotateClockwise、RotateAnti-Clockwise、Rotate180degrees、X-Mirror、Y-Mirror):
许多类型的对象可以调整旋转为0。
、90。
、270。
、360。
或通过x轴y轴镜象旋转。
当该类型对象被选中后,“旋转工具按钮”图标会从蓝色变为红色,然后就可以改变对象的放置方向。
旋转的具体方法是:
首先点击右键选中对象,然后根据你的要求用鼠标左键点击旋转工具的4个按钮,如图1-62旋转工具所示。
(3)编辑对象的属性(EditProperties):
对象一般都具有文本属性,这些属性可以通过一个对话框进行编辑。
编辑单个对象的具体方法是:
先用鼠标右键点击选中对象,然后用鼠标左键点击对象,此时出现属性编辑对话框。
也可以点击工具箱的按钮,再点击对象,也会出现编辑对话框,对象属性对话框如图1-63所示。
图1-61对象操作
图1-62旋转工具
图1-63对象属性对话框
ComponentReference:
元件的流水号,在Proteus工具软件中,在放置相同的元件时,元件流水号自动加1。
ComponentValue:
元件的值的大小,对于集成电路则是其元件型号。
PCBPackage:
元件在PCB的封装形式。
ProgramFile:
这个属性只对CPU而言,其他元件属性没有这项栏目,点击文件夹后,添加单片机程序可执行文件*.hex,这个文件在这儿选择在任务2中应用KeilµVision4编写并生产的跑马灯.hex文件。
3.4绘制电路原理图
1.画导线
Proteus的智能化可以在你想要画线的时候进行自动检测。
当鼠标的指针靠近一个对象的连接点时,跟着鼠标的指针就会出现一个红色小方框,鼠标左键点击元器件的连接点,移动鼠标出现了粉红色的连接线变成了深绿色。
如果你想让软件自动定出线路径,只需左击另一个连接点即可。
这就是Proteus的线路自动路径功能(简称WAR),如果你只是在两个连接点用鼠标左击,WAR将选择一个合适的线径。
WAR可通过使用工具栏里的“WAR”命令按钮来关闭或打开,也可以在菜单栏的“Tools”下找到这个图标。
如果你想自己决定走线路径,只需在想要拐点处点击鼠标左键即可。
在此过程的任何时刻,你都可以按ESC或者点击鼠标的右键来放弃画线。
如图1-64画导线所示,跑马灯原理图如图1-65所示。
图1-64画导线
图1-65跑马灯原理图
2.画总线
为了简化原理图,我们可以用一条导线代表数条并行的导线,这就是所谓的总线。
点击工具箱的总线按钮
,使之处于选中状态,即可在编辑窗口画总线。
将鼠标置于图形编辑窗口,单击鼠标左键,确定总线的起始位置;移动鼠标,找到总线的终了位置,单击鼠标左键,再单击鼠标右键,以表示确认并结束画总线操作。
如图1-66总线画法所示。
图1-66总线画法
3.画总线分支线
点击工具的按钮,画总线分支线,它是用来连接总线和元器件管脚的。
画总线的时候为了和一般的导线区分,我们一般采用画斜线来表示分支线,但是这时如果WAR功能如果是自动连线模式是不行的,需要把WAR功能关闭,在主菜单Tools下鼠标左键点击WAR,画线恢复自由模式。
画好分支线我们还需要给分支线起个名字。
右键点击分支线选中它,接着左键点击选中的分支线就会出现分支线编辑对话框,如图1-67放置线标所示,选中PlaceWireLable或者选中左侧工具栏
按钮,出现EditWireLable对话框,如图1-68编辑线标所示。
图1-67放置线标
图1-68编辑线标
在总线与支线的绘图中,连接在一起的同端它们的WireLable是一样的,在图1-69总线支线画法中,成对出现的WireLable它们都是同端。
图1-69总线支线画法
特别提示
放置元件时要注意所放置的元件应放到蓝色方框内,如果不小心放到外面,由于在外面鼠标用不了,要用到菜单“Edit”的“Tidy”清除,方法很简单只需单击“Tidy”即可。
3.5注入和调试程序
右键点击CPU,程序注入如图1-70左边所示,点击ProgamFile的文件夹,出现如图1-70右所示,选择跑马灯.hex文件,点击打开,此时将跑马灯程序注入到了单片机的CPU中了。
图1-70程序注入
点击程序执行按钮
,跑马灯跑起来了,程序运行前后的状态如图1-71左所示为程序运行前的状态,如图1-71右所示为程序运行后的状态。
图1-71程序运行前后的状态
在图中可以看到当点击程序运行按钮时,发光二极管的左侧为红色小方块,电阻R1右侧为兰色的小方块,此时灯已处于点亮状态,调整R1的值可以调整发光二极管的亮度。
在运行中红色小方块代表高电平,兰色小方块代表低电平,灰色代表不确定电平(floating)。
相关知识
3.6Proteus与Keil的联合进行C语言调试
Proteus除了可以直接进行汇编语言源代码调试之外,还可以与Keil等第三方集成开发环境无缝连接,利用Keil环境进行C语言程序源代码跟踪调试。
为此要在计算机上分别安装Keil和Proteus软件,另外还需要从Labcenter公司网站下载一个名为vdmagdi.exe的文件并安装,该文件安装后会在Keil\C51\BIN目录下生成一个VDM51.DLL文件,同时在Keil目录下的Tools.ini文件中增加一个目标驱动项:
TDRV8=BIN\VDM51.DLL("ProteusVSMSimulator"),这样就可以将Proteus与Keil联合进行C语言程序源代码跟踪调试了。
先启动Proteus并选中Debug下拉菜单中的“UseRemoteDebugMonitor”选项,再打开Keil工程项目,单击Project菜单中的“Optionfortarget”选项,在DEBUG选项卡右栏上部的下拉菜单选中“UseProteusVSMSimulator”,如图1-72所示。
这时启动Keil工程项目,将自动与Proteus进行连接,并且可以在Keil环境中采用单步、断点等调试手段,同时在Proteus环境下看到程序调试运行的结果。
图1-72在Keil环境中设置Proteus连接选项
采用Keil还可以进行两台机器连调,一台机器运行Proteus,另一台机器运行Keil,并单击图4右上角的“setings”按钮,如果同一台机IP名为127.0.0.1,如不是同一台机则填另一台的IP地址,端口号一定为8000。
采用Keil与Proteus进行连调,非常类似于硬件仿真,在Proteus中专心致力于硬件系统设计,在Keil中用C语言编程,在系统硬件设计的同时进行系统软件设计,并且在真实硬件系统还没有做出来之前,就可以进行软件系统的虚拟仿真调试,由于从Proteus环境下可以直观地看到软件程序的运行结果,保证了软件程序设计的可靠性,从而极大地提高了单片机应用系统的设计效率。
如图1-73采用Keil与Proteus进行连调的万年历运行效果图。
图1-73Keil与Proteus联合调试结果
3.7Proteus下的51单片机C源码调试
1.Proteus下的51单片机C源码调试
Proteus除了可以直接进行汇编语言源码调试之外,若源码使用高级语言,可以借用Proteus之外的第三方代码生成工具(汇编器/编译器),Proteus装载器支持的51系列单片机调试文件格式主要有0MF51(Keil编译器生成)、UBROF(IAR编译器生成).若要用ProteusVSM的源码调试功能,就需要汇编器/编译器提供DDX或输出Proteus支持的调试格式文件(带调试信息的目标代码),装载器从这些调试文件中提取调试信息以实现源码调试.在使用以上格式时,首先在编译器中设置相应的输出格式,然后将生成的带调试信息的代码文件作为单片机窗口的“程序文件”,启动仿真,则可进行源码调试.
2.在Keil中生成OMF51格式文件
在Keil中打开相应的工程项目,左击选中“Targetl”,然后右击,在打开的快捷菜单中选择“OptionsforTarget‘Targetl’”,在新打开的对话框中选择“Output”选项卡,将NameofExecutable中的文件扩展名设置成OMF格式,勾选CreateExecutable下的DebugInformatio和BrowseInforrnati选项,确定退出后对整个工程进行编译就可以得到OMF51格式文件。
如图1-74设置输出ofm51格式文件所示。
图1-74设置输出ofm51格式文件
3.OMF51/UBROF格式文件的使用
在Proteus软件中打开单片机仿真文件,将程序文件设置成OMF51或UBROF文件,然后就可以在Proteus环境中调试系统,当需要调出C源代码窗口时,先单击仿真工具中的暂停按钮,然后单击“Debug”菜单,将8051CPUSourceCode—U1选中,即可见到C源程序调试窗口。
4.源码调试
单击仿真工具中的暂停按钮,调出源码调试窗口,窗口右上角提供多个调试按钮,其意义如下:
全速运行(Run):
启动程序全速运行。
单步运行(StepOver):
执行子程序调用指令时,将整个子程序一次执行完。
跟踪运行(StepInto):
遇到子程序调用指令时,跟踪进入子程序内部运行。
跳出运行(StepOut):
将整个子程序运行完成,并返回到主程序。
运行到光标处(RunTo):
从当前指令运行到光标所在位置。
设置断点(ToggleBreakpoint):
在光标所在位置设置一个断点。
跑马灯在Proteus下的51单片机C源码调试效果图如图1-75所示。
图1-75跑马灯在Proteus下的51单片机C源码调试效果图
用Proteus自带汇编器或第三方汇编/编译器对源码汇编/编译生成的调试格式文件进行源码调试,与VC++等系统相似,提供全速、跳过函数、进入函数、跳出函数、执行到光标处、设置/取消断点、单步等方式,可方便、灵活、高效地进行源代码跟踪调试,实现Proteus与单片机实时动态仿真。
任务小结
Proteus软件是英国Labcenterelectronics公司出版的EDA工具软件。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前最好的仿真单片机及外围器件的工具。
独特的单片机协同仿真功能(VSM),将电路仿真和微处理器仿真协同进行,直接在基于原理图的虚拟原型上与Keil联调实现处理器的软硬件调试,并进行功能效果验证。
它最大的优势是可以提高开发效率,降低开发成本,提升开发速度,通过对仿真结果进行分析,可验证整个控制系统的程序与外围电路的正确性,提高了调试效率,可以在没有单片机实际硬件的条件下,利用PC机以虚拟仿真方式实现单片机系统的软、硬件同步仿真调试,使单片机应用系统设计变得简单容易,大大节约单片机教学实践活动中的经费,减少了浪费,缩短了单片机开发的周期,节约了课时,增强了学生对单片机开发的体验活动,虚拟仿真界面良好的人机互动激发了学生学习单片机的兴趣,对单片机课程教学的有效性提供了保障。
课后习题
跑马灯原理图如图1-76所示,采用Proteus7Professional/ISIS7Professional软件正确绘制原理图,其中跑马灯原理图中各元器件参数见表1-7。
图1-76跑马灯原理图
表1-7跑马灯原理图中各元器件参数
元器件
序号
元器件名(值)
单片机
U1
AT89C52
晶振
CRYSTAL(12MHZ)
振荡电容
C1C2
CAP(15P~30P)
复位按钮
BUTTON
上电复位
电解电容
C3
GENELECT22µ16V
电阻
R1~R8R9
RES(二极管限流电阻510Ω,复位电阻1kΩ)
发光二极管
D1~D8
LED-RED
在图1-76跑马灯原理图将本篇中任务2中生成的“跑马灯.hex”加载到CPU(U1),点击运行,观察八个二极管的变化情况。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机系统设计与制作Proteus 软件学习指南 单片机 系统 设计 制作 Proteus 软件 学习指南