体育比赛计分器

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机课程设计

体育比赛计分器

一、设计目的

1.掌握单片机定时器的设计方法

2.掌握单片机扩展显示器、键盘的方法

二、技术指标

1.系统可适用于多项体育比赛的计分;

2.键盘设置比赛的最高分数,达到最高分数时能够进行声光显示;

3.能够显示比赛时间(比赛暂停时能够显示暂停间)时间到时能够进行声光显示;

4.LED显示比赛分数。

三、方案对比

方案一:采用计时芯片

针对计算机系统对计时芯片的要求,各大芯片厂家推出了键时钟、倒计时、正计时等各种芯片,可采用自动控制计时芯片,通过触发控制电路使计时器自动计时,达到预定时间后芯片重新开始计时(实现倒计时功能);也可通过触发控制电路使计时器不计时,达到预定时间后芯片重新开始计时(实现暂停功能),不需要程序干预。计算机可通过中断或查询方式读取计时器数据,实现计时的暂停功能,并进行显示,计时功能的实现就无需占用CPU的时间,程序简单,控制精度高,因此在工业系统中这一类专用芯片实现计时功能。

方案二:

利用AT89C51内部定时器|计数器进行中断定时,配合软件延时实现计时功能。该方案节省硬件成本,并可综合运用定时器、计数器及程序设计的知识,因此本设计采用软件实现计时。

四、方案概述

本系统采用单片机AT89C51作为本设计的核心元件,利用七段共阳LED作为显示器件,并用74LS573作为驱动芯片。在此设计中共接入10个七段共阳LED显示器,其中六个用于记录甲乙两队的分数,每队三个,显示分数范围可达0-999,可满足各种体育比赛需要。另外四个用于记录比赛时间,其中两个用于显示分钟,两个用于显示秒钟,显示时间范围可达0-99分钟,也可满足各种比赛需要。

比赛分两种模式,一种为限定比赛时间,即赛前需设定比赛用时,比赛开始后进行倒计时,倒计时为零时停止比赛;另一种为限定比赛最高分数,即赛前需设定最高比赛分数,一方到达该分数即停止比赛。

为方便实现计时器和计分器调整时间和比分,设置了键盘,其中按键T和S分别代表两种模式,根据具体情况选择比赛模式。另外有十个按键代表0-9十个数字,方便进行时间或分数的设定,其余4个按键,用于分别实现甲乙两队的加减分功能,最后还有一个按键用于实现开始和暂停功能。

最后还设计了定时报警系统,即比赛时间到或达到设定的最高分数时,扬声器发出报警声,提示比赛结束。

五、总体框图及流程图

1、总体框图

2、流程图

六、各模块设计

1、模式选择

本设计分为两种模式。第一种为设定比赛最高时长,第二种为设定比赛最高分数。其工作原理为:按下按钮T即选择比赛最高时长模式,按下按钮S即选择比赛最高分数模式。其中按钮T和S在矩阵键盘中,矩阵键盘中其他十四个键为0-9十个数字和甲乙两队加减分键。

2、计时电路

计时电路主要有矩阵式按键,单片机,LED显示器构成。矩阵式按键为4*4矩阵,LED 选用共阳极四位数七段数码管,段选端通过74LS573与单片机P0口相连,起到驱动作用,位选端通过反相器与单片机P2.4-P2.7相连。

其工作过程如下:比赛准备开始时,由矩阵式按键输入比赛时长。时间设置完成后,按下启动按钮,定时器T0开始计数,采用倒计时。比如:设定时间为45分钟,则在LED上显示“4500”四位数。定时器T0计数60秒后中断返回,继续定时计数下一个60秒;同时则在4位LED显示器上显示“4459”四位数,这样一直持续下去,直到变成“0000”四位数时比赛结束。如果比赛需要暂停,则按下K7键即可暂停计时。

计时电路如下图:

3.计分电路

计分电路有单片机,LED显示器,按键组成,其中,LED显示器选用共阳极六位数七段数码管,段选端通过74LS573与单片机P0口相连,起到驱动作用,位选端通过反相器与单片机P3.0-P3.5口相连,其中三位显示甲队分数,另外三位显示乙队分数,显示范围为0-999。按键共四个,分别为甲队+1、-1,乙队+1、-1,分布在4*4矩阵键盘中,当其中任意一个按下时,即产生一个低电平,使单片机产生中断,从而使相应LED显示。

4、矩阵键盘

5、振荡电路:

本次设计要用到AT89C51的时钟振荡功能。AT89C51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入输出端,这个放大器与作为

反馈元件的片外石英晶体或陶瓷谐振器一同构成自激振荡器。

当定时时间到或者达到最高分时,蜂鸣器会发出报警信号,比赛结束。

六、总电路图

七、程序

KEYBUF EQU 30H

ORG 0000H

ORG 0050H

START: MOV SP,#60H

MOV R1,#00H

MOV R2,#00H

MOV R3,#04H ;设置时间位数为4

MOV R0,#40H ;键值所在地址

ACALL DISPLAY ;显示加减分数

MOV KEYBUF,#00H

WAIT: ACALL DISPLAY1

ACALL DISPLAY

;=========第1行按键===============

MOV P1,#0FFH

CLR P1.4

MOV A,P1

ANL A,#0FH

XRL A,#0FH

JZ NOKEY1

LCALL DELAY10MS

MOV A,P1

ANL A,#0FH

XRL A,#0FH

JZ NOKEY1 ;软件防抖动

MOV A,P1

ANL A,#0FH

CJNE A,#0EH,NK1

MOV KEYBUF,#0

LJMP DK ;判断是否已经输入4位数字NK1: CJNE A,#0DH,NK2

MOV KEYBUF,#1

LJMP DK

NK2: CJNE A,#0BH,NK3

MOV KEYBUF,#2

LJMP DK

NK3: CJNE A,#07H,NK4

MOV KEYBUF,#3

LJMP DK

NK4: NOP ;第一行没有键按下

DK1A: MOV A,P1

ANL A,#0FH

XRL A,#0FH

JNZ DK1A ;判断键是否放开

;=========第2行按键===============

NOKEY1:

MOV P1,#0FFH

CLR P1.5

MOV A,P1

ANL A,#0FH

XRL A,#0FH

JZ NOKEY2

相关文档
最新文档