基于proteus篮球计时计分器(史上最牛,含详细程序)
篮球比赛计时计分系统

目录摘要............................................................................................................ I I ABSTRACT .............................................................................................. I II 1概述........................................................................................................ I II 2系统整体方案设计 (1)2.1主控制器方案 (1)2.2显示方案 (2)3系统电路设计 (3)3.1主控制器电路 (3)3.2显示电路 (4)3.3按键电路 (5)3.4提示电路 (6)4系统软件设计 (7)4.1软件整体设计 (7)4.2显示软件设计 (8)4.3篮球计分软件设计 (9)5系统仿真 (10)5.1仿真设计电路图 (10)5.2液晶显示 (11)5.3系统启动仿真 (12)5.4系统比赛分数控制仿真 (12)5.5实物测试 (12)总结 (15)参考文献 (16)致谢............................................................................. 错误!未定义书签。
附录.. (17)摘要篮球比赛是根据运动队员在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是属于体育比赛计时计分系统中一种得分类型的系统。
课题为篮球比赛计时计分系统。
项目选取STC89C52控制器完成核心工作,系统能够完成对整个篮球比赛的时间控制、比分控制,能够应用按键设置比赛比分,控制比赛时间,对篮球比赛的任何数据进行设置。
基于单片机的篮球比赛计分器设计毕业设计

摘要随着电子产品的逐渐发展,单片机在电子产品中占据着越来越重要的部位,篮球计时计分器就是以单片机为核心,分为计时电路,计分电路,时间暂停以及修改时间的,倒计时提醒电路,复位电路等。
在篮球比赛中作为记录比分和时间的重要依据[1]。
计时电路:根据篮球比赛的时间要求,设置好比赛的规定时间,通过编程,在显示器上显示出来,进而连接在大屏幕上,可供观众观看。
计分电路:在比赛开始后,每对进一个球,都会要有相应的得分,通过程序的设定也要把比分显示在显示器上,以便能够实时的传递给观众。
时间暂停和修改时间电路:在比赛过程中,可能会发生一些事情,需要更改时间或暂停时间,在这里我们选择应用按键的方式来改变比赛的时间。
复位电路:是单片机本身的外接电路,当程序进入死循环是或想要实现的功能没实现时,我们可以尝试着进行复位,看电路是否可以正常工作。
倒计时提醒电路:在比赛的最后,为了让运动员有心理准备,我们设置了倒计时提醒功能,在最后十秒时用蜂鸣器发声来提醒运动员,比赛即将结束。
本次实验通过以51单片机为核心,LCD显示屏进行显示,通过Proteus软件进行仿真,得到了预期的结果。
关键词:单片机;显示器;按键;ProteusAbstractWith the gradual development of electronic products, electronic products, SCM occupyan increasingly important part of basketball time points is microcontroller as the core, into the timing circuit, scoring circuit, time pause and modify time countdown Alert circuit, reset circuit.Timing circuit: According to the time requirements basketball game, good game settings specified time, through programming, show up on the display, and then connected to the big screen for the audience to watch.Scoring circuit: After the start of the game, for each goal scored will have the appropriate score, by setting the score of the program is displayed on the display should to be able to transfer to the audience in real time.Time to pause and modification time circuit: during the game, something might happen, you need to change the time or pause time, where we choose to apply the key ways to change the game time.Reset circuit: the external circuit microcontroller itself when the program enters an infinite loop or function you want to achieve is not achieved; we can try to reset, to see whether the circuit is working properly.Countdown to remind Circuit: In the last game, in order to allow the athletes have been psychologically, we set the countdown reminder, in the final ten seconds with a small light flashes to remind players, the game is about to end.The experiments with 51 microcontroller core, LCD screen display, through the Proteus simulation software, to get the desired results.Keywords: microcontroller; monitor; button; Proteus目录摘要 (I)Abstract (I)1.1 目的及意义 (1)1.1.1设计(论文)的目的 (1)1.1.2设计(论文)的意义 (1)1.2 研究现状 (2)1.3 论文的主要工作 (2)1.4 章节安排 (2)第2章设计方案 (3)2.1 设计要求 (3)2.2 设计思路 (3)2.3 系统的硬件框图 (3)第3章器件介绍 (5)3.1 AT89C51单片机 (5)3.1.1 简介 (5)3.1.2主要功能 (6)3.1.3管脚说明 (6)3.2 LCD1602显示器 (8)3.2.1 DS1602的特性 (8)3.2.2管脚功能 (9)3.3 晶振 (10)3.4 蜂鸣器 (10)3.4.1 蜂鸣器的分类 (11)3.4.2 蜂鸣器的驱动方式 (12)3.5 排阻 (13)3.6 按键 (14)3.7 三极管 (14)3.7.1 三极管的分类 (15)3.7.2 三极管的工作状态 (15)3.8 电容 (16)第4章软件设计 (17)4.1 Proteus软件 (17)4.2 Keil软件 (18)4.2.1 Keil C51单片机软件开发的整体结构 (19)4.3 Proteus仿真实验结果 (20)4.3.1 时间显示 (21)4.3.2 分数显示 (22)4.3.3 倒计时功能 (23)4.3.4 24秒报警电路 (24)4.3.5 第二小节比赛 (25)4.3.6 交换电路 (26)4.3.7 按键电路 (26)4.3.8 复位电路 (27)4.3.8 晶振电路 (28)第5章硬件设计 (29)5.1 Protel DXP 软件 (29)5.2 Protel 原理图 (30)5.2.1 原理图绘制的步骤 (30)5.3 PCB版图 (31)5.4制板 (32)5.5 焊接、调试 (32)5.6实物图 (32)结论 (35)致谢 (36)参考文献 (37)第1章绪论1.1目的及意义1.1.1设计(论文)的目的随着科学技术的发展,单片机在我们生活中越来越被广泛的使用,由于单片机的集成度高,功能强,通用性好,具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等优点使单片机迅速得到广泛的应用,现在已经成为各种电子产品中的关键部分。
基于Proteus的篮球竞赛30秒计时器的设计与仿真

