protues仿真与演示实验报告范文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
专业应用软件II实验
实验报告
实验课程名字:Protues仿真与演示
时间:大三秋学期6——10周
姓名:杨祥
班级: 电信1001
学号:
指导老师:翁志刚
一.实验目的
1、掌握Proteus ISIS基本功能。
2、掌握Proteus ISIS文件的基本操作方法和管理方法。
3、掌握Proteus ISIS仿真控制器件和虚拟仪器的使用方法。
4、掌握电子电路的设计与仿真调试的方法。
二.实验设备
计算机,Proteus软件,Word软件。
三.实验内容
I. Proteus软件的安装与运行基本电路图的连接运行
1.软件的安装
下载完后,解压压缩包里的文件
第1步、双击:Proteus 7.5 sp3 Setup目录下面的Proteus 75SP3 Setup.exe开始安装
在安装过程中会提示下图找到破解目录下的补丁打开。
第2步.打开完成后,点击install将这些key文件安装过来。如图
第3步、安装后点完成,就跳回到初始安装界面了,这个时候你就可以点next开始正式安装文件了。后面都点下一步即可。
第四步、安装完成后还需要运行破解补丁:执行LXK Proteus 7.5 SP3 v2.1.,将目录指定到X:\Program Files\Labcenter Electronics\Proteus 7 Professional
(X是你安装的盘符),然后执行update;
安装完成就可以打开软件了。如下面。
不过这个时候还是英文版。
第五步、转换中文版。将汉化文件解压覆盖到X:\Program Files\Labcenter Electronics\Proteus 7 Professional \BIN(不会找安装目录的,在运行文件上点右键属性)如图
到这里就完全汉化成功了。
2.软件打开
1、双击桌面上的ISIS 7 Professional图标或者单击屏幕左下方的
“开始”→“程序”→“Proteus 7 Professional”→“ISIS 7 Professional”,出现如图所示界面,随后就进入了Proteus ISIS集成环境。
2、Proteus ISIS的工作界面是一种标准的Windows界面,如图1-2
所示。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。
3、添加元器件
将所需元器件加入到对象选择器窗口。Picking Components into the Schematic单击对象选择器按钮,根据元件预览区域的显示,双击你所需要的元件,则所选元件出现在原理图编辑环境的元件列表区中,如图所示。用同样的方法找出原理图中需要的所有元件。
4、放置元器件
放置元器件至图形编辑窗口Placing Components onto the Schematic 在对象选择器窗口中,选中AT89C51,将鼠标置于图形编辑窗口该对象的欲放位置、单击鼠标左键,该对象被完成放置。其他元器件放置方法相同。
5.完成电路图:
利用上述操作利用proteus软件对电路图进行连接如上图所示。
6.如图按此按钮进行仿真如上图
II.protues单片机仿真与调试
1.按照上述方法连接电路图如下图打开keil软件然后进行如下操作在keil工具栏单击project
语言源程序为:
#include < reg51.h >
#include < intrins.h >
sbit K1 =P1^4 ; //加速键
sbit K2 =P1^5 ; //减速键
sbit K3 =P1^6 ; //正反控制键
sbit CLK=P0^0 ; //PWM输出控制信号
sbit ZF =P0^1 ; //正反控制信号
unsigned char PWMH=0x00; //调宽值
unsigned char PWML=0x0f;
void delay(unsigned char m);
void main()
{ CL=0;
TMOD=0x11 ; //两个定时器都工作在方式1 TH0=0x00 ; //65.535ms延时常数
TL0=0x00;
TH1=PWMH ;
TL1=PWML ;
EA=1; //CPU允许中断
ET0=1; //允许定时器T0中断ET1=1; //允许定时器T1中断TR0=1 ; //定时器T0计数
while(1)
{ if (K3==0) //高电平逆时钟转,低电平顺时钟转
{ZF=0;}
else
{ZF=1;}
if(K1==0) //按下加速键
{ delay(1);
PWML++; //调宽值低四位加1
if(PWML==0x00)
{PWMH++;} //调宽值高四位加1 if (PWMH==0xFF) //最大值时
{PWMH=0xFE;}
}
if(K2==0) //按下减速键
{ delay(1);
PWML-- ; //调宽值低四位减1
if (PWML==0x00)
{PWMH--;} //调宽值高四位减1
if (PWMH==0x00)
{PWMH=0x01;} //最小值时
}
}
}
void timer0() interrupt 1 using 0// 定时器0中断服务程序
{
TR1=0 ;
TH0=0x00 ;
TL0=0x00 ;
TH1=PWMH ;
TL1=PWML;
TR1=1 ;
CLK=0 ; //启动输出
}
void timer1() interrupt 3 using 0 // 定时器1中断服务程序{
TR1=0 ;
CLK=1 ; //结束输出
}