百米赛跑计时器课程设计.docx
- 文档编号:26948401
- 上传时间:2023-06-24
- 格式:DOCX
- 页数:11
- 大小:293.16KB
百米赛跑计时器课程设计.docx
《百米赛跑计时器课程设计.docx》由会员分享,可在线阅读,更多相关《百米赛跑计时器课程设计.docx(11页珍藏版)》请在冰豆网上搜索。
百米赛跑计时器课程设计
大作业(论文)
课程名称:
单片机原理及应用
题目:
百米赛跑计时器
院(系):
信控学院
专业班级:
计算机
姓名:
学号:
指导教师:
年7月5日
摘要
本文阐述了单片机计时器的设计。
本设计是许多体育竞赛的必备设备之一。
本设计的数字电子秒表是采用8051单片机为中心器件,利用定时/计数器的定时和计数原理,结合显示电路和LED数码管设计计时器。
其中软件系统采用汇编语言,硬件系统利用PROTEUS的功能来实现,简单且易于观察,在仿真中观察其实际运行的工作状态。
关键字:
单片机,仿真,软件,硬件
2、大作业(论文)任务书………………………………………………4
2.1大作业(论文)题目……………………………………………4
2.2本次大作业(论文)应达到的目的……………………………4
2.3本次大作业(论文)任务的主要内容和要求…………………5
2.4应收集的资料及主要参考文献…………………………………5
2.5审核批准意见……………………………………………………5
3、线路图…………………………………………………………………6
3.1原理图………………………………………………………………6
3.2实验图………………………………………………………………7
4、程序功能说明…………………………………………………………8
5、程序流程图……………………………………………………………8
6、结束语…………………………………………………………………10
7、致谢……………………………………………………………………10
8、参考文献………………………………………………………………10
9、附录(程序清单)……………………………………………………10
9.1C语言………………………………………………………………10
9.2汇编语言……………………………………………………………13
2.大作业(论文)任务书
西安建筑科技大学大作业(论文)任务书
专业班级:
计算机1001学生姓名:
指导教师(签名):
2.1、大作业(论文)题目
百米赛跑计时器:
利用51系列单片机设计百米赛跑计时器,通过LED显示器显示秒十位和个位,在设计过程中用一个存储单元作为秒计数单元,当一秒钟到来时,就让秒计数单元加1。
当跑完百米时,按暂停就得到所需计数,不需要计数时清零即可。
2.2、本次大作业(论文)应达到的目的
大作业的基本教学目的是培养学生综合运用所学的基础理论、专业知识和基本技能,提高分析与解决实际问题的能力以及科技写作或设计能力。
要求学生在做大作业的过程中要有意识地培养自己的实际能力。
通过本次大作业的实践,了解单片机工作的原理及应用技术,掌握根据硬件电路设计软件的方法,了解设计过程中的各个基本环节,也为今后的实际应用奠定基础。
2.3、本次大作业(论文)任务的主要内容和要求(包括原始数据、技术参数、设计要求等)
操作对象:
MCS-51单片机显示板。
操作要求:
完成电路板焊接,软件编制及实验报告。
操作步骤:
1)选定题目
2)完成设计方案。
3)设计电路图,用proteus绘制图纸。
4)编制程序。
5)仿真调试
6)撰写工作报告。
7)提交报告并演示作品。
2.4、应收集的资料及主要参考文献:
1)教材
2)杨光友,朱宏辉,《单片微型计算机原理及接口技术》,水利水电出版社,2002.9,第一版第一次印刷
3)杨文龙,《单片机原理及应用》,西安电子科技大学出版社,1993.6,第一版
(4)李华,《MCS-51系列单片机实用接口技术》,北京航空航天大学出版社,1993.5
(5)何立民,《单片机应用系统设计》,北京航空航天大学出版社,2002
2.5、审核批准意见
教研室主任(签字)
3、线路图
(1)原理图
(2)实验图
首先,连接的是单片机51的最小系统,其中包括时钟电路,复位电路。
我们所选用的数码管是共阴极的,置1时导通,所以将单片机的P1.0~P1.7连接数码管的a~dp,P2口同理。
然后在数码管秒表个十位的显示则由软件程序来控制。
4、程序功能说明
此次课程设计题目是百米赛跑计时器,由课程设计的要求和任务,我采用的C语言编程,设计秒表要求一秒定时,采用了定时器定时,其中一个软件一个硬件,会在方案论证中分析在1秒时采用的是硬件定时,即用单片机内部的定时器T0。
先将时钟初始化,赋入初值50ms定时,循环20次来进行1秒定时。
然后由定义的变量second来进行加一运算,然后将其值通过P1,P2口在数码管上进行显示。
其中数码管的显示时,我在程序中首先定义了一个关于数码管显示的字形码定义,以便在显示时调用即可。
5、程序流程图
在真正应用时,一秒定时是用定时中断的,但单片机的T0最长也不能1秒定时,所以采用50ms定时循环20次,用count来控制。
当秒的时间达到59时,用软件来清零时循环从00重新开始。
6、结束语
本次课程设计是关于51系列单片机的应用。
在平时我们的知识仅限于课堂所了解的,这次课程设计给我们实践的机会。
在开始时,编程和控制、理论和实际总是不能联系到一起,让我一度感到迷茫,最后还是翻阅了大量的有关资料,才基本将课程做完。
通过这个课程设计,让我发现原来一个小小的单片机有这么多的功能,能在多种领域应用。
这也让我明白,在以后的学习中,不仅要努力学习,还要有钻研和创新的精神,对自己所学的知识一定要用心去学。
7、致谢
感谢老师给我这次实践的机会,让我对理论知识进一步的理解,对51系列单片机功能及应用进一步掌握,使我受益匪浅。
8、参考文献
(1)教材
(2)杨光友,朱宏辉,《单片微型计算机原理及接口技术》,水利水电出版社,2002.9,第一版第一次印刷
(3)杨文龙,《单片机原理及应用》,西安电子科技大学出版社,1993.6,第一版
(4)李华,《MCS-51系列单片机实用接口技术》,北京航空航天大学出版社,1993.5
(5)何立民,《单片机应用系统设计》,北京航空航天大学出版社,2002
9、附录(程序清单)
C语言程序:
#include
H
#defineuintunsignedint
#defineucharunsignedchar
unsignedcharcodeSEG7[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//数码管0~9的字型码
ucharcount,second;//定义变量
voidinit()//定义定时器T0初始化程序
{
TMOD=0x01;
TH0=(65536-50000)/256;//赋初值定时1秒
TL0=(65536-50000)%256;
ET0=1;
TR0=1;
EA=1;
P2=SEG7[0];
P1=SEG7[0];
}
voiddelay(unsignedintk)//定义延时程序
{
unsignedinti,j;
for(i=0;i { for(j=0;j<121;j++) { ; } } } //----------------------------------------------------------- voidmain(void) { init();//定时器初始化 while (1)//无限循环 { ; } } //---------------------------------------------------- voidtimer0()interrupt1//定时器T0中断 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; count++; if(count==20) { count=0; second++; if(second>59)second=0; P1=SEG7[second/10];//显示秒的十位 delay(10);//延时 P2=SEG7[second%10];//显示秒的个位 delay(10); } 汇编程序: ORG0000H START: MOVR1,#20 MOVR2,#10 MOVR3,#6 MOVR4,#00H LOOP1: MOVR2,#10 LOOP: MOVA,R4 MOVB,#0AH DIVAB MOVDPTR,#TAB MOVCA,@A+DPTR MOVP1,A MOVA,B MOVCA,@A+DPTR MOVP2,A LCALLDEL INCR4 DJNZR2,LOOP DJNZR3,LOOP1 MOVP1,#00 MOVP2,#00 LJMPSTART DEL: MOVR7,#12 DEL1: MOVR6,#123 NOP DEL2: DJNZR6,DEL2 DJNZR7,DEL1 DJNZR1,DEL RET TAB: DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 百米 赛跑 计时器 课程设计
![提示](https://static.bdocx.com/images/bang_tan.gif)