基于单片机的篮球记分器设计说明.docx

上传人:b****7 文档编号:16546154 上传时间:2023-07-14 格式:DOCX 页数:35 大小:394.16KB
下载 相关 举报
基于单片机的篮球记分器设计说明.docx_第1页
第1页 / 共35页
基于单片机的篮球记分器设计说明.docx_第2页
第2页 / 共35页
基于单片机的篮球记分器设计说明.docx_第3页
第3页 / 共35页
基于单片机的篮球记分器设计说明.docx_第4页
第4页 / 共35页
基于单片机的篮球记分器设计说明.docx_第5页
第5页 / 共35页
基于单片机的篮球记分器设计说明.docx_第6页
第6页 / 共35页
基于单片机的篮球记分器设计说明.docx_第7页
第7页 / 共35页
基于单片机的篮球记分器设计说明.docx_第8页
第8页 / 共35页
基于单片机的篮球记分器设计说明.docx_第9页
第9页 / 共35页
基于单片机的篮球记分器设计说明.docx_第10页
第10页 / 共35页
基于单片机的篮球记分器设计说明.docx_第11页
第11页 / 共35页
基于单片机的篮球记分器设计说明.docx_第12页
第12页 / 共35页
基于单片机的篮球记分器设计说明.docx_第13页
第13页 / 共35页
基于单片机的篮球记分器设计说明.docx_第14页
第14页 / 共35页
基于单片机的篮球记分器设计说明.docx_第15页
第15页 / 共35页
基于单片机的篮球记分器设计说明.docx_第16页
第16页 / 共35页
基于单片机的篮球记分器设计说明.docx_第17页
第17页 / 共35页
基于单片机的篮球记分器设计说明.docx_第18页
第18页 / 共35页
基于单片机的篮球记分器设计说明.docx_第19页
第19页 / 共35页
基于单片机的篮球记分器设计说明.docx_第20页
第20页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机的篮球记分器设计说明.docx

《基于单片机的篮球记分器设计说明.docx》由会员分享,可在线阅读,更多相关《基于单片机的篮球记分器设计说明.docx(35页珍藏版)》请在冰点文库上搜索。

基于单片机的篮球记分器设计说明.docx

基于单片机的篮球记分器设计说明

学号:

9

中州大学毕业设计

 

设计题目:

基于单片机的篮球计分器的设计

 

学院:

工程技术学院

专业:

机电一体化对口班级二班

姓名:

周康

指导教师:

娣丽

日期:

2013年4月22日

诚信声明

 

本人重声明:

所提交的毕业设计(论文)是本人在指导教师的指导下,独立工作所取得的成果并撰写完成的,重确认没有剽窃、抄袭等违反学术道德、学术规的侵权行为。

文中除已经标注引用的容外,不包含其他人或集体已经发表或撰写过的研究成果。

对本文的研究做出重要贡献的个人和集体,均已在文中作了明确的说明并表示了意。

本人完全意识到本声明的法律后果由本人承担。

毕业设计(论文)作者签名:

指导导师签名:

签字日期:

签字日期:

 

毕业设计任务书

班级:

学生:

学号

设计题目:

设计容及要求:

1)设计一款显示篮球比分的记分牌;

2)通过加分按钮可以给A队,或B队加分;

3)设计对调功能,更换场地后,AB队分数互换;

4)计时:

能实现0~99分和0~59秒任意调整,具有启动、暂停、复位功能;

5)秒计时:

能实现0~99秒任意调整,具有启动、暂停、复位功能;

6)增加局数比分功能;

7)增加比赛时间倒计时功能;

8)报警:

0~99秒违例自动声、光报警:

0~99分终场自动声响;

9)可实现A、B两队暂停次数和犯规的显示和任意加减;

 

指导老师(签字):

年月日

摘要:

本设计是采用单片机AT89C51作为本设计的核心元件。

利用7段共阴LED作为显示器件。

在此设计中共接入了8个7段共阴LED显示器,其中4个用于记录AB队的分数,每队2个LED显示器显示围可达到0~99分,足够满足赛程需要,另外4个LED显示器则用来记录赛程时间,其中2个用于显示分钟,2个用于显示秒钟。

