C51篮球计分器设计

江汉大学文理学院

课程设计报告

课程设计题目 篮球计分器设计

部 (系) 信息技术学部 专 业 自动化 姓 名 肖明 学 号 201006060206 指导教师 韩彩霞

20xx年 5月 30日

C51篮球计分器设计

目 录

一、设计目的 ............................................................. 1

二、设计要求 ............................................................. 1

三、总体方案 ............................................................. 1

四、具体实现 ............................................................. 2

五、实现过程中遇到的问题及措施 .......................................... 10

六、设计心得体会 ........................................................ 10

七、对该设计的建议 ...................................................... 10

八、参考文献 ............................................................ 10

一、设计目的

了解篮球计分器的制作方法,设计并制作一个用于比赛的篮球计分器。

二、设计要求

(1)LED上显示双方得分

(2)通过开关可以给双方加1、2、3分

(3)一个复位键,按下后得分归零。

(4)给出完整程序流程图和完整程序

(5)电路设计(通过Proteus仿真)

三、总体方案

在篮球比赛中,P1.0~P1.7接八个开关K1~K8,用K1~K4来控制甲队比分。甲队根据比赛得分情况(得1分、得2分、得3分)分别通过三个按键K1、K2、K3进行加分(加1分、加2分、加3分)。当前总分值通过数码管显示出来。K4作为复位键,按下则清零。同理,用K5~K8来控制乙队比分。用P0口接数码管显示甲队比分,用P3口接数码管显示乙队比分。如图

C51篮球计分器设计

1

图1 总体方案设计图

1

四、具体实现

1.初始状态下,没有启动。如图2

C51篮球计分器设计

图2 初始图

2.在篮球比赛中,按下K1键,甲队加1分,左边数码管显示01,乙队不加分,数码管显示00。如图3

C51篮球计分器设计

图3 数码管记分图

3.按下K5键,乙队也加1分,右边数码管显示01,左边不变。如图4

2

C51篮球计分器设计

图4 数码管计分图

4.按下K2键,甲队加2分,加上之前1分,甲队现有3分,左边数码管显示03,乙队保持不变。如图

C51篮球计分器设计

5

图5 数码管计分图

5.按下K6键,乙队加2分,加上之前1分,乙队现在共有3分,右边数码管显示03,甲队保持不变,也是3分。如图6

3

C51篮球计分器设计

图6 数码管计分图

6.按下K3键,甲队加3分,甲队共有6分,数码管显示06,按下K7键,同理乙队也有6分。

7.按复位键K4,甲队比分清零,左边数码管显示为00,同理,右边数码管也显示为00。如图

C51篮球计分器设计

7

图7 数码管清零后

8.完整程序代码如下:

#include<reg51.h>

#define uchar unsigned char

4

#define uint unsigned int

sbit P2_0=P2^0;

sbit P2_1=P2^1;

sbit k1=P1^0;

sbit k2=P1^1;

sbit k3=P1^2;

sbit k4=P1^3;

sbit k5=P1^4;

sbit k6=P1^5;

sbit k7=P1^6;

sbit k8=P1^7;

uchar num1,num2;

uchar code seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//数码管0~9

sbit P2_6=P2^6;

sbit P2_7=P2^7;

void delay(uint x) //延时ms级别

{

}

void display_l(uint x)

{

P2_0=1; P2_1=0; P0=seg[x/10]; delay(2);

5 uint i,j; for(i=0;i<x;i++) for(j=0;j<110;j++);

P2_0=0; P2_1=0; P0=0xff; delay(2);

P2_0=0; P2_1=1;

P0=seg[x%10]; delay(2);

P2_0=0; P2_1=0; P0=0xff; delay(2);

}

void display_2(uint x) {

P2_6=1; P2_7=0;

P3=seg[x/10]; delay(2);

P2_6=0; P2_7=0; P3=0xff; delay(2);

P2_6=0;

6

P2_7=1;

P3=seg[x%10];

delay(2);

P2_6=0;

P2_7=0;

P3=0xff;

delay(2);

}

