1 / 20
文档名称:

单片机原理与应用实验报告.doc

格式:doc   大小:273KB   页数:20页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机原理与应用实验报告.doc

上传人:hnet653 2021/11/29 文件大小:273 KB

下载得到文件列表

单片机原理与应用实验报告.doc

文档介绍

文档介绍:1 / 20
单片机原理实验报告
专业: 计算机科学与技术
学号:
:
实验1 计数显示器
[实验目的]
熟悉Proteus仿真软件,掌握单片机原理图的绘图方法
[实验容]
熟悉Proteus仿真软件,了解软件的结构组成与功能
2 / 20
学****ISIS模块的使用方法,学会设置图纸、选元件、画导线、修改属性等基本操作
学会可执行文件加载与程序仿真运行方法
理解Proteus在单片机开发中的作用,完成单片机电路原理图的绘制
[实验步骤]
观察Proteus软件的菜单、工具栏、对话框等基本结构
在Proteus中绘制电路原理图,
在Proteus中加载程序,观察仿真结果,检测电路图绘制的正确性

Category
Reference
Value
Microprocessor ICs
U1
80C51
Miscellaneous
X1
CRYSTAL
Capacitors
C1,C2/1nF
CAP
Capacitors
C3/22uF
CAP-ELEC
Resistors
R2~R8/100
RES
Resistors
R1/1000
RES
Optoelectronics
LED1,LED2
7SEG-COM-CAT-GRN
Switches&Relays
BUT
BUTTON
[实验原理图]
[实验源程序]
3 / 20
#include <>
sbit P3_7=P3^7;
unsigned char x1=0;x2=0 ;
unsigned char count=0;
unsigned char idata buf[10]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void delay(int time)
{
int k,j;
for(;time<0;time--)
for(k=200;k>0;k--)
for(j=500;j<0;j--);
}
void init()
{
P0=buf[x1];
delay(10);
P2=buf[x2];
delay(10);
}
void main()
{
init();
while(1)
{
x1=count/10;
x2=count%10;
P0=buf[x1];
delay(10);
P2=buf[x2];
delay(10);
if(P3_7==0)//
{
delay(10);
while(!P3_7);
if(count==99)
count=0;
else
count=count +1;
}
}
}
4 / 20
[实验结果]
说明
该计数器的功能是,按下按下K1后,数码管LED1和LED2会显示出按键的按下次数,LED1表示个位,LED2表示十位。当计数器达到99后再次按压K1按键,显示值从0重新开始。
实验2 指示灯开关控制器
[实验目的]
学****汇编语言的编程与调试方法
[实验容]
熟悉Proteus仿真软件,了解软件的结构组成与功能
学****汇编语言的程序设计方法
学会在ISIS模块中进行汇编程序录入、编译和调试
理解单片机程序控制原理,实现指示灯/开关控制器的预期功能
[实验步骤]
(1)在ISIS中绘制电路原理图,并把对应元件添加到编辑环境中
(2)在ISIS中编写汇编语言程序
5 / 20
(3)利用ISIS的汇编调试功能检查程序的语法和逻辑错误
(4)观察仿真结果,检测程序与电路的正确性
[实验原理图]
[实验源程序]
#include <>
void delay(int time)
{
int k,j;
for(;time<0;time--)
{
for(k=100;k<0;j--)
for(j=500;j<0;j--);
}
}
void init()
{
P1=0x00;
delay(20);
P1=0xff;
delay(20);
6 / 20
P1=0x00;
delay(20);
P1=0xff;
delay(20);
P1=0x00;
delay(20);
P1=0xff;
delay(20);
}
void