8.3 实验三Proteus与Keil软件仿真联调实验
1.实验目的
(1)学习Protues软件的使用方法。
(2)学习Proteus软件和KeilμVision软件的联调。
(3)熟悉C51语言编程方法。
2.实验内容
设计利用P2口驱动的两个LED交替闪烁。
3.实验方法和步骤
(1)Proteus软件介绍
Proteus软件是英国Labcenter Electronics公司开发的一款电路仿真软件,软件由两部分组成:一部分是智能原理图输入系统(Intelligent Schematic Input System,ISIS)和虚拟系统模型(Virtual System Model,VSM);另一部分是高级布线及编辑软件(Advanced Routing and Editing Software,ARES),也就是PCB(Printed Ciruit Board,印刷电路板)设计软件。
Proteus软件可以仿真模拟电路及数字电路,也可以仿真模拟数字混合电路。Proteus软件可提供30多种元件库,超过8 000种模拟、数字元器件。在Proteus软件中,可以按照设计的要求选择不同生产厂家的元器件。此外,对于元器件库中没有的元件,设计者也可以通过软件自己创建。
除拥有丰富的元器件外,Proteus软件还提供了各种虚拟仪器,如常用的电流表、电压表、示波器、计数/定时/频率计、SPI调试器等虚拟终端,并且支持图形化的分析功能等。
Proteus软件特别适合对嵌入式系统进行软硬件协同设计与仿真,其最大的特点是可以仿真8051、PIA、AVR、ARM等多种系列的处理器。Protues软件包含强大的调试工具,具有对寄存器和存储器、断点和单步模式IAR C-SPY、Keil、MPLAB等开发工具的源程序进行调试的功能;能够观察代码在仿真硬件上的实时运行效果;可对显示、按钮、键盘等外设的交互可视化进行仿真。
Proteus软件除了具有自动布线仿真功能外,还集成了PCB设计功能,支持多达16个布线层,可以任意角度放置元件和焊接连线。
(2)基于Protesus软件的单片机实例
①软件编写
软件的编写采用C51语言,芯片的型号选择AT89C51,编写LED.c文件后,利用Keil μVision软件进行编译,编译成功后生成LED.hex文件。
②电路原理图的设计
运行Proteus软件的ISIS,进入仿真软件的主界面,如图8-21所示。主界面分为菜单栏、工具栏、模型显示窗口、模型选择区、元件列表区等。
通过左侧的工具栏区的P(从库中选择元件)命令,在“Pick Devices”窗口中选择系统所需元器件,还可以选择元件的类别、生产厂家等。本实验所需主要元器件有AT89C51芯片、电阻RES、电容CAP和CAP-ELEC、石英晶振CRYSTAL和发光二极管LED-RED。
选择元器件后连接电路,Microproccessor ICs类的芯片的引脚与实际芯片的基本相同,唯一的差别是隐去了GND和VCC引脚,系统默认是把它们分别连接到地和+5 V直流电源。故在电路连线时可以不考虑电源和地的连接。
图8-21 ISIS启动界面
图8-22 选择元器件
电路连接完成后,选中“AT89C51”,单击鼠标左键,打开“Edit Component”对话窗口,如图8-23所示,可以直接在“Clock Frequency”后进行频率设定,设定单片机的时钟频率为12 MHz。在“Add/remove source file”栏中选择已经编好的LED.c文件,然后单击“OK”按钮保存设计。至此,就可以进行单片机的仿真了。
图8-23 编辑元件加载KeilμVision软件生成的hex文件
运行调试时,点击“”快捷键中的第一个按钮来运行程序,此时能够观察到LED闪烁。
(3)实验步骤
①添加元器件,如图8-24所示。
图8-24 添加元器件1
②绘制电路图。Proteus软件仿真原理图如图8-25所示。
图8-25 Proteus软件仿真原理图
(4)编写程序。
参考程序如下:
4.实验结果
联调仿真后,能够观察到两个LED灯交替闪烁。