void main()

{

while(1)

{

if(k1==0) {

while(k1==0) {

display_l(num1); display_2(num2); }

num1++;

}

if(k2==0) {

while(k2==0) {

display_l(num1); //甲队加1分//甲队加2分

7

} } display_2(num2); num1=num1+2; if(k3==0) //甲队加3分

{

while(k3==0)

{

display_l(num1);

display_2(num2);

}

num1=num1+3;

}

if(k4==0)

{

while(k3==0)

{

display_l(num1);

display_2(num2);

}

num1=0;

}

if(k5==0)

{

while(k5==0)

{

display_l(num1);

display_2(num2); //甲队比分清零//乙队加1分

8

} } num2=num2+1; if(k6==0) //乙队加2分

{

while(k6==0)

{

display_l(num1);

display_2(num2);

}

num2=num2+2;

}

if(k7==0)

{

while(k7==0)

{

display_l(num1);

display_2(num2);

}

num2=num2+3;

}

if(k8==0)

{

while(k8==0)

{

display_l(num1);

display_2(num2);

}

num2=0;

}

display_l(num1); //乙队加3分 //乙队比分清零

9

} display_2(num2); }

五、实现过程中遇到的问题及措施

1.在实现过程中,数码管动态扫描时间设置出现问题,导致数码管不停闪烁,最后通过修改程序中数码管动态扫描时间使数码管显示稳定。

2.在程序里面,共阴共阳弄反,刚开始看资料上用的共阴,自己就用共阴导致程序混乱,最后通过修改数组里面的数据共阳之后调试才正确。

六、设计心得体会

通过篮球计分器的制作,使我熟悉了单片机开发设计实例的过程,并加深对单片机的理解和运用以及掌握单片机与外围接口的一些方法和技巧,这主要表现在以下的一些方面:

(1)篮球计分器包含了51系列单片机的最小应用系统的构成,同时在此基础上扩展了一些实用性强的外围接口。

(2)学会调试电路,分析电路故障,积累电路调试经验。

七、对该设计的建议

1.可以在此设计上加一个计时功能。赛程计时采用倒计时方式,即比赛前将时间设置好,比赛开始时启动计时,直至计时到零为止,使其实现篮球计时计分器功能。

2.可以加一个减分功能,出现误判了不是直接清零而是减分恢复。

八、参考文献

[1]彭伟.单片机C语言程序设计实训100例:基于8051+Proteus仿真.电子工业出版社,(2009)

[2]姜志海.单片机的C语言程序设计与应用.电子工业出版社,(2011)

10

C51篮球计分器设计

 

第二篇:MCS51单片机篮球计分器的设计

HCS-51单片机篮球计分器的设计

◇胡建明

摘要:介绍了使用MCS-51系列兼容的AT89S52芯片,设计

三、硬件设计

(一)电路原理图

由于系统的控制方案简单,数据量不大,因此选用AT89S52单片机作为篮球计分器的控制核心,AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程F1ash存储器。将

P1

出篮球记分、计时系统,能实现两队比分的加分、减分(防误操作),计时和各种显示效果;其控制系统的模块有:7位动态显示记分模块、4位动态显示计时模块、两队加分减分模块、按键查询模块、分秒控制系统(包括3个中断的控制和其它开关的控

制);文章详细地介绍了系统硬件与软件的设计过程,计分统采用了指令冗余和按键延时去抖等抗干扰措施,该设计具有低功

VI作为按键输入控制口,P2口和P3V1分别作为篮球计时和篮

球记分显示控制口,其电路原理图如图1所示。

耗,可靠性,安全性以及低成本等特点,该设计方案完全满足篮球计分器的设计要求。

关键词:51单片机

篮球赛记分

篮球赛计时数码显示

一、设计任务与设计要求

