基于单片机篮球比赛24秒计时器设计课程设计论文.docx
《基于单片机篮球比赛24秒计时器设计课程设计论文.docx》由会员分享,可在线阅读,更多相关《基于单片机篮球比赛24秒计时器设计课程设计论文.docx(23页珍藏版)》请在冰点文库上搜索。
基于单片机篮球比赛24秒计时器设计课程设计论文
课程设计(论文)
题目名称基于单片机篮球比赛24秒计时器设计
课程名称单片机原理及在电气测控学科中的应用
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
邵阳学院课程设计(论文)任务书
年级专业
09电气测控类
学生姓名
学号
题目名称
基于单片机的篮球比赛24秒计时器设计
设计时间
课程名称
单片机原理及在电气测控学科中的应用
课程编号
设计地点
数字控制与PLC实验室(305)
一、课程设计(论文)目的
课程设计是在校学生素质教育的重要环节,是理论与实践相结合的桥梁和纽带。
单片机课程设计,要求学生更多的完成软硬结合的动手实践方案,解决目前学生课程设计过程中普遍存在的缺乏动手能力的现象。
《单片机课程设计》是继《电子技术》、《电路》和《单片机原理与应用》课程之后开出的实践环节课程,其目的和任务是训练学生综合运用已学课程“电子技术基础”、“单片机原理及应用”的基本知识,独立进行单片机应用技术和开发工作,掌握单片机程序设计、调试和应用电路设计、分析及调试检测。
二、已知技术参数和条件
1、89C51系列单片机;
2、KEIL软件;Wave软件;
3、THKSCM-1型单片机实验系统。
三、任务和要求
课题内容:
学生在教师指导下,综合运用所学知识完成基于单片机的篮球比赛24秒计时器设计。
要求设计一个24秒计时电路,并具有时间显示的功能。
要求:
学生应通过课程设计巩固和加深扩大所学的理论知识,掌握单片机应用系统的硬件、软件及其接口的设计和调试方法,并根据调试结果,写出设计报告。
设计报告应包括任务书、器件选型及设计思路、软硬件设计过程说明、调试结果总结及分析等内容,并附电路原理图及程序清单。
1、设置外部操作开关,控制计数器的直接清零、启动和暂停/连续计时。
2、要求计时电路递减计时,每隔1秒钟,计时器减1。
3、当计时器减到0时,显示器上显示00,同时发出光电报警信号。
注:
1.此表由指导教师填写,经系、教研室审批,指导教师、学生签字后生效;
2.此表1式3份,学生、指导教师、教研室各1份。
四、参考资料和现有基础条件(包括实验室、主要仪器设备等)
1、单片机课程设计指导,北京航空航天大学出版社,楼然苗等2007年7月
2、单片机实验与实践教程,北京航空航天大学出版社,何立民等2004年7月
3、THKSCM-1型单片机实验系统实验指导书、KEIL软件,WAVE软件
4、数字控制与PLC实验室”THKSCM-1型单片机实验系统”。
五、进度安排
2010年6月13日-13日:
收集和课程设计有关的资料,熟悉课题任务何要求
2010年6月14日-16日:
总体方案设计
2010年6月17日-19日:
硬件电路设计
2010年6月20日-22日:
软件设计
2010年6月23日-23日:
系统调试改进
2010年6月23日-23日:
整理书写设计说明书
2010年6月24日-24日:
答辩并考核
六、教研室审批意见
教研室主任(签字):
年月日
七|、主管教学主任意见
主管主任(签字):
年月日
八、备注
指导教师(签字):
学生(签字):
周新
邵阳学院课程设计(论文)评阅表
学生姓名刘标学号0941201062
系电气工程系专业班级电气测控类09电本一班
题目名称基于单片机篮球比赛24秒计时器设计课程名称单片机原理及在电气测控学科中的应用
一、学生自我总结
本次课程设计是我到目前为止觉得最有意义也是收获最大的一次实习,可以说是有苦也有甜。
从通过理论设计,到确定具体方案,再到仿真软件仿真,最后到调试电路、显示结果,整个过程都需要我充分利用所学的知识进行思考、借鉴。
这次课程设计对以前学过的理论知识起到了很好的回顾作用,同时还弥补了之前对单片机知识的相关漏洞。
刚开始,我对课程设计是一无所知,就连按照硬件图来写汇编程序,都是一个很大的问题。
后来在刘丽老师的耐心指导下,我终于知道了如何使用Protues软件,以及如何用Word绘图工具栏来画流程图。
学生签名:
刘标2011年6月23日
二、指导教师评定
评分项目
平时成绩
论文
答辩
综合成绩
权重
30
40
30
单项成绩
指导教师评语:
指导教师(签名):
年月日
注:
1、本表是学生课程设计(论文)成绩评定的依据,装订在设计说明书(或论文)的“任务书”页后面;
2、表中的“评分项目”及“权重”根据各系的考核细则和评分标准确定。
目录
摘要I
1篮球计时器概述1
1.1篮球竞赛24秒计时器功能1
1.2篮球计时器实物图1
1.3主要参考器件2
1.4单片机的概述2
1.4.1AT89C51单片机简介2
1.4.2AT89C51单片机引脚功能简介2
2硬件设计4
2.1设计原理4
2.2硬件设计流程图4
2.2.1功能单元模块5
2.3硬件设计电路图7
3软件设计9
3.1程序流程图9
3.2程序设计10
3.3仿真及仿真结果13
4课程设计体会15
参考文献16
摘要
篮球比赛中除了有总时间倒计时外,为了加快比赛的节奏,新的规则还要求进攻方在24秒内有一次投篮动作,否则视为违例。
以下为一个篮球比赛计时器,该计时器采用按键操作、LED显示,非常实用。
此计时器也可作为其他球类比赛的计时器。
本课程设计介绍了一个基于单片机的篮球比赛计时器硬件设计,包括AT89C51、6个八段显示LED、上电复位电路、时钟发生电路等基本模块的设计。
其功能主要有:
一场篮球比赛共分四节,每节12分;每次进攻为24秒,计时器的显示均为倒计时方式,24秒计时用两位数码管显示;所有的计时都要具有暂停、继续、清零;当球员的持球时间超过24秒时,24秒倒计时减为零且有声光提示。
本次课程设计是采用单片机汇编语言实现倒计时24秒篮球比赛计时器。
关键词:
AT89C51;LED数码管;按键;模块
1篮球计时器概述
1.1篮球竞赛24秒计时器功能
随着信息时代的到来,电子技术在社会生活中发挥着越来越重要的作用,运用模电和数电知识设计的电子产品成为社会生活中不可缺少的一部分。
在篮球比赛中,规定了球员的持球时间不能超过24秒,否则就犯规了。
大多数篮球计时器的主控芯片为AT89C51,采用12MHz晶振,P0.0-P0.7作键盘输入。
24秒计时开始,A3为24S复位开启键(投篮或交换控球时按下此键);A4为24秒计时停止键(没有违例);A5为24秒计时同时启动键;A6为总计时和24S计时同时停止键。
而此次我们设计的是一个简易篮球比赛计时器。
最简单的篮球球计时器是24秒倒计时计时器。
也就是本次课程设计的课题。
24秒篮球计时器要求设置外部操作开关,控制计数器的直接清零、启动和暂停/并且计时电路递减计时,每隔1秒钟,计时器减1,当计时器减到0时,显示器上显示00,同时发出光电报警信号。
1.2篮球计时器实物图
图1.1篮球计时器实物图
上述图为篮球比赛定时器倒计时24秒实物图,它能显示24秒倒计时功能;系统设置外部操作开关,控制计时器的直接清零、启动和暂停功能;在直接清零时,数码管显示灭灯;计时器为24秒递减计时其计时间隔为1秒;计时器递减计时到零时,数码管显示器不灭灯,同时发出光电报警信号等。
1.3主要参考器件
AT89C51LED数码管光电报警器开关电阻导线等
1.4单片机的概述
1.4.1AT89C51单片机简介
单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
单片机的存储器ROM和RAM是严格区分的。
ROM称为程序存储器,只存放程序,固定常数,及数据表格。
RAM则为数据存储器,用作工作区及存放用户数据。
为满足控制需要,单片机有更强的逻辑控制能力,特别是单片机具有很强的位处理能力。
1.4.2AT89C51单片机引脚功能简介
AT89C51有40个引脚,各引脚功能如下所示:
(1)电源引脚Vcc和Vss
Vcc(电源端):
供电电压,为+5V。
Vss(GND):
接地端。
(2)输入/输出端口P0、P1、P2和P3
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在Flash编程时,P0口作为原码输入口,当Flash进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在Flash编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口在Flash编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
(3)振荡器特性
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
(4)芯片擦除:
在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
如图1.3所示为AT89C51结构框图在一小块芯片上,集成了一个微型计算机的各个组成部分。
以下即为上述的AT89C51芯片
图1.3AT89C51结构框图
2硬件设计
2.1设计原理
24秒计时器的总体参考方案框图如图2.1所示,它包括秒脉冲发生器、计数器、译码显示电路、报警电路和辅助时序控制电路等五个模块组成。
其中计数器和控制电路是系统的主要模块。
计数器完成24秒计时功能,而控制电路完成计数器的直接清零、启动技术、暂停/连续计数、译码显示电路的显示与灭灯、定时时间到报警等功能。
硬件电路图设计:
根据设计要求,要求要求设置外部操作开关,控制计数器的直接清零、启动和暂停。
所以,硬件设计框图包括AT89C51芯片、显示器、报警和按键四大模块。
系统硬件设计框图如图2.2所示
此计时器采用的设计采用模块化的结构,主要由以上几个部分组成,即计时模块、控制模块以及译码显示模块。
在设计此计时模块时,采用模块化的设计思想,使设计起来更加简单、方便、快捷。
一个完整的计算机应该由运算器、控制器、存储器和I/O接口组成。
运算器包括一个可进行8位算术运算和逻辑运算的单元ALU,8位的暂存器1、暂存器2,8位的累加器ACC,寄存器B和程序状态寄存器PSW等。
控制器包括程序计数器PC、指令寄存器IR、指令寄存器ID、振荡器及定时电路等。
存储器分为程序存储器(FlashROM)和数据存储器(RAM)。
另外,89C51有4个与外部交换信息的8位并行接口,即P0至P3。
它们都是准双向端口,每个端口各有8个I/O线,均可输入输出。
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。
在闲置模式下,CPU停止工作。
但RAM,定时器,计数器,串口和中断系统仍在工作。
在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
2.2.1功能单元模块
(1)键盘
控制模块是由键盘输入,键盘是一组按键的集合,它是最常见的单片机输入设备,是一种常开型按钮开关。
常态时,按键的两个触点处于断开状态,如图2.3所示,键盘分为编码键盘和非编码键盘,键盘上闭合键的识别由专门的硬件译码器实现,并产生键编号或键值的称为编码键盘,如BCD码键盘、ASCII码键盘等;靠软件识别的称为非编码键盘。
图2.3常开型按钮开关
(2)LED显示器
单片机中通常用7段LED构成字型“8”,另外,还有一个小数点发光二极管,以显示数字、符号及小数点。
这种显示器有共阴极和共阳极两种,此课程设计采用的是共阳极。
发光二极管的阳极连在一起的称为共阳极显示器,阴极连在一起的称为共阴极显示器。
一位显示器由8个发光二极管组成,其中,7个二极管构成字型“8”的各个笔画a~g,
另一个小数点为dp发光二极管。
图2.4LED显示器
另外,将多个LED显示块组合在一起就构成了多位LED显示器。
每个LED显示器的段引脚称为段选线,公共端称为位选线。
段选线控制显示的字符,位选线控制该LED的亮和灭。
按照显示器的工作方式不同,位选线和段选线的连接方法也不同。
LED显示器有静态显示和动态显示两种方式。
(3)报警器
报警探测器是由传感器和信号处理组成的,用来探测信号的,由电子和机械部件组成的装置,是报警系统的关键,而传感器又是报警探测器的核心元件。
采用不同原理的传感器件,可以构成不同种类、不同用途、达到不同探测目的的报警探测装置。
报警探测器的灵敏度和可靠性是相互影响的。
合理选择报警探测器的探测灵敏度和采用不同的抗外界干扰的措施,可以提高报警探测器性能。
采用不同的抗干扰措施,决定了报警探测器在不同环境下的使用性能。
了解各种报警探测器的性能和特点,根据不同使用环境,合理配置不同的报警探测器是防盗报警系统的关键环节。
它有报警主机、红外报警器、门磁探测器、烟雾探测器、燃气探测器、红外对射、遥控器、紧急按钮等组成。
探测器通过自己对周边物体的探测,和感应以及探测器自身的分离和接摸,自身产生一种感应信号,探测器把信号传给报警主机,报警主机通过自己的分析执行相应的报警功能。
在课程设计中,用到的是实验室的光电报警器。
光电报警器的驱动器的输入端接AT89C51的P1.0,当P1.0输出高电平时,会产生光电,实现报警。
(4)AT89C51芯片
芯片的的40个引脚及其功能在上述中已经介绍,以下是Proteus中的AT89C51芯片的示意图
图2.5Proteus软件中的AT89C51芯片
2.3硬件设计电路图
图2.6硬件设计电路图
设计思路:
选用AT89C51作为主控芯片,晶振是6KHz,机械周期为1ms,所以循环10次为1s。
P0口作为段码输出,P2.0、P2.1作为位控,高电平有效。
数码管是液晶显示,采用动态显示,两个串行口作为中断入口,高电平有效,启动T0定时器/计数器进行计数,低电平有效。
图2.2.1是系统硬件设计电路图一。
时间设置完后,启动定时器T0开始定时计数。
计时采用倒计时,比如:
设置的时间为24秒钟,则在LED上显示24两位数。
定时T0计数24秒后中断返回,继续定时计数下一个24秒;同时则在2位LED显示器上显示,表示时间已经过去1秒钟,即为23秒。
这样一直持续下去。
知道变为“00”时表示赛程结束。
如果比赛中裁判叫停,则只要按下键,即可暂停计时。
3软件设计
3.1程序流程图
根据设计要求,可分析并设计图3.2.1程序流程图,采用24秒倒计时,所以复位值为24秒,倒计时到0时,LED显示为00,开始判断,并报警。
开关A1控制复位,A2控制暂停,A3控制启动。
以下是篮球计时器24秒倒计时的程序流程图。
图3.1主程序流程图
3.2程序设计
根据以上流程图,可以用汇编语言编写出篮球计时器24秒倒计时程序,该程序包括主程序,中断程序,延时程序以及显示程序。
程序清单:
ORG0000H
SJMPMAIN
ORG000BH
LJMPT0_ISR
ORG0030H
MAIN:
MOVP0,#3FH;初始化赋值
MOVP1,#0FFH
MOVP2,#3FH
MOVR0,#00H
MOVR1,#24
MOVDPTR,#TAB
KEY:
JBP3.0,$;判断启动键是否按下
ACALLDELAY30MS
JNBP3.0,$
ACALLSTART
SJMPKEY;
START:
MOVTMOD,#01H;启动程序
MOVTH0,#0D8H
MOVTL0,#0EFH
SETBET0
SETBEA
SETBTR0
STOP:
JBP3.2,ZTJX;判断复位键是否程序
ACALLDELAY30MS
JNBP3.2,$
SJMPMAIN;复位程序
ZTJX:
JBP3.1,XS;判断暂停键是否按下
ACALLDELAY30MS
JNBP3.1,$
ZT:
CLRTR0;K2按下后暂停计数,并关中断
CLRET0
CLREA
JBP3.1,$;K2再次按下继续计数
ACALLDELAY30MS
JNBP3.1,$
JX:
SETBET0;第二次按下暂停键后继续倒计时(继续启动)
SETBEA
SETBTR0
XS:
MOVA,R1;显示子程序
MOVB,#10
DIVAB
MOVCA,@A+DPTR
MOVP0,A;显示秒十位
MOVA,B
MOVCA,@A+DPTR
MOVP2,A;显示秒个位
CJNER0,#100,STOP;1S时间到否,未到直接转数码管显示
MOVR0,#00H;1S时间到,R0重赋初值
MOVA,R1;R1减1,不为0转数码管显示,为0则重新开始
CLRC
SUBBA,#1
MOVR1,A
JNCSTOP;计数未到0继续判断暂停键和停止键
MOVR1,#24;计数到0停止计数并关中断,
CLRET0
CLREA
CLRTR0
SJMPSND;跳到报警程序
SJMPKEY;跳回开始检测启动键
RET
DELAY30MS:
MOVR6,#150;延时程序子程序
AAA:
MOVR7,#100
DJNZR7,$
DJNZR6,AAA
RET
T0_ISR:
CLRTR0;中断程序子程序
MOVTH0,#0D8H
MOVTL0,#0EFH
INCR0
SETBTR0
RETI
SND:
CLRP1.0;报警程序子程序(红色发光二极管亮一下就灭)
MOVR7,#0FFH
DL:
MOVR6,#0FFH
DL1:
DJNZR6,DL1
DJNZR7,DL
SETBP1.0
RET
TAB:
DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
END
3.3仿真及仿真结果
软件硬件联合仿真系统由一个硬件执行环境和一个软件执行环境组成,通常软件环境和硬件环境都有自己的除错和控制界面,Keil与Proteus的整合调试可以实现系统的总调,在该系统中,Keil作为软件调试界面,Proteus作为硬件仿真和调试界面。
24秒篮球计时器设置外部操作开关,控制计数器的直接清零、启动和暂停/并且计时电路递减计时,每隔1秒钟,计时器减1,当计时器减到0时,显示器上显示00,同时发出光电报警信号。
编好程序,并对其进行编译连接之后,按照上面的步骤,通过Proteus进行仿真,能够进行24秒的倒计时,复位值是24,然后显示23、22、…、18、17、…、09、08、…、01、00。
显示00后,暂停后复位。
仿真结果分析
通过在Protues中仿真,按下复位键(开启键),显示器显示24,然后自动显示23、22…,当计时到21秒时,按下暂停,显示器锁定在21,当再按启动键时,又开始倒计时,直到显示00,开始报警,按下复位键,又回到了24。
整个仿真过程按要求显示,以下为仿真结果图
图3.224秒显示
图3.323秒显示
4课程设计体会
本次课程设计是我到目前为止觉得最有意义也是收获最大的一次实习,可以说是有苦也有甜。
身为电气工程系的学生,设计是我们将来必须的技能。
而这次课程设计恰恰给我们提供了一个应用自己所学知识的平台。
从通过理论设计,到确定具体方案,再到仿真软件仿真,最后到调试电路、显示结果。
整个过程都需要我充分利用所学的知识进行思考、借鉴。
可以说,本次课程设计是针对前面所学知识进行的一次比较综合的检验。
总的来说,这次课程设计虽然很累,但非常充实。
在这次实习中,正确的思路是很重要的,只要设计思路是正确的,那么才有可能成功。
因此我们在设计前必须做好充分的准备,认真查找详细的资料,为我们设计的成功打下坚实的基础。
如果说前面的电路的理论设计是多么令人头痛的事,那么安装、调试过程则是一个考验人的耐心的过程,对电路的安装、分析调试要一步一步来,不能急躁。
这次课程设计对以前学过的理论知识起到了很好的回顾作用,同时还弥补了之前对单片机知识的相关漏洞。
刚开始,我对课程设计是一无所知,就连按照硬件图来写汇编程序,都是一个很大的问题。
后来在杨波老师的耐心指导下,我终于知道了如何使用Proteus软件,以及如何用visio绘图工具栏来画流程图。
在设计过程中,遇到了很多疑难点,通过组员的讨论,并在教师指导下,综合运用所学知识,最终完成基于单片机的篮球比赛计时器设计。
是一个24秒计时电路,并具有时间显示的功能。
当然,要做好本次的课程设计,熟练地掌握课本上的理论知识是前提。
而且这次的课程设计老师在验收时还要求学生进行现场操作,答辩。
这就更加促进了我们去认真的去完成这次课程设计,同时也只有这样才能督促学生对设计中出现的问题进行一定的分析和调试。
虽然这次课程设计过程中我们遇到了很多