收稿日期:2008-06-29作者简介:潘益玲(1980-),女,湖南人,研究方向为电子与通信技术。
基于Proteus 的篮球竞赛30秒计时器的设计与仿真潘益玲(河源职业技术学院 电子与信息工程系,广东 河源 517000)摘 要:Proteus 是一个电子设计的教学平台、实验平台和创新平台,本文介绍了一种基于Proteus 仿真平台,使用基本的数字单元电路和通用型集成数字电路,进行篮球竞赛30s 电路的设计与仿真的方法。
通过仿真运行,可在三位LED 数码管中显示“倒计时30s”,当计时器递减计数到7s 以及到零时,分别发出高音和低音光电报警信号。
关键词:Proteus ;篮球竞赛;30s ;设计与仿真中图分类号:TP391.9 文献标识码:A 文章编号:1672-0318(2008)04-0027-05随着社会对职业教育要求的不断提高,教学手段的不断多样化以及计算机应用技术的快速发展,各种电路仿真软件如Pspice ,EWB ,Proteus 等被应用到教学与实际电路开发之中。
Pspice 和EWB 软件兼容,都是采用图形方式创建电路,图形界面直观,操作方便、易学易用,但元件库受到限制,仅可进行直流、交流、瞬态、参数扫描等数十种仿真分析,实现模拟电路仿真、数字电路仿真及模数混合仿真,对凡是涉及单片机的电路设计无法仿真。
而Proteus 是英国Labcenter 公司开发的具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真等仿真软件,具备如下主要特点[1]:1)可以仿真、分析各种模拟器件和集成电路,其最大特点是可以支持许多型号的单片机仿真,该软件的单片机仿真库里有51系列,PIC 系列,A VR 系列等,Proteus 的仿真是基于SPICE3F5的,因此它也能像其他的EDA 软件那样进行电路分析,如:模拟分析、数字分析、混合信号分析、频率分析等等。
2)提供了虚拟示波器,逻辑分析仪、信号发生器、计数器、电表、Virtual Terminal (使用电脑的键盘和显示器通过串口与外部的单片机系统通讯)等虚拟仪器供选择用。
单片机proteus仿真篮球比赛计时计分课程设计