设计任务设计并制作一个用于篮球比赛计时计分器,能显

示各种比赛时间,并显示比赛比分,能实现每次加1分、加2分、减1分操作。

设计要求:

(一)采用单片机控制,响应迅速,判别精确;主控台面上有按键控制,可同时对比赛时的分数显示进行加分减分,能显示整个赛程的比赛时间,暂停时间和比赛的节数。

(二)在比赛的过程中能够随时刷新各队在整个赛程中的比分,通过按键输入比分,显示在数码管上;按键分别为加1分,加2分、减1分键和改变当前记分球队功能键。

(三)能正确设置倒计时时间和比赛的节数。比如,第二节开始12分种倒计时,屏幕显示“2按开始键开始倒计时。

12

圈1

篮球计分器电路原理圈一

AT89S52的时钟晶振频率为12MHZ。

电源采用220r/BY的交流变压器降压、整流、滤波后,再通过LM7805三端稳压器稳压后为单片机供电。实践表明,单片机工作稳定,完全能够满足系统的要求。

(二)系统工作流程

当接通电源,7位共阴极的数码管显示“1开始。

记分显示:要给红队或者篮队加分,分别按下不同的记分键

12

oo”,表示

第一节12分钟倒计时准备开始,按开始键时,开始计时,比赛

00”准备开始倒计时,

+1分、+2分键,经过数码管进行显示。

当第一节打完后,自动进行2分钟节问休息倒计时,计时时间到,进入第2节比赛,第2节比赛完成,自动进行10分钟中场休息倒计时,计时时间到,进入第3节比赛,第4节比赛类似。

二、设计方案(一)单片机的选型

方案一:51单片机

虽然51单片机是8位的,采用总线结构,但具有编程控制简便、接口简单,工作可靠,价格经济,能耗少,容易实现系统小型化。

方案--:61单片机

61单片机是在51的基础上扩展起来的,虽然比51多了看门狗,并且是非总线结构,它是16位的,支持16位硬件乘法,还有专门的乘加指令,现在应用非常广泛,但61单片机价格较贵,+要继续扩展,比较不方便。

因此本系统采用51单片机来实现。(二)计时方案

方案一:采用计时芯片

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

方案二:软件控制

利用MCS-51内部的定时器/计数器进行中断定时,配合软件延时实现计时。该方案节省硬件成本,并且可综合运用定时器/计数器、中断以及程序设计的知识,因此本系统采用软件方法来实现计时。

2009.NOll

四、软件设计

程序流程图如图2所示。接通电源,按下开始按钮后,系统初始化,显示记分的缓冲区清0显示0,计时的缓冲区初始化并显示“1

12

00”,表示第一节开始12分钟倒计时,通过不断

地查询加分按键是否按下后松开,若有,经过按键去抖动程序后,选择给红队或者篮队加分,并进行相应队的记分显爪处理,同时不断地查询按键,判断有无暂停,有就调用暂停程序,执行暂停;直到第一节倒计时间到时,自动运行2分钟(节间休息)倒计时,时间到后,又进行第二节的比赛。第二节、第三节、第四节与第一节的处理力‘法相同,只是第二节打完后(半场)休息时间为10分钟。当第四节比赛时|’开J到时,比较红、篮两队的得分数,如果不相等,就结束比赛,否则就要进行10分钟的加时赛,打完加时赛,再进行比较,直到红、篮两队的得分数不相等为止,才结束比赛,程序运行结束。

睡2程序流程圈.

五、仿真实验

(下转第44页)

万方数据

2NO、十2NaOH。NaN02+NaN03+20NO+N02+2NaOH。+2Na

NO,+H,0该法主要用于处理硝酸生产尾气、硝化反应尾气以及使用硝酸处理金属产生的废气。这类废气中NO.浓度一般在1

000—

氮气对燃烧无益,反而由于大量的氮气被加热排人大气造成大量热损失,最重要的是氮气在高温下与氧气生成的NO。占燃烧中产生No大部分。

