在ATmega16单片机的学习与开发过程中,CVAVR是程序设计开发平台,它能进行程序的编译;AVR Studio可进行程序的编译、调试与软件仿真,但是它们都不能直接进行硬件仿真。Proteus软件具有交互式仿真功能,它不仅是模拟电路、数字电路、模/数混合电路的设计与仿真平台,更是目前世界上最先进、最完整的多种型号微处理器系统的设计与仿真平台。如果将CVAVR等AVR编译软件和Proteus软件有机结合起来,那么ATmega16单片机的设计与开发将在软、硬件仿真上得到完美的结合。
1.Proteus软件的使用
Proteus软件由ISIS(Intelligent Schematic Input System)和ARES(Advanced Routing and Editing Software)两个软件构成,其中ISIS是一款智能原理图输入系统软件,可作为电子系统仿真平台;ARES是一款高级布线编辑软件,用于制作印制电路板(PCB)。由于篇幅的原因,Proteus ISIS的详细介绍及Proteus ARES的使用方法,本书不进行介绍,感兴趣的读者可以参考本书作者编写的《基于Proteus的AVR单片机C语言程序设计与仿真》一书。图2-22所示的是与本章任务1中的“新建一个项目.c”源程序对应原理图,现以此图为例,简单介绍Proteus ISIS的使用方法。
图2-22 与“新建一个项目.c”对应的原理图
1)新建设计文件 在桌面上双击图标 ,打开ISIS 7 Professional窗口。执行菜单命令“File”→“New Design”,弹出如图2-23所示的模板选择窗口。横向图纸为“Landscape”,纵向图纸为“Portrait”,“DEFAULT”为默认模板。选中“DEFAULT”,单击“OK”按钮,则新建了一个DEFAULT模板。也可以在ISIS 7 Professional窗口中直接单击图标 ,也可新建一个DEFAULT模板。
图2-23 图纸模板选择
2)设定图纸的大小 执行菜单命令“System”→“Set Junction Dots…”,在弹出的对话框中选择“A4”复选框,单击“OK”按钮,完成图纸的设置。图纸设置好后,进入如图2-24所示的ISIS 7 Professional窗口。
图2-24 ISIS 7 Professional窗口
3)保存设计项目 新建一个DEFAULT模板后,在ISIS 7 Professional窗口的标题栏上显示为DEFAULT。单击图标 ,或者执行菜单命令“File”→“Save Design…”,弹出“Save ISIS Design File”对话框。在此对话框中选择合适的保存路径,输入保存文件名为“新建一个项目”。该文件的扩展名为.DSN,即该文件名为“新建一个项目.DSN”。文件保存后,在ISIS 7 Professional窗口的标题栏上显示为“新建一个项目”。
4)为设计项目添加电路元器件 本例中使用的元器件见表2-2。在元器件选择按钮 中单击“P”按钮,或执行菜单“Library”→“Pick Device/Symbol”,弹出图2-25所示的“Pick Devices”对话框。在此对话框中,添加元器件的方法有两种。
表2-2 本例中使用的元器件
☺ 在“keywords”栏中输入元器件名称,如“ATmega16”,则出现与关键字匹配的元器件列表,如图 2-26 所示。选中并双击“ATmega16”所在行后,单击“OK”按钮或按“Enter”键,便将器件ATmega16加入到ISIS对象选择器中。
图2-25 “Pick Devices”对话框
图2-26 输入元器件名称后的“Pick Devices”对话框
☺ 在元器件类列表中选择元器件所属类,然后在子类列表中选择所属子类,同时当对元器件的制造商有要求时,在制造商区域选择期望的厂商,即可在元器件列表区域得到相应的元器件。
按照以上方法将元器件添加到ISIS对象选择器中。
5)放置、移动、旋转、删除对象 元器件添加到ISIS对象选择器中后,在对象选择器中单击要放置的元器件,蓝色条出现在该元器件名上,再在原理图编辑窗口中单击,即可放置一个元器件。也可以在按住鼠标左键的同时移动鼠标,在合适位置释放,将元器件放置在预定位置。
在原理图编辑窗口中若要移动元器件或连线时,先用鼠标右键单击对象,使元器件或连线处于选中状态(默认情况下为红色),再按住鼠标左键拖动,元器件或连线就跟随指针移动,到达合适位置时,松开鼠标即可。
放置元器件前,单击要放置的元器件,蓝色条出现在该元器件名上,单击方向工具栏上相应的转向按钮可旋转元器件,再在原理图编辑窗口中单击即可放置一个已经更改方向的元器件。若在原理图编辑窗口中需要更改元器件方向时,单击选中该元器件,再单击块旋转图标 ,在弹出的对话框中输入旋转的角度即可实现更改元器件方向。在原理图编辑窗口中要删除元器件时,用鼠标右键双击该元器件即可删除该元器件,或者先用鼠标左键单击选中该元器件,再按“Delete”键也可删除元器件。
通过放置、移动、旋转、删除元器件后,可将各元器件放置在ISIS原理图编辑窗口的合适位置,如图2-27所示。
图2-27 各元器件放置在原理图编辑窗口的合适位置
6)放置电源、地 单击工具箱中元器件终端图标 ,在对象选择器中单击“POWER”,使其出现蓝色条,再在原理图编辑窗口合适位置单击鼠标就将电源放置在原理图中。同样,在对象选择器中单击GROUND,再在原理图编辑窗口合适位置单击鼠标就将“地”放置在原理图中。
7)布线 在ISIS原理图编辑窗口中没有专门的布线按钮,但系统默认自动布线 有效,因此可直接绘制连线。
【在两个对象间连线】
(1)将光标靠近一个对象引脚端,该处自动出现一个“ ”,单击鼠标左键。
(2)拖动鼠标,将光标移至另一对象的引脚端,在该引脚端出现一个“ ”时再单击鼠标即可绘制一根连线,如图2-28(a)所示;若想手动设定布线路径时,拖动鼠标,在想要的拐点处单击,设定布线路径,到达绘制线端的另一端后单击鼠标左键,就绘制好一根连线,如图2-28(b)所示。在拖动鼠标过程中,按住“Ctrl”键,在绘制线的另一端出现一个“ ”时单击鼠标左键,可手动绘制任意角度的连线,如图2-28(c)所示。
【移动布线、更改线形】
(1)单击鼠标左键选中连线,将光标靠近该布线,在该布线出现双箭头,如图2-28(d)所示。
(2)按住左键拖动鼠标,该布线就跟随移动。
(3)若多根线要同时移动时,先框选这些布线,再单击块移动按钮 ,拖动鼠标,在合适位置单击鼠标左键,即可改变布线的位置。
图2-28 布线
【总线及分支线的绘制方法】
(1)将光标靠近一个对象引脚端,该处自动出现一个“ ”,单击鼠标左键。
(2)拖动鼠标,在合适位置双击鼠标左键,绘制出一条直线。
(3)如果该线为单线,要设置为总线时,先选中该线,用鼠标右键单击,在弹出的菜单中选择“Edit Wire Style”,如图2-29(a)所示,再在弹出的对话框中的“Global Style”栏中选择“BUS WIRE”,如图2-29(b)所示。绘制的总线如图2-30所示。
图2-29 总线绘制方法
图2-30 绘制的总线
总线分支线绘制步骤如下所述。
(1)将光标靠近一个对象引脚端,该处自动出现一个“ ”,单击鼠标左键。
(2)拖动鼠标,在靠近总线合适位置双击鼠标左键,绘制出一条直线。
(3)将光标靠近该直线末端,该处自动出现一个“ ”,单击鼠标左键。
(4)拖动鼠标,同时按住“Ctrl”键,在总线出现一个“ ”时单击鼠标左键,即可绘制好一根分支线,如图2-31所示。
图2-31 分支线的绘制方法
(5)在工具箱中单击图标 ,再在总线或各分支线上单击鼠标左键,弹出如图2-32所示的“Edit Wire Label”对话框。在“Label”选项卡的“String”栏中输入相应的线路标号,如总线为“AD[0..7]”(表示有AD0~AD7共8根数据线),分支线为AD0、AD1等。
8)设置、修改元器件属性 在需要修改属性的元器件上单击鼠标右键,在弹出的菜单中选择“Edit Properties”,或者按“Ctrl”+“E”键,将出现“Edit Component”对话框,在此对话框中设置相关信息。例如,修改电容为22pF,如图2-33所示。
图2-32 “Edit Wire Label”对话框
图2-33 “Edit Component”对话框
9)编辑设计原理图界面 根据以上步骤及方法在原理图编辑窗口中绘制完图2-22所示的电路图后,可以将不需要显示的一些项目隐藏起来,把界面编辑成简洁、清爽的界面。执行菜单命令“View”→“Grid”,可以去掉界面中的网格;执行菜单命令“Template”→“Set Design Defaults”,在弹出的“Edit Design Defaults”对话框中取消“Show hidden text?”选项的选中状态,可以去掉元器件的文本内容。编辑好的单片机仿真原理图如图2-34所示。
图2-34 编辑好的单片机仿真原理图
10)单片机程序仿真 在原理图中双击ATmega16单片机,将弹出“Edit Component”对话框。在“Program File”栏中单击按钮 ,添加任务1中由CVAVR生成的“新建项目.coff”或“新建项目.hex”文件。在“Clock Frequency”选项中设置单片机的工作频率为8MHz,如图2-35所示。设置好后,单击“OK”按钮将原理图保存,并回到原理图编辑界面。
在原理图编辑界面中单击仿真按钮,即可进行单片机程序仿真。
注意:
在仿真过程中,元器件的某些引脚显示红色的小方点表示该引脚为高电平状态,引脚显示蓝色的小方点表示该引脚处于低电平状态。仿真效果如图2-36所示。
图2-35 单片机编辑对话框设置
图2-36 “新建项目”的仿真效果图