Proteus仿真单片机实例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
引言
单片机体积小,重量轻,具有很强的灵活性而且价格便宜,具有逻辑判断,定时计数等多种功能,广泛应用于仪器仪表,家用电器,医用设备的智能化管理和过程控制等领域。以单片机为核心的嵌入式系统已经成为目前电子设计最活跃的领域之一。在嵌入式系统的中,开发板成本高,特别是对于大量的初学者而言,还可能由于设计的错误导致开发板损坏。利用Proteus我们可以很好地解决这个问题,由此我们可以快速地建立一个仿真系统。
2.Proteus介绍
Proteus是英国Labcenter Electro-nics公司开发的一款电路仿真软件,软件由两部分组成:一部分是智能原理图输入系统ISIS(Intelligent Schematic Input System)和虚拟系统模型VSM(Virtual Model System);另一部分是高级布线及编辑软件ARES(Adv-Ancd Routing And Editing Software)也就是PCB.
2.1 Proteus VSM的仿真
Proteus可以仿真模拟电路及数字电路,也可以仿真模拟数字混合电路。
Proteus可提供30多种元件库,超过8000种模拟、数字元器件。可以按照设计的要求选择不同生产厂家的元器件。此外,对于元器件库中没有的元件,设计者也可以通过软件自己创建。
除拥有丰富的元器件外,Proteus还提供了各种虚拟仪器,如常用的电流表,电压表,示波器,计数/定时/频率计,SPI调试器等虚拟终端。支持图形化的分析功能等。
Proteus特别适合对嵌入式系统进行软硬件协同设计与仿真,其最大的特点是可以仿真8051,PIA,A VR,ARM等多种系列的处理器。Protues包含强大的调试工具,具有对寄存器和存储器、断点和单步模式IAR C-SPY,Keil、MPLAB等开发工具的源程序进行调试的功能;能够观察代码在仿真硬件上的实时运行效果;对显示,按钮,键盘等外设的交互可视化进行仿真。
2.2 Proteus PCB
Proteus 的PCB设计除了有自动布线仿真功能外,还集成了PCB设计,支持多达16个布线层,可以任意角度放置元件和焊接连线;集成了高智能的布线算法,可以方便地进行PCB设计。
3. 基于Protesus的简单数据采集系统。
3.1 软件的编写
本例题采用可调电阻调节电压值作为模拟信号的输入量,通过A/D转换芯片AD0808把模拟信号转换为数字量传送到单片机的P1口,并在P0口把转换的结果显示出来。
软件的编写可以在Keil C51 环境下进行,芯片的型号选择AT89C51,编写data.c文件,利用Keil C51进行编译,编译成功后生成data.hex文件。
3.2 绘制电路图
运行Proteus的ISIS,进入仿真软件的主界面,如图1所示。主界面分为菜单栏,工具栏,模型显示窗口,模型选择区,元件列表区等。
图1 ISIS启动界面
通过左侧的工具栏区的P(从库中选择元件)命令,在Pick devices窗口中选择系统所需元器件,还可以选择元件的类别,生产厂家等。本例所需主要元器件有:A T89C51芯片,ADC0808芯片,一个四位七段数码显示器,一个可变电阻,详见表1。
表1 元器件清单
选择元器件后连接图2所示电路。
图2 电路原理图
Microproccessor ICs类的芯片的引脚与实际的芯片基本相同,唯一的差别是隐去了GND 和VCC引脚,系统默认的是把它们分别连接到地和+5V直流电源。故在电路连线时可以不考虑电源和地的连接。为了快速进行仿真,系统所需的时钟电路,复位电路可以省略。
电路连接完成后,选中AT89C51单击鼠标左键,打开“Edit Component”对话窗口如图3所示,可以直接在“Clock Frequency”后进行频率设定,设定单片机的时钟频率为12MHz。在“Program File”栏中选择已经生成的data.hex文件,把在Keil编写的程序导入Proteus,然后单击“OK”按钮保存设计。至此,就可以进行单片机的仿真。
图 3 单片机属性的设定
3.3 Proteus仿真结果
单片机的仿真结果图如图4,模拟信号经A/D转换后,结果送入单片机,再在数码管上显示;通过调节可调电阻的阻值,可以得到不同的显示结果。仿真结果表明,系统达到了预先的设计要求。
在仿真的过程中每个管脚旁边会出现一个小方块,红色的方快表示高电平,蓝色的表示低电平。通过方快颜色的变化可以很方便地知道每个管脚电平的变化,从而能对系统的运行有更直观的了解,这对程序的调试有很大的帮助。
图4 仿真结果
4.结束语
本文结合一个简单的数据采集系统详细说明了Proteus在单片机开发中的应用。可以看出,Proteus功能十分强大,能仿真各种数字模拟电路,且操作简单,使用方便。能快速地进行单片机仿真,加快系统开发的过程,降低开发成本。