单片机proteus仿真篮球比赛计时计分课程设计设计一个基于单片机的篮球比赛计时计分系统是一个涉及硬件和软件协同工作的项目。
在Proteus仿真环境中实现这个系统,你可以进行前期的设计和测试,以便在实际硬件上实现之前找出并修复潜在的问题。
下面是一个基本的步骤指南,用于在Proteus中设计一个篮球比赛计时计分系统。
1. 确定系统需求首先,明确你的系统需要完成的任务。
通常,篮球比赛计时计分系统需要:开始/停止计时显示当前比赛时间(分钟、秒)显示当前得分实现上下限时间的设定(例如,每节比赛时间)可能的附加功能,如犯规/罚球计数、球员技术统计等2. 选择单片机和外设选择一个适合你需求的单片机。
例如,常用的单片机有51系列、STM32等。
根据需求选择适当的显示器、按钮和可能的扩展外设。
3. 设计硬件电路在Proteus中创建电路图。
将所选的单片机、显示器、按钮等外设添加到电路图中,并按照你的设计意图进行连接。
这通常包括单片机的电源、地线以及与外设通信的端口。
4. 编写和测试软件代码为所选的单片机编写代码。
这通常涉及初始化外设、设置计时函数、处理输入按钮事件等。
使用Proteus的调试功能,在仿真环境中测试代码以确保其功能正常。
5. 配置定时器和中断为了实现计时功能,你需要配置单片机的定时器。
这决定了计时的精度(例如,每秒更新一次时间)。
根据需要设置定时器的中断,以便在时间到达预设值时触发特定的事件(如停止计时、增加/减少得分等)。
6. 显示和用户界面编写代码以驱动显示器,根据当前的时间和得分更新显示内容。
考虑使用动态显示技术,如扫描显示,以节省单片机的I/O端口。
同时,编写处理用户输入的代码,如开始/停止计时、重置计分等。
7. 测试和调试在Proteus中全面测试你的系统。
模拟不同的比赛场景,如时间是否正确更新、计分是否正确增加等。
通过调试找出并修复代码中的错误或问题。
8. 优化和改进根据测试结果优化代码和硬件设计。
单片机篮球比赛记分器 精品

DACHANGCHUN INSTITUTE OF TECHNOLOGY篮球比赛记分器The Game Of Basketball Scoring Device设计题目:篮球比赛记分器学院名称:电气与信息工程学院专业名称:电子信息工程任务分配表班级学号姓名完成主要任务电子104208 PCB的绘制仿真与实现电子1042 13 程序的修改PCB的绘制仿真与实现PROTEUS原理图绘制与仿真电子1042 35 文档的编写程序的修改PROTEUS原理图绘制与仿真篮球比赛记分器摘要:本文设计了一个篮球比赛记分器主要利用单片机AT89C51作为核心元件,利用3组4位共阳极的数码管作为显示器件,以C语言作为编程语言,在Protues和Keil搭建的软件仿真平台下进行仿真,本设计包含了AT89C51系列单片机的最小系统的构成,同时在此基础上扩展了一些实用性强的外围接口,可以进一步了解译码器74LS247的应用,LED七段数码管的结构和工作原理,主要实现了计时和显示A/B队的分数,并能及时进行加分,减分,鸣笛警示等功能。
本系统具有成本低廉、性能稳定、高准确度显示、操作方便且易携带等特点。
广泛适合各类学校和小团体作为赛程计分。
关键词:AT89C51单片机;74LS247;七段数码管;仿真;嵌入式0 引言进入21世纪,伴随着电子,信息通信技术的应用与普及开发,人们对电子技术的要求也越来越高,目前嵌入式单片机渗透到我们生活的各个领域。
单片机是一种集成在电路芯片,是采用超大规模集成电路技术,把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。
按照历史性、本质性、普遍性要求,嵌入式系统应定义为:“嵌入到对象体系中的专用计算机系统”,可分软件部分和硬件部分,而当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在单片机上。
单片机课程设计篮球计时计分器正文精选全文完整版