赛程计时采用倒计时方式。

即比赛前将时间设置好,比赛开始时启动计时,直至计时到零为止。

计时围可达到0~99分钟,也完全满足实际赛程的需要。

当比赛队A队得1分时,按下A+1键;得2分时,按下A+2键;得3分时,按下A+3键;当加分出现错误时,可以按A-1键减1分,可以达到调整分数的作用;依照同样的方法可以记录B队的得分。

采用单片机控制使这个系统按键操作使用简洁,LED显示,安装方便。

解决了篮球比赛计分器的安装问题,节约了线材,适合在各种规模的体育场馆使用,完全可以代替传统的用钟表进行计时的方法,当然稍加改动也可以用于其他球类比赛,是体育器材向智能化发展的一个实例。

 

关键词:

单片机篮球计分器数码管

 

序言

51系列单片机有许多制造商,而国产宏晶科技的STC系列单片机使用更为方便,可有效减少外隔器件的数量,并支持ISP功

能,可通过串口下载用户应用程序,数秒就可完成一片。

数码管和键盘驱动电路可以使用逻辑电路搭建,但这种方法用到的器件多,

造成接口的浪费,使电路的抗干扰能力弱,不便于使用。

沁恒公司的数码管、键盘驱动芯片AT89C5I有效地解决了这个问题,既减少了器件数目,又提供了相应电路的许多常用功能,便于编程实现。

通过采用以上两种芯片,大大简化r没汁,既方便了后续程序的

程序开发,也很好地控制了成本

 

一.设计的基本步骤及方案...................................6

1.AT89C51简介.........................................6

2.数码管显示原理........................................6

3.总体方案..............................................8

二.硬件电路设计及描述......................................9

1.硬件原理电路图........................................9

2.硬件电路设计及描述...................................10

三.软件设计思想及流程图....................................11

1.主流程图..............................................11

2.记分流程图............................................12

3.时间中断流程图.........................................13

4.源程序代码见附录一.....................................16

四.硬软件的调试过程及调试方法.............................16

五.课程设计心得体会.......................................18

附录一源程序代码..........................................19

六.参考文献.................................................29

 

一.设计的基本步骤及方案

1.AT89C51简介

单片机是在一块芯片中集成了CPU、RAM、ROM、定时/计数器和多功能I/O口等计算机所需要的基本部件的大规模集成电路。

其以体积小、功能全、性价比高等诸多优点而独具特色,在工业控制、尖端武器、通信设备、家用电器等嵌入式应用领域中独占鳌头。

如果说C语言程序设计课程设计软件设计的基础课,那么单片机以其系统硬件构架完整、价格低廉、学生能动手等特点,成为工科学生硬件设计基础课。

2.数码管显示原理

数码管实际上是由7个发光管组成8字形构成的,加上小数点就是8个。

我们分别把他命名为A,B,C,D,E,F,G,H。

 

图1数码管部结构图

假设我们要显示一个数字2,那么A、B、G、E、D这5个段的发光管亮就可以了,C、F、H不亮,同时由于接法为共阴接法,那么为高电平是亮,低电平是灭。

从高往低排列,P1.7-P1.0写成二进制为01011011,把他转化为16进制则为5BH。

我们可以根据硬件的接线把数码管显示数字编制成一个表格,见下表,以后直接调用就行了。

数码管的接口有静态接口和动态接口两种。

静态接口为固定显示方式,无闪烁,其电路可采用一个并行口接一个数码管,数码管的公共端按共阴接GND,本次课程设计由于所需数码管不多,故可用些种方法接线。

这种接法占用接口多,仅能接少量数码管。

动态接口采用各数码管循环轮流显示的方法,当循环显示的频率较高时,利用人眼的暂留特性,看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出,另一接口完成各数码管的轮流点亮。

多位一体的数码管原理和单个的差不多。

表2共阴极数码管显示

显示

P1.7

小数点

P1.6

G

P1.5小F

P1.4

E

P1.3

D

