计数器"/>
实验 实现60S计数器
实验 实现60S计数器
一、实验要求
实现一个秒表,通过一个8051单片机、2个七段LED数码显示管(共阴或者共阳均可),运行后2个LED数码显示管进行计秒,从00开始到59,循环显示,计时至59后跳回00。必须使用计时器T0或者T1实现。
二、实验目的
1、进一步掌握AT89C51 单片机的结构和工作原理;
2、掌握单片机的接口技术及外围芯片的工作原理及控制方法;
3、进一步掌握单片机程序编写及程序调试过程,掌握模块化程序设计方法;
4、掌握PROTEUS仿真软件的使用方法;
5、掌握LED数码管原理及使用方法;
6、掌握定时器、外部中断的设置和编程原理。
三、实验步骤
1、根据实验要求,用ISIS软件绘制实验原理图;
2、用Keil软件编写程序代码,并无误调试;
3、返回原理图,启动调试,注意打开远程监控,此时计数器计时开始,试验完成。
四、实验结果
1、实验原理图如图所示:
2、编写程序代码如下:(附代码截图)
#include <reg52.h>
#define uchar unsigned char;
#define uint unsigned int;
uchar code seg[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f
};
uchar times,count,max = 60;void set100ms(){TH0 = 0x3c;TL0 = 0xb0;
}void t0() interrupt 1 using 1{if(times--){set100ms();}else{count++;count%=max;times = 10;set100ms();}
}
void main(){IE = 0x82;TR0 = 1;TMOD = 0x01;set100ms();times = 10;while(1){P0 = seg[count/10];P2 = seg[count%10];}
}
3、实验结果
五、心得体会
每一次实训都是对自己所学知识的巩固与提高。从资料查找到筛选再到电路的设计与仿真,其间有对以往所学的知识归纳整理与复习,不但巩固了理论知识,而且在电路的制作上也锻炼了我们的动手能力。
通过这次实验,对计数器的查询工作方式有了比较深刻的理解,并能熟练运用。掌握计数器的中断、查询使用方法。获益匪浅。
更多推荐
实验 实现60S计数器
发布评论