毕业设计篮球场计时计分器的设计说明.docx
《毕业设计篮球场计时计分器的设计说明.docx》由会员分享,可在线阅读,更多相关《毕业设计篮球场计时计分器的设计说明.docx(27页珍藏版)》请在冰豆网上搜索。
![毕业设计篮球场计时计分器的设计说明.docx](https://file1.bdocx.com/fileroot1/2023-1/26/63bf5202-aaae-40f4-9cfd-c5c0db6af3c8/63bf5202-aaae-40f4-9cfd-c5c0db6af3c81.gif)
毕业设计篮球场计时计分器的设计说明
毕业设计(论文)
篮球比赛计时计分器的设计
Thedesignofbasketballgametimeandscoring
班级电气自动化092班
学生杰学号930706036
指导教师周天沛职称讲师
导师单位工业职业技术学院
论文提交日期2011年11月18日
工业职业技术学院
毕业设计(论文)任务书
课题名称篮球比赛计时计分器的设计
课题性质 设计制作类
班级 电气自动化092班
学生杰
学号 930706036
指导教师 周天沛
导师职称讲师
一.选题意义与背景
篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统。
篮球比赛的计时计分系统由计时器,计分器等多种电子设备组成,同时,根据目前高水平篮球比赛要求,完善的篮球比赛计时计分系统设备应能够与现场成绩处理,现场大屏幕,电视转播车等多种设备相联,以便实现高比赛现场感,表演娱乐观众等功能目标。
二.毕业设计(论文)主要容:
任务:
设计一个用于赛场的篮球计时计分器。
要求:
1、能记录整个赛程的比赛时间,并能修改比赛时间。
2、能随时刷新甲、乙两队在整个过程中的比分。
3、比赛结束时,能发出报警声。
其中硬件部分包括键盘和显示器接口电路的设计。
软件部分利用单片机编程软件编写程序,并利用protest软件进行调试,完成毕业论文。
预期成果为设计实物一件,提交毕业设计论文一篇。
三.计划进度:
第8周查阅资料、选型对比调研,初步确定控制电路的总体设计。
第8-10周完成硬件线路设计与元器件的选型。
第11周单片机软件程序的编写。
第12周调试系统达到设计要求,并完成毕业论文。
第13周答辩。
四.毕业设计(论文)结束应提交的材料:
1、论文一篇(8000字以上)
2、实物一件
指导教师教研室主任
年月日年月日
论文真实性承诺与指导教师声明
学生论文真实性承诺
本人重声明:
所提交的作品是本人在指导教师的指导下,独立进行研究工作所取得的成果,容真实可靠,不存在抄袭、造假等学术不端行为。
除文中已经注明引用的容外,本论文不含其他个人或集体已经发表或撰写过的研究成果。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
如被发现论文中存在抄袭、造假等学术不端行为,本人愿承担本声明的法律责任和一切后果。
毕业生签名:
日期:
指导教师关于学生论文真实性审核的声明
本人重声明:
已经对学生论文所涉与的容进行严格审核,确定其容均由学生在本人指导下取得,对他人论文与成果的引用已经明确注明,不存在抄袭等学术不端行为。
指导教师签名:
日期:
工业职业技术学院毕业设计(论文)指导教师评阅表
学号
930706036
学生
杰
论文成绩
系部
机电工程学院
专业
电气自动化
班级
电气自动化092班
导师
周天沛
职称
讲师
题目
篮球比赛计时计分器的设计
指导教师评语
(包含对论文的性质、难度、份量、学生实际完成情况,论文撰写格式、学生学术道德等方面的评价,是否同意答辩等)
指导教师签名:
年月日
摘要
单片机,亦称单片微电脑或单片微型计算机。
它是把中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出端口(I/O)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。
本设计是基于AT89C51单片机的篮球计时计分器,利用7段共阳LED作为显示器件。
在此设计中共接入了1个四位一体7段共阳LED显示器,4个7段共阳LED显示器,前者用来记录赛程时间,其中2位用于显示分钟,2位用于显示秒钟,后者用于记录甲乙队的分数,每队2个LED显示器显示围可达到0~99分。
赛程计时采用倒计时方式,比赛开始时启动计时,直至计时到零为止。
其次,为了配合计时器和计分器校正调整时间和比分,我们特定在本设计中设立了5个按键,用于调整分数和暂停等功能。
采用单片机控制是这个系统按键操作使用简洁,LED显示,安装方便。
关键词:
AT89C51; LED显示;计时计分器
Abstract
Itisacentralprocessor(CPU),randomaccessmemory(RAM),read-onlymemory(ROM),input/output(I/O)andothermajorcomputercomponentsareintegratedonasingleintegratedcircuitchip.ThedesignisbasedontheAT89S51single-chipBasketball-timepoints,theuseof7totalLEDas.Inthisdesigntheaccess1fourinoneof7sectionsofatotalofLEDdisplay,47totalLEDdisplay,theformerisusedtorecordtheracetime,2ofthemfortheshowminutes,2fordisplayingtheseconds,thelatterisusedforrecordingtheBteamscore,eachteamof2LEDdisplayareacanreach0~99branch.Scheduleatimewiththecountdown,matchtostartthebeginningoftime,untilthetimetozero,inordertocooperatewiththetimerandthescoringdevicecalibrationtimeandscore,wespecifiedinthedesignoftheestablishmentof5keys,usedforadjustingthescoreandpausefunction.Usingsinglechipmicrocomputercontrolsystemisthekeyoperationusingasimple,LEDdisplay,convenientinstallation.
Keywords:
AT89S51; LED;Timebasketballscoringsystem
第一章绪论
1.1课题背景
篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统。
篮球比赛的计时计分系统由计时器,计分器等多种电子设备组成,同时,根据目前高水平篮球比赛要求,完善的篮球比赛计时计分系统设备应能够与现场成绩处理,现场大屏幕,电视转播车等多种设备相联,以便实现高比赛现场感,表演娱乐观众等功能目标。
1.2本课题研究的主要容
这次毕业设计的主要任务是:
设计制作一个用于赛场的篮球赛计时计分器。
主要功能如下:
1、能记录整个赛程的比赛时间,并能修改比赛时间、暂停比赛时间。
2、能随时刷新甲、乙两队在整个赛程中的比分。
3、中场交换比赛场地时,能交换甲、乙两队比分的位置。
4、比赛时间结束时,能发出报警指令。
第2章单片机基本组成与工作原理
2.1单片机的基本组成
MCS-51是指由美国INTEL公司生产的一系列单片机的总称,这一系列单片机包括了很多品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,而8031是前些年在我国最流行的单片机,所以很多场合会看到8031的名称。
INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求,其中89C51就是这几年在我国非常流行的单片机,它是由美国ATMEL公司开发生产的。
AT89C51是一个低电压,高性能CMOS8位单片机,片含4kbytes的可反复擦写的Flash只读程序存储器和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,置功能强大的微型计算机的AT89C51提供了高性价比的解决方案。
AT89C51具有PDIP、PQFP/TQFP与PLCC等三种封装形式,以适应不同产品的需求。
它是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
AT89C51单片机主要由中央处理器,控制器,存储器,I/O接口,定时器/计数器,中断控制系统,部总线等部分组成。
图1为C51单片机管脚结构图。
图2是AT89C51单片机的部结构示意图。
它包含了作为微型计算机所必需的基本功能部件,各功能部件通过片单一总线连成一个整体,集成在一块芯片上。
C51单片机是在一块芯片中集成了CPU、存储器(包括RAM和ROM)、定时器/计数器和多种功能的I/O线等一台计算机所需要的基本功能部件.主要包括1个8位CPU、1个片振荡器与时钟电路、128BRAM、4KBROM、2个16位定时器/计数器、32条可编程的I/O线和一个可编程的全双工串行接口、5个中断源、2个中断优先级嵌套中断结构。
AT89C51的主要特性:
与MCS-51兼容
4K字节可编程FLASH存储器
寿命:
1000写/擦循环
数据保留时间:
10年
全静态工作:
0Hz-24MHz
三级程序存储器锁定
128×8位部RAM
32可编程I/O线
两个16位定时器/计数器
5个中断源
可编程串行通道
低功耗的闲置和掉电模式
片振荡器和时钟电路
AT89C51管脚说明:
VCC(40):
供电电压,接±5V的电压。
GND(20):
接地。
P0口(39~32):
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P0口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口(1~8):
P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口(21~27):
P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口(10~17):
P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
P3口管脚备选功能:
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST(9):
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG(30):
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN(29):
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP(31):
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有部程序存储器。
注意加密方式1时,/EA将部锁定为RESET;当/EA端保持高电平时,此间部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1(19):
反向振荡放大器的输入与部时钟工作电路的输入。
XTAL2(18):
来自反向振荡器的输出。
图1AT89C51引脚结构
图289C51单片机部结构
2.2单片机外围附加电路
2.2.1时钟电路
时钟电路在单片机系统中起着非常重要的作用,是保证系统正常工作的基础。
在一个单片机应用系统中,时钟是保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢。
为达到振荡周期是12MHZ的要求,这里要采用12MHZ的晶振,另外有两个22P的独立电容,两晶振引脚分别连到XTAL1和XTAL2振荡脉冲输入引脚。
如图3所示。
图3时钟电路
XTAL1(19脚):
芯片部振荡电路输入端。
XTAL2(18脚):
芯片部振荡电路输出端。
XTAL1和XTAL2是独立的输入和输出反相放大器,它们可以被配置为使用石英晶振的片振荡器,或者是器件直接由外部时钟驱动。
图3中采用的是时钟模式,即采用利用芯片部的振荡电路,在XTAL1、XTAL2的引脚上外接定时元件(一个石英晶体和两个电容),部振荡器便能产生自激振荡。
一般来说晶振可以在1.2~12MHz之间任选,甚至可以达到24MHz或者更高,但是频率越高功耗也就越大。
2.2.2复位电路
单片机在开机时或在工作中因干扰而使程序失控,或工作中程序处于某种死循环状态,在这种情况下都需要复位。
复位的作用是使中央处理器CPU以与其他功能部件都恢复到一个确定的初始状态,并从这个状态重新开始工作。
89C51单片机的复位靠外部电路实现,信号由RESET(RST)引脚输入,高电平有效,在振荡器工作时,只要保持RST引脚高电平两个机器周期,单片机即复位。
复位后,PC程序计数器的容为0000H。
片RAM中容不变。
复位电路一般有上电复位、手动开关复位和自动复位电路3种。
51单片机高电平复位。
以当前使用较多的AT89系列单片机来说,,在复位脚加高电平2个机器周期(即24个振荡周期)可使单片机复位。
复位后,主要特征是各IO口呈现高电平,程序计数器从零开始执行程序。
复位方式有两种。
1.手动复位:
按钮按下,复位脚得到VCC的高电平,单片机复位,按钮松开后,单片机开始工作。
2.上电复位:
上电后,电容电压不能突变,VCC通过复位电容(10μF电解)给单片机复位脚施加高电平5V,同时,通过10KΩ电阻向电容器反向充电,使复位脚电压逐渐降低。
经一定时间后(约10毫秒)复位脚变为0V,单片机开始工作。
如图4所示。
我们采用手动复位方式。
图4复位电路
第3章篮球比赛计时计分器硬件电路的设计
3.1主电路图
计分电路
计时电路
3.2LED显示电路
计算机的运行结果和运行状态可以通过显示器显示出来。
单片机应用系统中
常用的显示器有LED和LCD两种方式。
LED显示最为普遍,发光二极管LED(LightEmittingDiode)是一种通电后能发光的半导体器件,其导电性质与普通二极管类似。
LED数码显示器就是由发光二极管组合而成的一种新型显示器件,但是由于低功耗的要求,LCD显示器越来越被广泛地使用。
LED数码管显示器是由若干个发光二极管组成的,当发光二极管导通时,相应的点或线段发光,将这些发光二极管排成一定的图形,控制不同组合的二极管导通,就可以显示出不同的字形和符号。
单片机系统中常用的LED显示器为七段显示器,再加上一个小数点,因此也可以把它称之为八段数码管显示器。
其机构形式有共阴极和共阳极两种。
共阴极是把所有组成八段数码管的发光二极管的阴极连在一起,通常接地,通过控制每一只发光二极管的阳极电平来使其发光或熄灭,阳极为高电平则发光,阳极为低电平则熄灭;共阳极是把组成八段数码管的所有发光二极管的阳极连起来,通常为高电平(如+5V),通过控制每一只发光二极管的阴极电平的高低来使其发光或是熄灭,阴极为低电平发光,为高电平则熄灭。
图中的com端在应用的时候可以作为位选端,8只发光二极管被分成两组所以有两个com端,在使用的时候它们并联起来。
七段数码管示意图
字型
共阳极段码
共阴极段码
字型
共阳极段码
共阴极段码
0
C0H
3FH
9
90H
6FH
1
F9H
06H
A
88H
77H
2
A4H
5BH
B
83H
7CH
3
B0H
4FH
C
C6H
39H
4
99H
66H
D
A1H
5EH
5
92H
6DH
E
86H
79H
6
82H
7DH
F
84H
71H
7
F8H
07H
空白
FFH
00H
8
80H
7FH
P
8CH
73H
附:
段码表
3.3元器件清单
名称
电路板
导线
电解电容
单片机
石英晶体振荡器
电容
七段共阳数码管
电阻
按钮
规格
47μF
AT89C51
12MHZ
30μF
220Ω
数量
1
若干
2
1
2
4
5
6
6
第4章篮球比赛计时计分器软件程序的设计
4.1主程序流程图
1.倒计时流程图:
Y
N
Y
N
2.计分程序流程图:
Y
N
N
Y
4.2汇编语言程序
汇编语言是和机器密切相关的,是面向机器的语言。
其主要优点是占用资源少、程序执行效率高。
但是不同的CPU,其汇编语言可能有所差异,所以不易移植。
C语言是一种结构化的高级语言,其优点是可读性好,移植容易,是普遍使用的一种计算机语言。
缺点是占用资源较多,执行效率没有汇编高。
该系统软件全部采用汇编语言编写,汇编语言有三种基本结构:
顺序结构、选择结构、和循环结构。
1.顺序结构
它是一种最基本的、最简单的编程结构。
在这种结构中,程序由低地址向高地址顺序执行指令程序。
2.分支结构
分支程序结构可以分为两种形式,如图所示。
分支程序结构
它们分别相当于高级语言中的IF-THEN-ELSE语句和CASE语句,根据不同条件做不同的处理。
在分支结构中,程序首先对一个条件语句进行测试。
当条件为真时,执行一个方向的程序,当条件为假时,执行另一个方向的程序。
T代表条件,当T条件成立是,执行A操作,否则执行B操作。
倒计时:
MOVR0,#00H
MOVR1,#00H
MOVR2,#01H
LOOP1:
ACALLDISPLAY
P1.0,LOOP1
ACALLDELAY1
P1.0,LOOP1
MOVR0,#00H
MOVR1,#00H
MOVR2,#01H
SETBP1.2
CLRP1.3
ACALLDISPLAY
LOOP12:
P1.1,LOOP13
;ACALLDELAY1
;P1.1,LOOP13
LOOP14:
P1.0,LOOP14
ACALLDELAY1
P1.0,LOOP14
SJMPLOOP13
LOOP13:
CJNER2,#00,LOOP4
CJNER1,#00,LOOP5
CJNER0,#00,LOOP6
CLRP1.2
SETBP1.3
MOVR2,#00H
MOVR1,#00H
MOVR0,#00H
ACALLDISPLAY
LJMPLOOP1
LOOP5:
CJNER0,#00,LOOP7
DECR1
MOVR0,#09H
LOOP3:
ACALLDELAY
ACALLDISPLAY
LJMPLOOP12
LOOP6:
DECR0
LJMPLOOP3
LOOP7:
DECR0
LJMPLOOP3
LOOP4:
CJNER1,#00,LOOP8
CJNER0,#00,LOOP9
DECR2
MOVR1,#05H
MOVR0,#09H
LJMPLOOP3
LOOP9:
DECR0
LJMPLOOP3
LOOP8:
CJNER0,#00,LOOP10
DECR1
MOVR0,#09H
LJMPLOOP3
LOOP10:
DECR0
LJMPLOOP3
DELAY:
MOVR5,#200
D1:
MOVR6,#10
D2:
MOVR7,#250
D3:
DJNZR7,D3
DJNZR6,D2
DJNZR5,D1
RET
DELAY1:
MOVR3,#100
D4:
MOVR4,#100
D5:
DJNZR4,D5
DJNZR3,D4
RET
DISPLAY:
MOVA,R0
MOVDPTR,#TAB
M