P1.2

C

P1.1

B

P1.0

A

HE代码

0

0

0

1

1

1

1

1

1

3FH

1

0

0

0

0

0

1

1

0

06H

2

0

1

0

1

1

0

1

1

5BH

3

0

1

0

0

1

1

1

1

4FH

4

0

1

1

0

0

1

1

0

66H

5

0

1

1

0

1

1

0

1

6DH

6

0

1

1

1

1

1

0

1

7DH

7

0

0

0

0

0

1

1

1

07H

8

0

1

1

1

1

1

1

1

7FH

9

0

1

1

0

1

1

1

1

6FH

3.总体方案:

基于单片机系统的篮球赛计时计分器的系统构成图如下图所示:

 

 

图3系统结构图

本系统采用单片机AT89C51作为AT89C51本设计的核心元件。

利用7段共阴LED作为显示器件。

在此设计中共接入了8个7段共阴LED显示器,其中4个用于记录AB队的分数,每队2个LED显示器显示围可达到0~99分,足够满足赛程需要,另外4个LED显示器则用来记录赛程时间,其中2个用于显示分钟,2个用于显示秒钟。

赛程计时采用到计时方式。

即比赛前将时间设置好,比赛开始时启动计时,直至计时到零为止。

计时围可达到0~99分钟,也完全满足实际赛程的需要。

其次,为了配合计时器和计分器校正调整时间和比分,我们特定在本设计中设立了11个按键,其中8个用于设置,交换场地,启动和暂停等功能。

 

二.硬件电路设计及描述

1.硬件原理电路

系统硬件图如下图4所示:

记分图如下图5所示:

计时图如下图6所示:

2.硬件电路设计及描述

硬件部分的设计是整个设计中的一个重要部分。

在进行硬件部分设计时,首先要确定元器件,并且知道这些器件的工作原理和功能。

然后才可以进行设计。

本设计的硬件电路包括两部分:

计时电路、计分电路。

硬件电部分的设计除了硬件电路的设计,还包括PCB板的绘制。

 

三.软件思想及流程

1.主流程图8:

2.记分流程图9:

比分显示程序:

DISPF:

MOVR0,#34H

MOVR3,#7FH

MOVA,R3

PLAYF:

MOVP2,A

MOVA,R0

MOVDPTR,#DSEG1

MOVCA,A+DPTR

MOVP0,A

LCALLDL1

MOVP2,#0FFH

MOVA,R3

RRA

JNBACC.3,LD1

INCR0

MOVR3,A

LJMPPLAYF

AJMPLD1

键盘扫描子程序

3.时间中断流程图10

时间中断程序:

TIME:

PUSHACC

PUSHPSW

MOVTH0,#0D8H

MOVTL0,#0F0H

DJNZR2,RET0

MOVR2,#64H

MOVA,20H

CLRC

DECA

MOV20H,A

MOVA,21H

CJNEA,#00H,PFF;;;;;;;;;非0分跳转;;;;;;;;;;;;;;;;;

MOVA,20H

CJNEA,#00H,PFF;;;;;;;;;非0分0秒情况跳转;;;;;;;;;;

CLRTR0;;;;;;;;;比赛结束停止计时;;;;;;;;;;

MOV20H,#00H

MOV21H,#00H

MOV32H,#00H

MOV33H,#00H

LCALLMINGYIN

MOV21H,26H

MOV30H,#00H

MOV31H,#00H

MOV32H,24H

MOV33H,25H

LJMPRET0

PFF:

MOVA,20H

CJNEA,#0FFH,OUT

MOV20H,#59;

MOV30H,#09H

MOV31H,#05H

MOVA,21H

DECA

MOV21H,A

OUT:

MOVA,20H

MOVB,#0AH

DIVAB

MOV30H,B

MOV31H,A

MOVA,21H

MOVB,#0AH

DIVAB

MOV32H,B

MOV33H,A

RET0:

POPPSW

POPACC

RETI

YANSHI:

PUSHACC;定时器1中断

PUSHPSW

MOVTH1,#0D8H

MOVTL1,#0F0H

