第1篇 开放实验报告
开放实验报告
开放性实验报告
移动机器人设计与制作
姓名:黄家进
学号:06144008
班级:电气140
专业:电气工程及其自动化
指导老师:赵勇
时间:2015.10.15--2015.12.10
目录
实验一 io口的输出应用................................................................................................................4
一.实验目的...........................................................................................................................4
二.实验内容...........................................................................................................................4
三.实验器材...........................................................................................................................4
四.实验步骤...........................................................................................................................4
五.实验程序及电路图...........................................................................................................4
1.实验说明:
...................................................................................................................4
2.实验程序:
...................................................................................................................4
3.实验仿真图:..................................................................................................................5
实验二 io口的输入应用................................................................................................................5
一.实验目的...........................................................................................................................5
二.实验内容...........................................................................................................................5
三.实验器材...........................................................................................................................5
四.实验步骤...........................................................................................................................5
五. 实验程序及电路图..........................................................................................................6
1.实验说明:
...................................................................................................................6
2.实验程序:
...................................................................................................................6
3.仿真电路图:
...............................................................................................................6
实验三 定时器中断实验(periodic interrupt timer).......................................................................7
一.实验目的...........................................................................................................................7
二.实验内容...........................................................................................................................7
三.实验器材...........................................................................................................................7
四.实验步骤...........................................................................................................................7
五.实验程序及电路图...........................................................................................................7
1.实验说明:
...................................................................................................................7
2.实验程序:
...................................................................................................................7
3.仿真电路图:
...............................................................................................................8
实验四 外部中断的应用.................................................................................................................9
一.实验目的...........................................................................................................................9
二.实验内容...........................................................................................................................9
三.实验器材...........................................................................................................................9
四.实验步骤...........................................................................................................................9
五.实验程序及电路图...........................................................................................................9
1.实验说明:
...................................................................................................................9
2.实验程序:
...................................................................................................................9
3.仿真电路图.................................................................................................................10
实验五 单片机串口的应用...........................................................................................................10
一.实验目的.........................................................................................................................10
二.实验内容.........................................................................................................................10
三.实验器材.........................................................................................................................10
四.实验步骤.........................................................................................................................
五.实验程序及电路图.........................................................................................................
1.实验说明:
.................................................................................................................
2.实验程序:
.................................................................................................................
3.仿真电路图:
.............................................................................................................13
实验六 流水灯实验........................................................................................................................13
一.实验目的.........................................................................................................................13
二.实验内容.........................................................................................................................13
三.实验器材.........................................................................................................................13
四.实验步骤.........................................................................................................................13
五.实验程序及仿真电路图.................................................................................................13
1.实验说明:
.................................................................................................................14
2.实验程序:
.................................................................................................................14
3.仿真电路图:
.............................................................................................................14
六. 改进实验.................................................................................................................15
1.改进说明:
.................................................................................................................15
2.实验程序:
.................................................................................................................15
3.仿真电路图:
.............................................................................................................16
实验七 51单片机最小系统检测..................................................................................................16
一.实验目的.........................................................................................................................16
二.实验内容.........................................................................................................................16
三.实验器材.........................................................................................................................16
四.实验步骤.........................................................................................................................16
五. 实验程序及电路图.................................................................................................16
1.实验说明:
.................................................................................................................17
2.实验程序:
.................................................................................................................17
3.仿真电路图:
.............................................................................................................17
4实物展示:
.................................................................................................................18
范文top100实验八 四位数码管秒表计时器...................................................................................................18
一. 实验目的..............................................................(转 载于: 酷猫写作范文网)...................................................18
二.实验内容.........................................................................................................................18
三.实验器材.........................................................................................................................18
四.实验步骤.........................................................................................................................18
六. 实验程序及电路图.................................................................................................18
1.实验说明:
.................................................................................................................18
2.实验程序:
.................................................................................................................18
3.仿真电路图:
.............................................................................................................2
4.实物展示:
.................................................................................................................22
个人总结........................................................................................................................................22
实验一 io口的输出应用
一.实验目的
通过此次实验学习普通io口作为输出口的应用。
二.实验内容
我们通过普通io口驱动一个led灯闪烁。(采用灌电流方式)
三.实验器材
stc89c52rc单片机、led灯或实验箱。
四.实验步骤
1.在keil开发环境下建立一个工程。
2.程序的编写。
3.程序下载调试(可先进行仿真)。
附注:
采用灌电流的方式原因:因为单片机输出的电流比较小,当然可以驱动发光二极管,但是在很多时候,例如:我们驱动数码管的时候,会因为输出电流比较小,所以发光二极管不够亮,所以当我们采用灌电流的方式的时候可以避免这一点。
为了防止电流过大烧坏二极管,一般应接200ω左右的限流电阻。
五.实验程序及电路图
1.实验说明:
用灌电流方式来驱动p1.0口的led灯闪烁。
2.实验程序:
#include;
#define unint unsigned int
#define unchar unsigned char
sbit led = p1^0;
//位定义
void delay(unint k)
{
}
void main()
{
while(1) {
4
//延时函数 unint i;
for(k;k>;0;k--) for(i=0;i<121;i++);
//死循环
}
} led = 0;
delay(1000);
led = 1;
delay(1000);
//灌电流方式,低电平点亮 //延时约1s
3.实验仿真图:
本实验的实验仿真图如图1.1所示。
图1.1 io口的输出应用
实验二 io口的输入应用
一.实验目的
通过此次实验学习普通io口作为输入口的应用,并结合输入输出方式熟练掌握io口的应用。
二.实验内容
采用按键控制一个led灯的亮灭。
三.实验器材
stc89c52rc单片机、led灯,独立按键或实验箱。
四.实验步骤
1.在keil开发环境下建立一个工程。
2.程序的编写,采用查询方式判断键是否按下,并确定是否点亮二极管。
3.程序下载调试(可先进行仿真)。
5
下页
开放实验报告
附注:
按键控制led灯的亮灭,我们可以采用外部中断的方式(实验四会讲),独立按键的接法希望大家注意,直接接地,在没有按键的情况下io口为高电平(注:因为本实验中按键接p1口,内部集成上拉电阻。若使用p0口作为通用io口使用时必须外接500ω左右的上拉电阻。见实验四。),当有按键按下时io口为低电平。
五.实验程序及电路图
1.实验说明:
通过一个按键来控制led灯的亮灭。
2.实验程序:
#include;
#define unint unsigned int
#define unchar unsigned char
sbit led = p1^0;
sbit key = p1^1;
void main()
{
}
3.仿真电路图:
本实验的仿真电路图如图2.1所示。
while(1) { } if(!key) else led = 1;
//判断是否按下按键,按下为0 led = 0;
//点亮灯 //死循环 //位定义
图2.1 io口的输入应用
实验三 定时器中断实验(periodic interrupt timer)
一.实验目的
掌握定时器相关寄存器的配置,以及定时时间的计算等。
二.实验内容
定期器中断及查询方式控制p1.0口输出方波,用实验箱上的示波器观察波形,不同定时值对其影响。
三.实验器材
stc89c51rc或实验箱。
四.实验步骤
1.在keil开发环境下建立一个工程。
2.程序的编写。
a.定时常数的确定
定时器/计数器的输入脉冲周期与机器周期一样,为振荡频率的1/12。本实验中时钟频率为6.0 mhz,现要采用中断方法来实现0.5秒延时,要在定时器1中设置一个时间常数,使其每隔0.1秒产生一次中断,cpu响应中断后将r0中计数值减一,酷猫写作范文网令r0=05h,即可实现0.5秒延时。
时间常数可按下述方法确定:
机器周期=12÷晶振频率=12/(6×10)=2us
设计数初值为x,则(2e+16-x)×2×10=0.1,可求得x=15535
化为十六进制则x=3cafh,故初始值为th1=3ch,tl1=afh
b.初始化程序
包括定时器初始化和中断系统初始化,主要是对ie、tcon、tmod的相应位进行正确的设置,并将时间常数送入定时器中。由于只有定时器中断,ip便不必设置。
c.设计中断服务程序和主程序
(来自: 酷猫写作范文网)
中断服务程序除了要完成计数减一工作外,还要将时间常数重新送入定时器中,为下一次中断做准备。
3.程序下载调试。
4.附注:定时器常用方式1和方式2(在错误!未找到引用源。中用到),方式2 为自动重装计数初值的8位定时器,主要用于串行通信中波特率的产生和短时精确定时(因为不必软件重装初值所以更精确)。
66
五.实验程序及电路图
1.实验说明:
通过定时器中断及查询方式控制p1.0口输出方波。
2.实验程序:
#include;
#define unchar unsigned char
#define unint unsigned int
sbit fangbo = p1^0;
void main()
{
}
void time0() interrupt
{
}
3.仿真电路图:
本实验仿真电路图如图3.1所示。
th0 = 0x3c;
tl0 = 0xb0;
//重装计数器值 //p1.0取反,产生方波 fangbo=~fangbo;
//定时器0中断服务函数 tmod = 0x01;
th0 = 0x3c;
tl0 = 0xb0;
et0 = 1;
ea = 1;
tr0 = 1;
while(1);
//装入定时器初值定时50ms //定时器0中断允许 //总中断允许 //等待 //定时器0工作方式1 //通过p1.0口输出方波 //定时器0开始计时范文写作
图3.1 定时器中断实验
注:实验箱中有模拟示波器,可通过电脑观察波形。
实验四 外部中断的应用
一.实验目的
通过此次实验学习51单片机外部中断的使用,并结合输入输出方式熟练掌握外部中断的应用。
二.实验内容
采用按键以中断方式控制一个led灯的亮灭。
三.实验器材
stc89c52rc单片机、led灯,独立按键或实验箱。
四.实验步骤
1.在keil开发环境下建立一个工程。
2.程序的编写,采用中断方式判断键是否按下,并确定是否点亮二极管。
3.程序下载调试(可先进行仿真)。
附注:
中断方式可以提高cpu的效率,当发生中断事件时处理器可快速响应中断,没有中断事件时处理器正常工作,不必时刻查询中断事件的发生与否,提高代码效率。
本例中,若采用电平触发方式,则key为低电平时led亮,否则led息灭;若采用边沿触发方式,则key的每个下降沿,即key由高变为低时,led的状态改变一次。
五.实验程序及电路图
1.实验说明:
用按键以中断方式控制一个led灯的亮灭。
2.实验程序:
#include;
#define unchar unsigned char
#define unint unsigned int
sbit led = p1^0;
sbit key = p3^2;
void main()
{
}
//位定义 it0 = 0;
//外部中断0采用电平触发方式;边沿触发为1下降沿有效 ea = 1;
//中断允许 ex0 = 1;
//开外部中断0 while(1);
void int0() interrupt 0
{
}
/*
void int0() interrupt 0
{
}
3.仿真电路图 led = 0;
led = 1;
//外部中断0程序 //led 亮 // led 灭 while(key == 0);
//等待键释放 //边沿触发方式中断函数思想汇报专题。每次key下降沿改变led状态 led =~led;
//改变led状态
本实验的仿真电路图如图4.1所示。
图4.1 外部中断的应用
实验五 单片机串口的应用
一.实验目的
通过此次实验学习单片机串口的应用,掌握串口相关寄存器的配置,并学会用串口做简单的双机通信。
二.实验内容
通过串口实现双机通信,用key控制发光二极管。
三.实验器材
stc89c52rc单片机、led灯或实验箱。
上页 下页
开放实验报告
四.实验步骤
1.在keil开发环境下建立一个工程。
2.程序的编写。
3.程序下载调试(可先进行仿真)。
附注:
51单片机串行口的sbuf有两个:接收sbuf和发送sbuf,二者在物理结构上是独立的,单片机用它们来接收和发送数据。串行通讯的波特率随串行口工作方式选择的不同而不同,它除了与系统的振荡频率f,电源控制寄存器pcon的smod位有关外,还与定时器t1的设置有关。
1、在工作方式0时,波特率固定不变,仅与系统振荡频率有关,其大小为f/12。
2、在工作方式2时,波特率也只固定为两种情况:
当smod=1时,波特率=f/32 当smod=0时,波特率=f/64
3、在工作方式1和3时,波特率是可变的:
当smod=1时,波特率=定时器t1的溢出率/16 当smod=0时,波特率=定时器t1的溢出率/32
其中,定时器t1的溢出率=f/(12*(256-n)),n为t1的定时时间常数。
在实际应用中,往往是给定通讯波特率,而后去确定时间常数。例如:f=6.144mhz,波特率等于1200,smod=0时,则1200=6144000/(12*32*(256-n)),计算得n=f2h。
本例程中设置串行口工作于方式1,smod=0,波特率为1200。
五.实验程序及电路图
1.实验说明:
通过串口实现双机通信,用key控制发光二极管。
2.实验程序:
#include;
#define unchar unsigned char #define unint unsigned int sbit key = p1^1;
sbit led = p1^0;
void uartsend(unchar dat);
void uartsend(unchar k) { }
sbuf = k;
while(!ti);
//发送数据 //待待发送结束
//串口发送子函数
void main()
}
void uart() interrupt 4 {
unchar temp;
if(ri) {
temp = sbuf;
switch(temp) { } ri = 0;
//清除中断标志
case 0x55:led = 1;break;
case 0xaa:led = 0;break;
default:break;
//读数据 //判断数据
//判断是否为接收中断
unchar tmp;
tmod = 0x20;
th1 = 0xfa;
tl1 = 0xfa;
pcon = 0;
et1 = 0;
ea = 1;
es = 1;
tr1 = 1;
scon = 0x50;
while(1) { }
if(key) { } else { }
uartsend(0x55);
while(!key);
uartsend(0xaa);
while(key);
//用串口发送0xaa
//等待键释放
//判断是否有键按下
//装入定时器初值11.0592m晶振,波特率4800 //波特率不倍增 //定时器1中断允许 //总中断允许 //串口中断允许 //定时器0开始计时 //死循环
//定时器1工作方式2
//串口工作方工1,准备接收
}
//清除中断标志
ti = 0;
3.仿真电路图:
本实验的仿真电路图如图5.1所示。
图5.1 单片机串口的应用
实验六 流水灯实验
一.实验目的
通过此次实验学习流水灯的应用,并学会用流水灯来做扩展实验。
二.实验内容
在焊接的电路板上实现p2口的8个发光二极管流水灯显示。
三.实验器材
stc89c52rc单片机、led灯。
四.实验步骤
1.在keil开发环境下建立一个工程。
2.程序的编写。
3.程序下载调试(可先进行仿真)。
4.按实验要求焊接好电路板并进行实验。
五.实验程序及仿真电路图
1.实验说明:
控制p2口上的8个led灯来回左右点亮。
2.实验程序:
#include;
#include;
#define uchar unsigned char #define uint unsigned int void delayms(uint z) //延时函数 { uint x,y;
for(x=z;x>;0;x--) for(y=110;y>;0;y--);
} //主程序 void main() { uchar i;
p2=0x01;
while(1) {
for(i=0;i<7;i++) { p2=_crol_(p2,1);
delayms(150);
}
for(i=0;i<7;i++) { p2=_cror_(p2,1);
delayms(150);
} }
}
3.仿真电路图:
本实验的仿真电路图如图6.1所示。
//p2 的值向左循环移动
//p2 的值向右循环移动
图6.1 流水灯实验
六. 改进实验
1.改进说明:
用另一种方法控制p2口上的led灯来回左右点亮(控制前三个led灯即可,方法不限)。
2.实验程序:
#include;
#define uchar unsigned char #define uint unsigned int sbit led1=p2^0;
sbit led2=p2^1;
sbit led3=p2^2;
void delayms(uint z) { } //主程序 void main() { {
led1=0;
delayms();
led1=1;
//延时函数
uint x,y;
for(x=z;x>;0;x--) for(y=110;y>;0;y--);
while(1)
上页 下页
开放实验报告
led2=0;
delayms();
led2=1;
led3=0;
delayms();
(转 载于: 酷猫写作范文网)
led3=1;
}
}
3.仿真电路图:
改进实验的仿真电路图与之前的电路图一样,但只有前三个led灯亮。如图6.1所示
实验七 51单片机最小系统检测
一.实验目的
1、熟练掌握keil及proteus的使用方法;
2、了解和掌握51单片机的原理、使用方法;
3、会编写简单的程序,利用51单片机实现相应的功能,如简单流水灯设
计,数码管的显示,l298的显示等;
4、了解和掌握电阻、电容、电感等元件的识别、读数方法及使用方法;
5、学会简单的焊接技术和焊接技巧。
二.实验内容
利用led灯检测单片机最小系统
三.实验器材
stc89c52rc单片机、led灯。
四.实验步骤
1.在keil开发环境下建立一个工程。
2.程序的编写。
3.程序下载调试(可先进行仿真)。
4.按实验要求焊接好电路板并进行实验。
五. 实验程序及电路图
1.实验说明:
控制p1.1口上的led灯亮灭。
2.实验程序:
#include;
#define unint unsigned int
#define unchar unsigned char
sbit led = p1^0;
{
}
void main()
{
}
//位定义 //延时函数 void delay(unint k) unint i;
for(k;k>;0;k--) for(i=0;i<121;i++);
while(1) { //死循环 //点亮灯 led = 0;
delay(1000);
//延时 } led = 1;
//灯灭 delay(1000);
//延时
3.仿真电路图:
图7.1 单片机串口的应用
4实物展示:
单片机最小系统(点亮一个led灯) 单片机最小系统(点亮一个led灯) (灯亮) (灯灭)
实验八 四位数码管秒表计时器
一. 实验目的
学会使用和控制四位数码管
二.实验内容
利用单片机和数码管做一个秒表计时器
三.实验器材
stc89c52rc单片机、四位共阳极数码管等。
四.实验步骤
1.在keil开发环境下建立一个工程。
2.程序的编写。
3.程序下载调试(可先进行仿真)。
4.按实验要求焊接好电路板并进行实验。
六. 实验程序及电路图
1.实验说明:
控制数码管一1秒间隔进行累加,从而做成秒表计时器
2.实验程序:
#include;
#define uint unsigned int
#define uchar unsigned char
uint shu,num;
void init();
void dealy(uint x)
{
uchar i;
while(x--)
{
for(i=0;i<120;i--);
}
}
uchar code duan_xuan[]=
{
0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
//共阳管数组编码
void display(uint y)
{
uchar qian,bai,shi,ge;
qian=y/1000;
bai=y%1000/100;
shi=y%100/10;
ge=y%10;
p0=0xff;
p2=0x08;
p0=duan_xuan[ge];
dealy(10);
p0=0xff;
p2=0x04;
p0=duan_xuan[shi];
dealy(10);
p0=0xff;
p2=0x02;
p0=duan_xuan[bai];
dealy(10);
p0=0xff;
p2=0x01;
p0=duan_xuan[qian];
dealy(10);
}
void main() {
shu=0;
num=0;
init();
while(1)
{
display(num);
上页 下页 余下全文
开放实验报告
}
}
void init()
{
tmod=0x01;
//使用定时器0方式
th0=(65535-50000)/256 //
tl0=(65535-50000)%256;
ea=1;
//
et0=1;
//
tr0=1;
//
}
void time() interrupt
{
th0=(65535-50000)/256;
//
tl0=(65535-50000)%256;
shu++;
if (shu==20)//满20次为1s
{
shu=0;
num++;
}
}
3.仿真电路图:
赋初值50ms 开总中断 开定时器0中断 启动定时器0 赋初值50ms 2
图8.1 四位数码管
4.实物展示:
图8.2 四位数码管秒表计时器实物图
个人总结
这学期的开放性实验很快就结束了,在这学期里,我学到了很多关于51单片机各方面的知识。各位学长也教会了我们很多关于单片机软件编程与硬件设施的知识。一学期的开放性实验中我们一共接触和学习了好几个项目,其中软件仿真有数码管的显示、4*4矩阵键盘和5个基本仿真实验等等;硬件有51(来自: 酷猫写作范文网)单 22
片机最小系统的焊接及检测、数码管的动态显示等等。通过这几个项目的学习,我们掌握了一些51单片机的调试,达到了很好的效果。
通过这次实训,使我们能够学以致用,在实践中进一步掌握并巩固我们的51单片机理论知识。虽然在实训中遇到了不少难题与困惑,暴露出了不少问题和缺乏实践的弱点,但是在学长与同学们的帮助与指导下,我最终解决与克服了一个个的困难与困惑,顺利的完成了开放性实验。
通过这学期的开放性实验训,感觉就是自己的知识实在是太浅了,学习能力太差了。希望自己能及时改正过来,在实践中去不断提高,不断完善自己。
希望我在下学期的开放性实验中会做得更好。
23
上页
《开放实验报告》是篇酷猫写作范文网,讲的是关于程序、实验、电路图、内容、说明、器材、目的、步骤等方面的内容,希望对大家有用。