APP下载

基于单片机控制的篮球比赛计时、计分系统设计与仿真

2020-09-02文胜福崔汉汉

福建质量管理 2020年15期
关键词:数码管计分篮球比赛

王 硕 文胜福 王 浩 崔汉汉

(重庆邮电大学 重庆 400065)

引言

据统计,篮球已经成为第二大球类运动,仅次于足球,并且有逐年上升的趋势。同时篮球比赛也是奥运会中的热门赛事,包括世锦赛,亚锦赛等各大赛事中都有篮球的存在。而计时、计分是篮球比赛不可或缺的一部分,但是篮球规则也很多元化,不同级别的篮球比赛对于计分、计时器的要求也并不相同。并且在许多露天比赛,有时会出现雨天、高温天气等极端天气情况。针对上述问题,本文设计了一种一种廉价、普适性强、适用各种环境的高性价比的篮球计时、计分系统,本系统将有很大的市场和不错的应用前景。

一、设计概述

本系统采用8位数码管显示单节次比赛时间、暂停休息限制时间、一方球队运球限制时间、比赛节次和双方队伍比赛分数。在篮球比赛计时、计分系统运行的过程中,依据对定时器的设置,实现对比赛时间以及一方球队运球时间的记录,并通过按键的控制,实现对篮球比赛分数的记录与比赛时间的调整,通过数码管显示函数,实现对记录数据的可视化。

当一方球队运球时间达到24秒时,比赛运行时间将停止,蜂鸣器工作,提示球队转换攻守关系,按下具有外部中断的按键时,单节次比赛运行时间继续,一方球队运球时间清零。当一节比赛结束后,单节次比赛时间为零,蜂鸣器将工作,提示球队该节次比赛结束,数码管显示的比赛节次自动加一,球队换场地,需要将显示的数据交换位置,按下具有外部中断的按键时,一方球队运球时间清零,此时定时器已停止工作。当按下比赛暂停按键时,定时器停止工作,数码管显示暂停休息时间99秒,99秒递减为零时,蜂鸣器将工作,提示球队休息时间结束,再次按下比赛暂停按键时,定时器继续工作。

二、硬件设计

(一)AT89C51芯片

本文采用AT89C51单片机作为主控制器。AT89C51 提供以下标准功能:4k字节Flash闪速存储器,256字节片内数据存储器(00H -7FH为片内RAM,80H-FFH为特殊功能寄存器SFR),32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位[1]。

(二)四位一体LED数码管

图1 四位一体数码的模型图与引脚分布图

根据显示精度的要求,本文采用如图1所示的四位一体数码管显示。通过AT89C51芯片以及锁存器对段选和位选进行控制,实现动态显示[2]。

三、软件设计

软件设计和仿真流程如图2所示:

图2 设计流程图

基于上述流程图,运用仿真软件Proteus画出如图3所示的仿真电路图:

图3 系统仿真图

其中通过管脚安排确定最终的实验电路,基于实验电路运用Keil编程平台对实验设计进行编程[3],将编程所得的hex文件,导入到仿真软件Proteus的电路图中实现对篮球比赛计时、计分系统的仿真,通过仿真验证编程设计。

四、设计总结

本实验实现了篮球计时、计分系统的设计、编程与仿真,实验设计方面较全面的考虑了实际比赛规则,是系统具有一定的纠错性、提示性与可控性。实验编程方面在Keil平台进行编写,采用多文件函数结合的形式,简化主函数的复杂性,采用switch语句,编写按键控制语句;运用段选片选数组结合的方式,两个显示8位LED数码管;运用外部中断控制24s运球控制数据,并且修改一些标志位数据。实验仿真阶段采用仿真软件Proteus,在其仿真平台上运行篮球计时、计分系统。

但是该系统还存在两个缺点,其一是在仿真软件Proteus上运行时,2个LED数码管显示的数据存在跳闪现象。其二由于定时器中断中的程序较长,存在计时误差通过计时时间与实际时间对比,时间较久时该误差积累较大,对篮球的计时环节造成误差,所以针对精确的篮球计时、计分系统需要具有更加精确时钟单元的芯片

猜你喜欢

数码管计分篮球比赛
篮球比赛
带定性判断的计分投票制及其公理刻画
微课教学设计之“数码管动态显示”
水富市总工会:举办首届职工篮球比赛
高级教师评审倾力一线教师
Arduino编程
MC9S08FL16单片机数码管静态显示分析
基于单片机的中国式摔跤比赛计分器开发设计
单片机控制的四位数码管动态显示编程
计分考核表在绩效管理中的应用效果