1.介绍

单片机体积小、重量轻、灵活廉价,具有逻辑判断、定时计数等多种功能,广泛应用于仪器、家用电器、医疗设备的智能管理和过程控制。基于单片机的嵌入式系统已经成为电子设计中最活跃的领域之一。在嵌入式系统中,开发板的成本较高,尤其是对于大量初学者来说,开发板可能会因为设计错误而损坏。利用Proteus可以很好的解决这个问题,从中可以快速建立仿真系统。

2.2简介。变形菌

Proteus是英国lab center electronics公司开发的电路仿真软件。该软件由两部分组成:一部分是智能原理图输入系统ISIS和虚拟系统模型VSM;另一部分是高级布线和编辑软件ARES (Adv-Ancd布线和编辑软件),也就是PCB。

2.1 VSM Proteus的仿真

Proteus可以模拟模拟电路和数字电路,也可以模拟模数混合电路。

Proteus可以提供30多种元件库,8000多种模拟和数字元件。可根据设计要求选择不同制造商的部件。此外,设计人员可以通过软件创建自己的组件,这些组件不在组件库中。

除了丰富的元器件,Proteus还提供了各种虚拟仪器,如常用的电流表、电压表、示波器、计数/计时/频率计、SPI调试器等虚拟终端。支持图形分析功能等。

Proteus特别适合嵌入式系统的软硬件协同设计和仿真。它最大的特点是可以模拟8051、PIA、AVR、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,用Keil C51编译data.c文件。编译成功后,会生成data.hex文件。

3.2绘制电路图

ISIS运行Proteus进入仿真软件主界面,如图1所示。主界面分为菜单栏、工具栏、模型显示窗口、模型选择区和组件列表区。

图1 ISIS启动界面

通过左侧工具栏区域中的p(从库中选择元件)命令,可以在“选择器件”窗口中选择系统所需的元件,还可以选择元件的类别和制造商。本例中需要的主要元件有:AT89C51芯片、ADC0808芯片、一个四位七段数字显示器和一个可变电阻。详情见表1。

表1组件列表

选择元件后,连接图2所示的电路。

图2电路原理图

微处理器ICs芯片的管脚与实际芯片基本相同,唯一不同的是GND和VCC管脚被隐藏,系统默认分别连接到地和5V DC电源。所以电路连接时可以忽略电源与地的连接。为了快速仿真,可以省略系统所需的时钟电路和复位电路。

电路连接完成后,选择AT89C51,点击鼠标左键,打开“编辑元件”对话框,如图3所示。可以直接在“时钟频率”后设置频率,将单片机的时钟频率设置为12MHz。在“程序文件”栏选择生成的data.hex文件,将Keil编写的程序导入Proteus,然后点击“确定”按钮保存设计。至此,我们可以模拟单片机了。

图3单片机属性设置

3.3 Proteus仿真结果

单片机的仿真结果如图4所示。模拟信号经过A/D转换后,送到单片机,然后显示在数码管上。通过调节可调电阻的阻值,可以得到不同的显示结果。仿真结果表明,系统达到了预先设计的要求。

在模拟过程中,每个引脚旁边会出现一个小方块。红色方块表示高电平,蓝色方块表示低电平。通过改变方块颜色可以方便的知道各个管脚的电平变化,从而对系统的运行有更直观的了解,对程序的调试有很大的帮助。

图4模拟结果

4.结束语

本文通过一个简单的数据采集系统,详细说明了Proteus在单片机开发中的应用。可见Proteus的功能非常强大,可以模拟各种数字模拟电路,操作简单,使用方便。它可以快速模拟单片机,加快系统开发的进程,降低开发成本。

参考资料:

[1].张琦,杜群贵。单片机应用系统设计技术——基于C语言编程。[M]的缩写.北京:电子工业出版社,2004。

[2]。林、郎建军等。基于Proteus的单片机可视化软硬件仿真。[M]的缩写.北京:北京航空航天大学出版社,2006