3、分级燃烧。分级燃烧其主要原理是,无论热反应型或燃烧型NO。,燃烧Ⅸ的氧浓度(即过量空气系数)对NO、的生成量影响很大,当过量空气系数0【小于1时,燃烧区处_F“富燃料燃烧”状态,对减少No的生成量由明显的效果。

5000PPm之间,有时更高,但排放量并不大。2、尿素一硝酸溶液吸收法。我国某航大发射中心对于加注系统及库房产生的氮氧化物废气,就是采用这种方法处珲的。该处理系统经多年使用证明,其处理氮氧化物的效率高,性能稳定。处理气苗为250-850m3/h;

喷淋吸收液量为2—3m:{/h。3、水一硫酸哑铁两段吸收法。氮氧化

物废气常采用水吸收处理。由于水吸收NO的效率很低,而FeS04对NO具有很高的吸收率,生成不稳定的络合物Fe(NO)So,。其反应方程式:FeSO。+NO—Fe(No)SO.所以,对于氮氧化物废气采用水一硫酸亚铁两段喷淋吸收法处理,能收到一定的效果。

4、高性能燃烧器的应用。必须大力开发研究适合我国国情的高效低污染燃烧技术,强化高效,防结渣、低No、排放的商陛

能燃烧器的开发与应用研究。

5、采用流化床燃烧。流化床能够在燃烧过程中有效的控制No、的产生和排放,是一种“清洁”的燃烧方式,流化床内的燃烧温度可以控制在800-950℃的范围内而保持稳定和高效的燃烧,同时抑制r热反应型No的形成,如果同时采用分级燃烧方式送入二次风,又可控制燃料型No,的产生,在一般情况下NO、的生成量仅为煤粉燃烧的1/3~1/4,可以控制N0。的排放量小于200mg/Nm3~300mg/Nm3。

(四)Fe—EDTA—S032一络合吸收法。固定燃烧装置排放烟道气

中的氮氧化物,90%以上的是No,若用溶液吸收,必须使No氧化为NQ,吸收效果才好。而用Fe—EDTA络合物吸收NO,则可直接与NO络合,在还原剂存在的条件下,NO被还原成NH(S0。H)。、N20或N,,达到去除NO、的目的。该方法在国内尚未有报道,国外也仅见日本用于中试装置。

(五)燃烧过程中N0,的控制方法。从No、的成因我们知道:NOx的生成主要与燃烧火焰的温度、燃烧气体中氧的浓度、燃烧气体在高温下的滞留时间及燃料中的含氧量因素有关。因此,能通过燃烧技术控制No、的生成环境从而抑制No,的生成。在煤燃

四、结语

综上所述,No、的危害是不可忽视的,虽然在NO、的控制与治理方面已取得了一定的进展,但从长远来说,要想控制N0。,还必须有更有效的治理方法。

目前,因。t述治理m、的方法具有各自的特殊技术、经济特点,人们对此评价不一,就现在及未来的技术发展看,我认为,我国应坚持从我国国情出发,按照选择技术上成熟,经济效益好

烧过程中,生成N0、的途径有三个:1,热力型NO.(ThermalNO.),

它是空气中氮气在高温下氧化而生成的NO、;2、燃料型NO、(FueNO.),它是燃料中含有的氮化合物在燃烧过程中热分解而又接着氧化生成的NO、;3、快速型NO,(PromptNO、),它是燃烧时空气中的氮和燃料中的碳氢离子团如cH等反应生成的N0。

1、烟气再循环法。控制燃烧过程巾热反应型No的有效方法是降低燃烧温度和燃烧区的氧含量。降低火焰温度的方法很多,目前使用较多的是烟气再循环的方法。把空气预热器前的一部分烟气与燃烧用的空气混合,通过燃烧器送入炉内。由于温度较低的惰性烟气进入炉内,达到了同时降低炉内温度水平和氧气浓度的目的。烟气再循环法使用不当会引起燃烧不稳定的问题,此外烟气再循环需要加装风机、风道,还需要场地,从而增大了投资,系统较复杂,对原有设备进行改装时常受场地不够的限制。

2,全氧燃烧。在空气与燃料的燃烧过程中,占空气79%的(上接第40页)

在Kei1uVision软件中编写好程序,通过Proteus画原理图,将编好的程序载入,得到仿真图形,如图3所示。

且能满足国家环保要求的技术发展原则,同时对新技术的应用,

老工艺流程的改造与革新,无害工艺的研究与应用等都要给予重视,并大力提倡。在治理NO:的同时,还要有效控制NO-"的来源,做到“堵害”和“治害”两手抓。

因此,洁净煤技术的研究开发与应用,已成为当务之急。必须人力开发研究适合我国国情的高效低污染燃烧技术,强化高效、防结渣、低NO、排放的高性能燃烧器的开发与应用研究.

参考文献[1】何息忠.金属碳基催化剂催化还原法治理氮氧

化物在航天发射场的应用.污染防治技术,1995(4);【2】赵利敏等.

燃烧过程N0的生成及控制技术.电站系统工程.1996;【3】王丽萍等.大气污染控制工程,北京:煤炭工业出版社,2002

(作者单位:徐州市市政设计院有限公司)

六、篮球计分器制作与调试

在Protel中,晒出电路原理图,完成P西板的制作。并打

印PCB的焊盘图形,通过转印机转印,腐蚀电路板,钻孔后完成PCB板的加工。

将编好的程序,通过编程器写入到AT89S52中。

将所有元件检测后,确保所有元件良好,再安装、焊接元件。在焊接完所有元器件之后,仔细检查电路中是否存在短路、虚焊等现象。检查无误后,通电调试,直到满足设计要求为止。

七、结束语

圈3篮球计分嚣的PIolcus仿真效果.

本设计系统采用MCS-51单片机AT89S52实现,外围电路简单,可维护性强;该系统在我校的篮球比赛中已经应用J,三年,效果非常好,完全能满足篮球比赛巾计时、记分的设计要求,通过改变系统软件的方法,还可以将该系统改为乒乓球、排球计分系统。

按下s11可进行复位,按下P1.O/Sl到PI.2/¥3可实现红队的加1分、加2分、减1分,按下P1.3/¥4到P1.5/S6可实现篮队的加1分、加2分、减1分,通过Po口输出不同的字型码L1,L2数码管的显示。

按下P3.2/S9,由于单片机的中断口的内部是一个JK触发器,输入一个方波,在下降沿有效,所以外部中断0的响嘘,使定时器To开始工作,右Po口输出不同的字型码,进行12分倒计时,按下P3.3/slo,外部中断1的响应,使定时器T1停止工作,计时将会停止。

2009.Noll

MCS51单片机篮球计分器的设计

参考文献:…1刘守义主编.((单片机应用技术》【M】.西安

电子科技大学出版社,2002年.【2]张大明主编.《单片微机控制应用技术))【M】.机械工业出版社,2000年.【3】李俊婷主编.((计

算机辅助电路设计与ProtelDxP))【M】.高等教育出版社,2005年.

(作者单位:重庆三峡职业学院)

万方数据

MCS51单片机篮球计分器的设计

MCS-51单片机篮球计分器的设计

作者:胡建明

作者单位:重庆三峡职业学院

刊名:科学咨询

英文刊名:SCIENTIFIC CONSULT

年,卷(期):2009,""(11)

被引用次数:0次

参考文献(3条)

1.刘守义 单片机应用技术 2002

2.张大明 单片微机控制应用技术 2000

3.李俊婷 计算机辅助电路设计与Protel DXP 2005

本文链接:.cn/Periodical_kxzx200911038.aspx

下载时间:20xx年11月11日

相关推荐