PROTEUS单片机源程序设计Word文档格式.docx
《PROTEUS单片机源程序设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《PROTEUS单片机源程序设计Word文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
(一)了解PROTEUS—单片机与嵌入式系统仿真与开发平台的主要特点
1.该平台包括原理布图系统ISIS、带扩展的Prospice混合模型仿真器、动态器件库、高级图形分析模块和处理器虚拟系统仿真模型VSM,是一个完整的单片机与嵌入式系统软、硬件设计仿真平台。
①集成PROTEUSPCB设计形成完整的电子设计系统。
②支持ARM7,PIC,AVR,HC11以及8051系列的微处理器CPU模型。
交互外设模型有LCD显示、RS232终端、通用键盘、开关、按钮、LED等。
③强大的调试功能,如访问寄存器与内存,设置断点和单步运行模式。
④支持如IAR、Keil和Hitech等开发工具的源码C和汇编的调试。
⑤14种虚拟仪器:
示波器、逻辑分析仪、信号发生器、规程分析仪等。
⑥模拟信号发生器包括直流、正旋、脉冲、分段线性、音频、指数、单频FM;
数字信号发生器包括尖脉冲、脉冲、时钟和码流。
(二)学习ProteusISIS智能原理图输入系统的基本知识
1.进入ProteusISIS
双击桌面上的ISIS6Professional图标或者单击屏幕左下方的“开始”→“程序”→“Proteus6Professional”→“ISIS6Professional”,出现如图1-1所示屏幕,表明进入ProteusISIS集成环境。
图1-1启动时的屏幕
2.工作界面
ProteusISIS的工作界面是一种标准的Windows界面,如图1-2所示。
包括:
标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。
图1-2ProteusISIS的工作界面
3.基本操作
(1)图形编辑窗口:
在图形编辑窗口内完成电路原理图的编辑和绘制。
①点状栅格(TheDotGrid)与捕捉到栅格(SnappingtoaGrid)
编辑窗口内有点状的栅格,可以通过View菜单的Grid命令在打开和关闭间切换。
点与点之间的间距由当前捕捉的设置决定。
捕捉的尺度可以由View菜单的Snap命令设置,或者直接使用快捷键F4、F3、F2和CTRL+F1。
如图1-3所示。
若键入F3或者通过View菜单的选中Snap100th,
如果你想要确切地看到捕捉位置,可以使用View菜单的X-Cursor命令,选中后将会在捕捉点显示一个小的或大的交叉十字。
②实时捕捉(RealTimeSnap)
当鼠标指针指向管脚末端或者导线时,鼠标指针将会被捕捉到这些物体,这种功能被称为实时捕捉,该功能可以使你方便的实现导线和管脚的连接。
可以通过Tools菜单的RealTimeSnap命令或者是CTRL+S切换该功能。
可以通过View菜单的Redraw命令来刷新显示内容,同时预览窗口中的内容也将被刷新。
当执行其它命令导致显示错乱时可以使用该特性恢复显示。
视图的缩放与移动
可以通过如下几种方式:
●用鼠标左键点击预览窗口中想要显示的位置,这将使编辑窗口显示以鼠标点击处为中心的内容。
●在编辑窗口内移动鼠标,按下SHIFT键,用鼠标“撞击”边框,这会使显示平移。
我们把这称为Shift-Pan。
●用鼠标指向编辑窗口并按缩放键或者操作鼠标的滚动键,会以鼠标指针位置为中心重新显示。
(2)预览窗口(TheOverviewWindow)
该窗口通常显示整个电路图的缩略图。
在预览窗口上点击鼠标左键,将会有一个矩形蓝绿框标示出在编辑窗口的中显示的区域。
其他情况下,预览窗口显示将要放置的对象的预览。
这种PlacePreview特性在下列情况下被激活:
●当一个对象在选择器中被选中
●当使用旋转或镜像按钮时
●当为一个可以设定朝向的对象选择类型图标时(例如:
Componenticon,DevicePinicon等等)
●当放置对象或者执行其他非以上操作时,placepreview会自动消除
●对象选择器(ObjectSelector)根据由图标决定的当前状态显示不同的内容。
显示对象的类型包括:
设备,终端,管脚,图形符号,标注和图形。
●在某些状态下,对象选择器有一个Pick切换按钮,点击该按钮可以弹出库元件选取窗体。
通过该窗体可以选择元件并置入对象选择器,在今后绘图时使用。
(3)对象选择器窗口
通过对象选择按钮,从元件库中选择对象,并置入对象选择器窗口,供今后绘图时使用。
(4)图形编辑的基本操作
①对象放置(ObjectPlacement)
放置对象的步骤如下(Toplaceanobject:
)
●根据对象的类别在工具箱选择相应模式的图标(modeicon)。
●根据对象的具体类型选择子模式图标(sub-modeicon)。
●如果对象类型是元件、端点、管脚、图形、符号或标记,从选择器里(selector)选择你想要的对象的名字。
对于元件、端点、管脚和符号,可能首先需要从库中调出。
●如果对象是有方向的,将会在预览窗口显示出来,你可以通过预览对象方位按钮对对象进行调整。
●最后,指向编辑窗口并点击鼠标左键放置对象。
②选中对象(TagginganObject)
用鼠标指向对象并点击右键可以选中该对象。
该操作选中对象并使其高亮显示,然后可以进行编辑。
选中对象时该对象上的所有连线同时被选中。
要选中一组对象,可以通过依次在每个对象右击选中每个对象的方式。
也可以通过右键拖出一个选择框的方式,但只有完全位于选择框内的对象才可以被选中。
在空白处点击鼠标右键可以取消所有对象的选择。
③删除对象(DeletinganObject)
用鼠标指向选中的对象并点击右键可以删除该对象,同时删除该对象的所有连线。
④拖动对象(DragginganObject)
用鼠标指向选中的对象并用左键拖曳可以拖动该对象。
该方式不仅对整个对象有效,而且对对象中单独的labels也有效。
(三)掌握单片机系统的PROTEUS电路设计
1.操作步骤
(1)启动ISIS:
双击ISIS图标,出现ProteusISIS的工作界面(详见图1-2)。
(2)新建设计文件:
单击菜单中的“文件”,出现选择模板窗口(CreateNewDesige),选中模板“DEFAULT”,再单击“OK”按钮;
单击“保存”按钮图标,弹出“SaveISISDesignFile”对话框。
在“文件名”框中输入文件名后,再单击“保存”按钮(文件名后缀自动为.DSN)。
(3)选取元器件并添加到对象选择器中:
单击图1-2中的“P”按钮,如下所示:
弹出选取元件如下所示的对话框(PickDevice),在其左上角关键字(Keywords)一栏中输入元器件名称(如:
AT89C51,CAP,CAP-ELEC等),则出现与关键字匹配的元器件列表。
选中并双击AT89C51所在行,便将器件AT89C51加入到ISIS对象选择器中。
说明:
上述的选取方法称为“关键字查找法”。
关键字可以是对象的名称(全名或其部分)、描述、分类、子类,甚至是对象的属性值。
还有一种“分类查找法”,以元器件所属大类、子类甚至生产厂家为条件一级一级地缩小范围进行查找。
(4)放置、移动、旋转元器件:
放置:
单击ISIS对象选择器中的元器件名,灰色条出现在该元器件名上,把鼠标指针(下文简称指针)移到编辑区某位置后,单击就可放置元器件于该位置,每单击一次,就放一个元器件(如要删除,只需双击右键)。
移动:
先右击使元器件处于选中状态(即高亮度状态),再按住左键拖动,到达目的地后,松开即可。
旋转:
要调整元器件方向,先将指针指在元器件上右击选中,再单击相应的转向按钮(若多个对象一起移动或转向,选相应的块操作命令)。
通过放置、移动、旋转元器件操作,可将各元器件放置在ISIS编辑区中的合适位置。
(5)放置电源、地(终端):
单击模式选择工具栏中的终端按钮图标,在ISIS对象选择器中单击POWER(电源),再在编辑区要放置电源的位置单击完成;
放置地(GROUND)的操作类似。
(6)电路图布线:
系统默认自动捕捉和自动布线有效。
相继单击元器件引脚间、线间等要连线的两处,会自动生成连线。
自动捕捉:
当光标靠近引脚末端或线时该处会自动感应出现一个“×
”,表示从此点可以单击画线。
自动布线:
在前一指针着落点和当前点之间会自动预画线(是带直角的线),
在引脚末端选定第一个画线点后,随指针移动有预画细线出现,当遇到障碍时,会自动绕开障碍。
手工调整线形:
在移动鼠标的过程中单击即可;
若要手工任意角度画线,在移动鼠标的过程中按住Ctrl键,移动指针,预画线会自动随指针呈任意角度,
确定后单击即可。
放置线路节点:
如果在交叉点有电路节点,则认为两条导线在电气上是相连的,否则就认为它们在电气上是不相连的。
ISIS在画导线时能够智能地判断是否要放置节点。
但在两条导线交叉时是不放置节点的,这时要想两个导线电气相连,只有手工放置节点了。
点击工具箱的节点放置按钮+,当把鼠标指针移到编辑窗口,指向一条导线的时候,会出现一个“×
”号,点击左键就能放置一个节点。
(7)设置、修改元器件的属性:
右击放置在ISIS编辑区中的该元器件(显示高亮度后,再单击它打开其属性窗口,在属性窗口相应的栏目中进行修改。
(8)电气检测:
设计电路完成后,单击电气检测按钮图标(也可通过菜单操作:
Tools→ElectricalRuleCheck…),会出现检查结果窗口。
窗口前面是一些文本信息,接着是电气检查结果列表,若有错,会有详细的说明。
2.设计实例
(1)设计题目:
通过AT89C51单片机控制8个发光二极管发光,实现暗点以1HZ频率由低位到高位循环移动。
(2)PROTEUS设计电路原理图
图1-3发光二极管流水灯电路原理图
(四)掌握PROTEUS—单片机源程序设计
1.源程序设计
(1)添加源程序文件
单击ISIS菜单Source(源程序),弹出下拉菜单,单击“Add/Remove
SourceFiles…”(添加/移开源程序)选项,弹出对话框,单击
“CodeGenerationTool”(目标代码生成工具)下方框中按钮“▼”,弹出下拉菜单,选择代码生成工具“ASEM51”(51系列及其兼容系列汇编器)。
若“SourceCodeFilename”(源程序文件名)下方框中没有期望的源程序文件,则单击“New”(新建)按钮,在弹出的对话框文件名框中输入新建源程序文件名“start.asm”后,单击“打开”按钮,会弹出小对话框,单击“是”按钮。
(2)编写编辑源程序
单击菜单“Start→start.asm”,在源程序窗口中编辑源程序。
编辑无误后,单击保存图标按钮存盘,文件名就是start.asm。
2.生成目标代码文件
(1)目标代码生成工具设置
如首次使用某一编译器,则需设置代码产生工具,单击菜单“Source
→DefineCodeGenerationTools”,在弹出的对话框中(Add/Remove
CodeGenerationTools),进行设置:
CodeGenerationTool(代码生成工具)设置为ASEM51;
MakeRules(生成规则)中的SoureExtn(源程序扩展名)设置为ASM;
ObjExtn(目标代码扩展名)设置为HEX;
Command
Line(命令行)设置为%1;
DebngDataExtraction(调试数据提取)中的
ListFileExtn设置为LST。
(2)汇编编译源程序、生成目标代码文件
单击“Source→BuildAll(全编译、汇编),编译结果在弹出的编译日志对话框中显示,无错则生成目标代码文件。
对ASEM51系列及其兼容单片机而言,目标代码文件格式为*.HEX。
若有错,则可根据编译日志提示来调试源程序,直至无错生成目标代码文件为止。
2.源程序清单(发光二极管流水灯)
ORG0
SJMPSTART
ORG30H
START:
MOVP1,#1
MOVP1,#2
MOVP1,#4
MOVP1,#8
MOVP1,#10H
MOVP1,#20H
MOVP1,#40H
MOVP1,#80H
CALLDLY
SJMPSTART
DLY:
NOP
NOP
RET
END