可编辑修改精选全文完整版基于单片机的篮球赛计时计分器的设计一系统设计方案1.1 设计题目篮球计时计分器1.2 系统功能要求本系统可实现功能如下:(1)主控部分:选择单片机为核心元件构成系统。
(2)计时部分:能记录整个赛程的比赛时间,并能修改时间、暂停时间。
(3)计分部分:能随时刷新甲、乙两队在整个赛程中的比分。
(4)中场交换比赛场地时,能交换甲、乙两队比分的位置。
(5)比赛时间结束时,能发出报警指令。
1.3 系统总体方案设计本设计由AT89C51编程控制LED七段数码管作球赛计时计分系统具有赛程定时设置、赛程时间暂停、性能稳定、操作方便且易携带等特点。
1.3.1系统设计方案论证本设计是基于89C52单片机的键盘控制及显示电路设计,从系统的设计功能上看,系统可分为两大部分,即键盘输入控制部分和显示部分,对于每一个部分都有不同的设计方案,起初我拟订了下面两种方案:第一种方案:键盘控制采用矩阵扫描键盘,可以用普通按键构成4×4矩阵键盘,直接接到89C51单片机的P0口,高四位作为行,低四位作为列,通过软件完成键盘的扫描和定位。
显示部分采用动态显示,采用移位寄存器74LS164和译码器74LS138通过显示驱动程序驱动七段数码管显示。
此方案成本低,所用到的两个外围芯片价格都很低廉,而且单片机的I/O口占用较少,可以节约单片机接口资源。
第二种方案:键盘控制采用独立是式键盘,每个按键的"接零端"均接地,每个按键的"测试端"各接一条输入线,通过检测输入线的电平状态就可以很容易地判断哪个键被按下了,这种方法操作速度高而且软件结构很简单。
这种方法比较适合按键较少或操作速度较高的场合。
显示部分采用静态显示方法,所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的接口用于笔划段字形代码。
这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中CPU 的开销小。
基于Proteus的篮球记分器的设计与仿真

基于Proteus的篮球记分器的设计与仿真作者:张燕来源:《科技视界》2018年第28期【摘要】Proteus软件是一款集电路原理图设计、仿真和制版等功能于一身的电子设计自动化开发工具,运用软件的方法虚拟各种元器件与仪器仪表,完成电路原理图设计、功能测试与仿真过程。
本文以篮球记分器为例,介绍了Proteus软件在数字系统设计中的应用,并给出了运用Proteus软件绘制的篮球记分器的计时电路和计分电路的电路原理图和仿真结果。
学生学习兴趣浓厚,教学效果良好。
【关键词】Proteus软件;电路原理图设计;篮球记分器;仿真中图分类号: TP391.7 文献标识码: A 文章编号: 2095-2457(2018)28-0100-002DOI:10.19694/ki.issn2095-2457.2018.28.044【Abstract】Proteus software is a kind of an electronic design automation tool,which can be used to design the circuit principle diagram,simulate and make mask.It completes the circuit principle diagram design,function test and simulation process by the use of various virtual components and instruments in software.That paper,in the example of basketball scoring device,introduces the application of Proteus software in the design of digital systems,and displays the device’s timing and scoring circuit principle diagram and simulation results using Proteus.The students are interested in learning,and the teaching effect is well.【Key words】Proteus software;Circuit principle diagram design;Basketball scoring device;Simulation0 引言高职院校《数字电子技术》课程是一门理论与实践高度融合的专业基础课程,在后续专业课程的学习中起着承上启下的作用。
基于单片机的篮球比赛计分器