DJNZR2,RET1

MOVR2,#64H

DJNZ39H,RET1

MOV39H,#03H;TIANHEIHEI

MOVR2,#64H

CLRTR1

CLRP3.6

RET1:

POPPSW

POPACC

RETI

时间显示程序:

DISPT:

MOVR0,#30H

MOVR3,#0F7H

MOVA,R3

PLAYT:

MOVP2,A

MOVA,R0

MOVDPTR,#DSEG1

MOVCA,A+DPTR

MOVP0,A

LCALLDL1

MOVP2,#0FFH

MOVA,R3

RRA

JNBACC.7,LD1

INCR0

MOVR3,A

LJMPPLAYT

LD1:

RET

4.源程序代码见附录一

四.硬软件的调试过程及调试方法

1.进入比赛,先设置时间为一节或者半场。

默认是12分钟(按下“A+1”进行分钟加1,按下“A-1”进行分钟减1),如图11

图11

2.按下“K1”开始比赛或者暂停,如图12

3.上面的液晶显示为计时显示。

下面的液晶显示为分数显示“左侧为攻左半场的队的分数,右侧为攻右半场的对的分数。

”换场后依然如此。

4.按下“K2”交换场地,重新计时。

5.A+1,A+2,A+3,A-1,B+1,B+2,B+3,B-1进行两队分数调整

五.课程设计心得体会

俗话说:

好的开始是成功的一半。

说起课程设计,最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己感兴趣的题目。

其次,老师对课程设计的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍。

最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。

本次设计,我查阅了相关书籍,做好各项准备后才开始进行设计,本次设计测试结果以及不足之处:

计时电路可完成倒计时、暂停、继续等功能,在比赛时间到后可进行报警。

记分电路工作正常,可完成对比分的刷新与暂存。

但在测试过程中发现,在比赛上半场时间到后,不能进行比分的交换。

进行分析后得出结论如下:

系统电路部分设计没有原则性的错误,在制版的过程中注意了走线,因此硬件部分功能完好。

但因为软件系统编写方面的疏忽,在比分交换及计时部分没有能很好的实现。

除此之外,软件达到了系统的要求。

通过课程设计,发现了我们的很多不足,我们知识的很多漏洞,看到了我们的实践经验还是比较缺乏,理论联系实际的能力还急需提高。

在这个过程中,我们也曾经因为实践经验的缺乏失落过,也曾经仿真成功而热情高涨。

通过单片机课程设计,我们加深了对单片机理论的理解,学回了怎样将理论很好地应用到实际当中去,而且我们还学会了如何去培养我们的不畏困难的挑战精神,从而不断地战胜自己,超越自己,我们在这一设计过程中,学会了坚持不懈,不轻易言弃。

设计过程,也好比是我们人类成长的历程,常有一些不如意,也许这就是在对我们提出了挑战,勇敢过,也战胜了,胜利的钟声也就一定会为我们而敲响。

此次课程设计充分锻炼了我们的设计能力和团队合作能力,给我们注入了一些全新的认识,为我们以后的设计和实验奠定了基础,也为引导我们以理论结合实践起到重要意义。

 

附录一:

源程序代码

ORG0000H

LJMPMAIN

ORG0003H

LJMPCHANGE

ORG000BH

LJMPTIME

ORG0013H

LJMPTIAOSHI

ORG001BH

LJMPYANSHI

MAIN:

MOVSP,#50H

MOVTCON,#04H

MOV20H,#00H;秒

MOV21H,#0CH;分

MOV22H,#00H;;;;;;;;;A队分数;;;;;;;;;;;;;;;;;

MOV23H,#00H;;;;;;;;;;B队分数;;;;;;;;;;;

MOV24H,#02H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

MOV25H,#01H

MOV26H,#0CH;;;;;;;;;;;分钟定时区;;;;;;;

MOV30H,#00H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

MOV31H,#00H;;;;;;;;;时间缓冲区;;;;;;;;;;

MOV32H,#02H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

MOV33H,#01H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

MOV34H,#00H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

