本节介绍一个软件仿真工具——Proteus,该软件比较受软件工程师的青睐。虽然该软件模拟的硬件环境与实际环境存在差异,但是基本上在该软件中调试通过的程序运用到实际的硬件环境后的改动不是很大。
Proteus是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其他EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。Proteus从原理图布图、代码调试到单片机与外围电路协同仿真、一键切换到PCB设计,真正实现了从概念到产品的完整设计。它是目前世界上将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台软件之一,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加了其他系列的处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。
这款软件主要用来进行软件仿真。在实际开发过程中,都是硬件和软件同时进行的,但如果硬件调试板还未完成,则可以使用这个软件进行仿真。你需要多少个电流表、电压表、示波器,它都可以满足你。
双击Proteus 75SP3 Setup.exe进行安装,当弹出如图2.17所示的界面后,选择“Use a locally installed Licence Key”(使用本地许可证)这一项,然后单击“Next”按钮,会提示有没有可使用的许可证存在,若没有,则单击“Next”按钮浏览本地许可证,然后单击提示框中的“Install”即可,如图2.18所示。接下来继续单击“Next”按钮,此时真正开始安装软件,最后单击“Finish”按钮即可完成整个安装过程。
安装完成后查看其生成的快捷方式,可知其中的ARES 7 Professional是用来设计PCB的,ISIS 7 Professional是用来进行原理图设计及软件仿真的。两者运行后的界面分别如图2.19和图2.20所示。
图2.17 Proteus的安装向导
图2.18 Proteus的注册界面
图2.19 ARES 7 Professional的运行界面
图2.20 ISIS 7 Professional的运行界面
对于Proteus的使用,这里只介绍运用ISIS 7 Professional工具来进行器件的添加及搭建一个简单的仿真电路。
运行ISIS 7 Professional,单击“库(L)”菜单,选择“拾取元器件/符号(P)”,会弹出如图2.21所示的界面。可以通过从图2.21左侧的类别、子类别及制作商中选择或直接输入关键字来查找我们所需要的器件,这里选中的是ATMEGA88_32PIN。图2.21右侧给出了其原理图及PCB的预览图。单击图2.21右下角的“确定”按钮,器件就添加好了,然后可以从图2.21左侧看到该器件。
现在来搭建一个简单的电路。首先根据上述方式添加MCU、晶振、LED、电阻和电压表。然后单击“元件模式”,放置元件,如图2.22所示。接着先对电源进行设置:单击“设计(D)”菜单中的“设定电源范围”,选择“VCC/VDD”项,其默认的电压值为5,这里修改为我们需要的3.3(对于芯片来说,5V电压也是可以的,电源范围可以根据实际需要来调整)。接下来需要修改的就是晶振的频率,这里将其设置为7.3728MHz(其默认值为1MHz)。最后需要修改ATMEGA88_32PIN的属性,这是最难设置的一个地方,需要根据程序的具体要求来设置。
单击MCU的属性,弹出如图2.23所示的界面。首先设置“Program File”,通过浏览找到2.1.3节中建立的那个工程的HEX文件,选中它后单击“确定”按钮即可。然后设置熔丝位,由于这里使用的是外部晶振7.3728MHz,所以熔丝位的设置也如图2.23中所示。至此,所有设置完成。
图2.21 选择型号界面
图2.22 电路示例1
2.1.3节的工程是实现将I/O方向设置为输出并且将电平设置为高电平,搭建的电路中接了4个LED来说明是否达到效果,如图2.24所示。从图中可以看到,PD的3个引脚所接的电压表都显示为3.29V。
Proteus还提供了很多虚拟仪器,如I 2 C调试器、SPI调试器,它们都是单片机工程师经常会使用到的。因此,掌握Proteus的使用对开发很有好处。总的来说,如果能够多掌握一个工具,对于开发就会多一个解决方法。
图2.23 “编辑元件”界面
图2.24 电路示例2