预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共21页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

单片机Proteus仿真Proteus软件是英国LCE公司研制的EDA工具软件,可实现电路原理设计,电路分析与仿真。Proteus由ISIS(智能电路原理图输入系统)和ARES(高级布线编辑)两个软件组成。用Proteus软件进行单片机的设计和仿真的步骤如下:(1)用ISIS软件设计应用系统的硬件电路(2)用Keil软件设计应用系统的程序并调试(3)进行硬软件的统一调试,检查运行的结果。举例:设计如下的硬件电路,编写程序实现8路流水灯第一部分Proteus仿真步骤Proteus软件由ISIS(智能图形输入系统)和ARES(布线和电路板制造)2部分组成。一、点击图标启动Proteus软件ISIS环境,编辑环境如图:(一)菜单栏(二)主工具栏6(五)工具箱ISIS中提供了许多图标工具按钮,如图:(六)仿真和方向工具栏二、用Proteus进行电路设计和仿真(一)设计一个单片机最小系统,在P0口或P1口上接8个LED灯,要求实现跑马。(1)启动ProteusISIS,单击菜单FileNewDesign,新建DEFAULT模板,保存文件名:P1(1).DSN。(2)在器件选择中点P按钮(或:LibraryPickDevice/Symbol)添加下表中的元件。(在Keywords栏中逐个输入元件的英文)单片机:AT89C51电容:CAP30µF晶振:CRYSTAL12MHZ按钮:Button发光二极管:LED-BIBY/BIGY电阻:RES排阻:Respack-8电解电容:CAP-ELEC(3)单击工具箱中元件终端图标,将元件终端放置在合适位置,然后布线。(4)单击对象选择器中的POWER和GROUND,将元件电源和地放置在合适位置,然后布线。(5)左键双击各元件,设置相应元件的参数,完成电路图的设计。第二部分Keil软件编程操作步骤:1、双击桌面上的UV2快捷图,启动软件。2、点击P工程N新建工程输入文件名(如A1)并点击保存。3、出现CPU屏幕,选AtmelAT89C51点确定。屏幕左上方出现图标目标1。4、点击文件新建文件出现程序输入区。输入C语言程序:#include"reg51.h"#defineunitunsignedint#defineuncharunsignedcharconsttab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};voiddelay(void){unsignedinti;for(i=0;i<35530;i++);}voidmain(void){unsignedcharx;while(1){for(x=0;x<8;x++){P0=tab[x];delay();}}}5、点击(图标)目标1前的“+”号,出现(图标)源程序组1,选中并点右键,选“文件增加到源程序组1”,选择文件类型为C,再选要输入的程序S1.C,点ADD(加入),点确定。此时点击源程序组1可以看到要输入的程序S1.C。在对程序编译前要进行以下的设置:1、单击“project”(工程)菜单,在下拉菜单中单击“optionsfortarget1”(目标’目标1’属性),再单击“target”(目标),将输入仿真器的晶振频率改为12.0MHz。2、在目标’目标1’属性页面下选择output(输出),点击“CreateHEXfile”(产生hex文件)的选项,以便汇编后生成HEX代码,供编程器使用。3、对于软件仿真,在目标’目标1’属性页面下点“Debug”(调试),再选“S使用软件仿真器”,同时选中“加载代码到仿真器”和“运行到main0”,然后点击“确定”。6、程序的编译和链接依次点击屏幕上方左下角的编译和建造目标图标对文件进行编译和链接,观察左下角的调试程序信息显示,如有错可根据该栏提示的信息进行修改,修改后要重新保存和编译,直到无错误提示。第三部分调试与仿真在ProteusISIS编辑窗口中,单击鼠标右键选中AT89C51单片机,单击鼠标左键弹出EditComponent对话框,在ClockFrequency栏设置晶振频率12MHZ,在ProgramFiel栏中单击图标,选择Kiel生成的名.HEX文件,确定。在ProteusISIS中FielSaveDesign保存设计,生成名.DSN文件。在ProteusISIS中单击Debug选Execute执行,观察运行结果。退出:单击DebegPause/StopAnimetion可退出运行状态。#include<reg51.h>#defineuintunsignedint#defineucharunsignedcharconsttab[]={0Xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xbf,0xdf,0xef,0xf7