MOV35H,#00H;;;;;;;;分数显示缓冲区;;;;;;;

MOV36H,#00H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

MOV37H,#00H;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

MOV39H,#03H;TIANHEIHEI

MOVTMOD,#11H

MOVTH0,#0D8H

MOVTL0,#0F0H

MOVTH1,#0D8H

MOVTL1,#0F0H

MOVIE,#10001111B

MOVIP,#05H

MOVR2,#64H

CLRP3.6

START:

LCALLDISPT

LCALLDISPF

JNBP1.0,PP1;A队加一分

JNBP1.1,PP2;A队加两分

JNBP1.2,PP3;A队加三分

JNBP1.3,PP4;A队减一分

JNBP1.4,PP55;B队加一分

JNBP1.5,PP66;B队加两分

JNBP1.6,PP77;B队加三分

JNBP1.7,PP88;B队减一分

P3.0,START

LCALLDELAY

P3.0,START

STOP1:

JNBP3.0,STOP1

LCALLDELAY

JNBP3.0,STOP1

CPLTR0;按键奇数次开始,偶数次暂停

LJMPSTART

PP55:

LJMPPP5

PP66:

LJMPPP6

PP77:

LJMPPP7

PP88:

LJMPPP8

PP1:

LCALLDELAY

P1.0,PPB

STOP11:

JNBP1.0,STOP11

LCALLDELAY

JNBP1.0,STOP11

INC22H

MOVA,22H

LJMPSTOREA

PP2:

LCALLDELAY

P1.1,PPB

STOP22:

JNBP1.1,STOP22

LCALLDELAY

JNBP1.1,STOP22

MOVA,22H

ADDA,#02

MOV22H,A

LJMPSTOREA

PP3:

LCALLDELAY

P1.2,PPB

STOP33:

JNBP1.2,STOP33

LCALLDELAY

JNBP1.2,STOP33

MOVA,22H

ADDA,#03

MOV22H,A

LJMPSTOREA

PP4:

LCALLDELAY

P1.3,PPB

STOP44:

JNBP1.3,STOP44

LCALLDELAY

JNBP1.3,STOP44

DEC22H

MOVA,22H

STOREA:

MOVB,#0AH

DIVAB

MOV34H,B

MOV35H,A

PPB:

LJMPSTART

PP5:

LCALLDELAY

P1.4,PPC

STOP55:

JNBP1.4,STOP55

LCALLDELAY

JNBP1.4,STOP55

INC23H

MOVA,23H

LJMPSTOREB

PP6:

LCALLDELAY

P1.5,PPC

STOP66:

JNBP1.5,STOP66

LCALLDELAY

JNBP1.5,STOP66

MOVA,23H

ADDA,#02

MOV23H,A

LJMPSTOREB

PP7:

LCALLDELAY

P1.6,PPC

STOP77:

JNBP1.6,STOP77

LCALLDELAY

JNBP1.6,STOP77

MOVA,23H

ADDA,#03

MOV23H,A

LJMPSTOREB

PP8:

LCALLDELAY

P1.7,PPC

STOP88:

JNBP1.7,STOP88

LCALLDELAY

JNBP1.7,STOP88

DEC23H

MOVA,23H

STOREB:

MOVB,#0AH

DIVAB

MOV36H,B

MOV37H,A

PPC:

LJMPSTART

DELAY:

MOVR4,#5H

DL00:

MOVR5,#0FFH

DL11:

DJNZR5,DL11

DJNZR4,DL00

RET

;;;;;;;;;;;;;;;;;;时间中断程序;;;;;;;;;;;;;;;

TIME:

PUSHACC

PUSHPSW

MOVTH0,#0D8H

MOVTL0,#0F0H

DJNZR2,RET0

MOVR2,#64H

MOVA,20H

CLRC

DECA

MOV20H,A

MOVA,21H

CJNEA,#00H,PFF;;;;;;;;;非0分跳转;;;;;;;;;;;;;;;;;

MOVA,20H

CJNEA,#00H,PFF;;;;;;;;;非0分0秒情况跳转;;;;;;;;;;

CLRTR0;;;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2