2009届毕业设计(论文)题目:基于单片机的篮球赛计时计分器学院、系:电子技术系专业:电子科学与技术学生姓名:肖植班级:电科07521学号: 043指导老师 : 张京摘要本设计是篮球计时计分器,主要在篮球比赛中用于记录整个赛程的比赛时间和显示甲、乙两队在比赛过程中的比分情况。
该计时计分器有部分组成:一部分用来实现计时功能,其基本原理和定时闹相似;另一部分用来实现计分功能,其基本原理和计数器相似,只不过所要记录和显示的对象是按键按下的次数,每按下一次计数值加一。
该设计能够实现计时和计分功能,采用共阴极数码管进行动态显示,加分的部分用按键来完成,每按一次发送一个计数脉冲,计数值加一。
关键词:计时计分动态显示AbstractThis design is time basketball scoring device, mainly for recording in the basketball game of playing time throughout the race and display A and B teams score during the game situation.This time scoring machine has parts: used to achieve the timing function, the basic principles and similar time downtown; another part of the scoring functions used to implement the basic principles and counter similar to, but want to record and display the objects are keyPress the number of times, each time you press the count plus one.The design can achieve timing and scoring functions, the use of dynamic common cathode LED display, plus some to complete with buttons, each time sending a pulse count, the count plus one.Key Words:to keep time to keep score dynamic to show目录中文摘要 (I)英文摘要 (Ⅱ)第一章绪论 (1)1.1发展背景. (1)1.2系统功能 (10)1.3课题运用的知识点 (10)1.4课题组成 (10)第二章课论基础 (9)2.1 单片机概述··········································································································2.1.1 AT89C51性能介绍 ··························································································2.2七段数码管的基本介绍·····················································································2.2.1简介 ····················································································································2.2.2硬件译码·············································································································2.2.3软件译码·············································································································2.2.4显示方法·············································································································第三章系统原理的设计 ······················································································3.1课题的技术和量化要求·······························································································3.2系统的组成框图··········································································································第四章硬件部分的设计···························································································4.1 单片机接口电路··········································································································4.2 数码显示电路··········································································································第五章软件部分设计···································································································5.1 按键模块············································································································5.1.1 简介············································································································5.1.2 键盘处理的流程图····················································································5.1.3 源代码········································································································ 5.2 显示模块········································································································5.2.1 简介············································································································5.2.2 显示的流程图····························································································5.2.3 源代码········································································································5.3 成绩调整模块 ································································································5.3.1 简介············································································································5.3.2 成绩调整流程图························································································5.3.3 源代码········································································································ 5.4 延时模块 ·······································································································5.4.1 简介············································································································5.4.2 延时的流程图····························································································5.4.3 源代码········································································································课题设计总结···········································································································附录一原理图····················附录二源程序设计··················参考文献·······················致谢······································································································································第一章绪论1.1发展背景体育比赛计时记分系统是对体育比赛过程中所产生的时间、比分等数据进行快速采集记录、加工处理、传递利用的信息系统。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
}
if(second==0&&munite==0)//操作进入下一节比赛
{
if(key_reset==1)
{
s24=0x18;
part++;
key_reset=0;
if(part==10)
talk2=1;//比赛太久,报警
if(part<5)//判断是否为加时赛,不是,延长12分钟
{
munite=0x0c;
void scanf4(uchar s,uchar r,uchar b);
void play24();
void playstop1();
void playstop2();
/*********延时程序,t=1时,延时1ms************/
void delay(uchar t)
{
int i,j;
EX1=1;
IT0=1;
IT1=1;
EA=1;
}
/*****************定时器0***************/
void timer0()interrupt 1
{
time_tick1++;
TH0=TH_value;
TL0=TL_value;
}
/*************定时器1***************/
TH0=TH_value;
TL0=TL_value;
TH1=TH_value;
TL1=TL_value;
ET0=1;
ET1=1;
time_tick1=0;
time_tick2=0;
}
/**************外部中断源初始化****************/
void init_extra()
{
EX0=1;
key_red_add=0x00;
key_red_mul=0x00;
key_blue_add=0x00;
key_blue_mul=0x00;
key_reset=0x00;
flag=0x00;
}
/************定时器0初始化**************/
void init_timer()
{
TMOD=0x11;
if(key_red_add==1)//秒操作加,MAX=60
{
key_red_add=0;
if(second<0x3c)
second++;
}
if(key_red_mul==1)//秒操作减
{
key_red_mul=0;
if(second>0)
second--;
}
}
if(station!=4)
{
TR1=0;
void scanf(uchar p,uchar tw,uchar m,uchar s,uchar r,uchar b);
void scanf1(uchar p,uchar r,uchar b);
void scanf2(uchar tw,uchar r,uchar b);
void scanf3(uchar m,uchar r,uchar b);
void timer1()interrupt 3
{
EA=0;
TH1=TH_value;
TL1=TL_value;
time_tick2++;
if(time_tick2==50)
{
led=~led;
time_tick2=0x00;
if(flag==0)
flag=1;//跳亮标志位
else
flag=0;
}
}
}
if(station==3)//计时分操作
{
TR1=1;
flag=0;
while(station==3)
{
if(flag==0)
scanf3(munite,red_mark,blue_mark);
if(flag==1)
scanf(part,s24,munite,second,red_mark,blue_mark);
sbit speak=P3^7;
sbit ext=P3^2;
sbit led=P3^4;
/**********BCD码字***************/
uchar code bcd[]={
0x00,0x01,0x02,0x03,
0x04,0x05,0x06,0x07,
0x08,0x09,0x0A,0x0B,
flag=0;
}
}
if(station==4)//计时秒操作
{
TR1=1;
flag=0;
while(station==4)
{
if(flag==0)
scanf4(second,red_mark,blue_mark);
if(flag==1)
scanf(part,s24,munite,second,red_mark,blue_mark);
if(key_red_add==1)//比赛节次操作加
{
key_red_add=0;
if(part<0x09)
part++;
}
if(key_red_mul==1)//比赛节次操作减
{
key_red_mul=0;
if(part>1)
part--;
}
}
if(station!=1)
{
TR1=0;
flag=0;
if(key_red_add==1)//24秒操作加.MAX=24
{
key_red_add=0;
if(s24<0x18)
s24++;
}
if(key_red_mul==1)//24秒操作减
{
key_red_mul=0;
if(s24>0)
s24--;
}
}
if(station!=2)
{
TR1=0;
flag=0;
if(talk1==1)
{
EA=0;
TH1=0xFD;
TL1=0xF7;
EA=1;
speak=~speak;
num++;
if(num==200)
{
num=0;
talk1=0;
TR1=0;
}
}
if(talk2==1)
{
EA=0;
TH1=0xFD;
TL1=0xF7;
EA=1;
speak=~speak;
num++;
{
key_reset=0;
s24=second;
}
else//当时间大于24秒时,S24复位为24秒
{
key_reset=0;
s24=0x18;
}
}
}
if(key_red_add==1)//红队得分操作加
{
key_red_add=0;
if(red_mark<0xff)
red_mark++;
}
if(key_red_mul==1)//红队得分操作减
TR0=0;
}
else
{
if(s24==0)
;
else
{
key_pause=1;
TR0=1;
}
}
}
/***********外部中断1*****************/
void extra1()interrupt 2
{
uchar dtemp;
dtemp=key_scan();
switch(dtemp)
second=0x00;
}
else//加时赛,延长5分钟
{
munite=0x05;
second=0x00;
}
}
}
if(second!=0||munite!=0)//操作24秒复位
{
if(key_reset==1)
{
if(second<0x18&&munite==0)//当比赛剩余时间少于24秒时,sS4为当前剩余时间
基于proteus篮球计时计分器(史上最牛,含详细程序)
#include <REGX52.H>
#define uchar unsigned char
#define uint unsigned int
#define TH_value 0xb1
#define TL_value 0xe0//定时器工作于方式1,每20ms产生一个中断
if(blue_mark>0)
blue_mark--;
}
}
if(station==1)//比赛节次操作
{
TR1=1;
flag=0;
while(station==1)
{
if(flag==0)
scanf1(part,red_mark,blue_mark);
if(flag==1)
scanf(part,s24,munite,second,red_mark,blue_mark);
{
case 0xFE:key_move=1;break;
case 0xFD:key_reset=1;break;
if(num==200)
{
num1++;
num=0;
if(num1==4)
{
num1=0;
talk2=0;
TR1=0;
}
}
}
EA=1;
}