乒乓球计分器.docx

上传人:b****2 文档编号:18139886 上传时间:2023-08-13 格式:DOCX 页数:17 大小:23.88KB
下载 相关 举报
乒乓球计分器.docx_第1页
第1页 / 共17页
乒乓球计分器.docx_第2页
第2页 / 共17页
乒乓球计分器.docx_第3页
第3页 / 共17页
乒乓球计分器.docx_第4页
第4页 / 共17页
乒乓球计分器.docx_第5页
第5页 / 共17页
乒乓球计分器.docx_第6页
第6页 / 共17页
乒乓球计分器.docx_第7页
第7页 / 共17页
乒乓球计分器.docx_第8页
第8页 / 共17页
乒乓球计分器.docx_第9页
第9页 / 共17页
乒乓球计分器.docx_第10页
第10页 / 共17页
乒乓球计分器.docx_第11页
第11页 / 共17页
乒乓球计分器.docx_第12页
第12页 / 共17页
乒乓球计分器.docx_第13页
第13页 / 共17页
乒乓球计分器.docx_第14页
第14页 / 共17页
乒乓球计分器.docx_第15页
第15页 / 共17页
乒乓球计分器.docx_第16页
第16页 / 共17页
乒乓球计分器.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

乒乓球计分器.docx

《乒乓球计分器.docx》由会员分享,可在线阅读,更多相关《乒乓球计分器.docx(17页珍藏版)》请在冰点文库上搜索。

乒乓球计分器.docx

乒乓球计分器

乒乓球计分器

单片机技术

课程设计说明书设计课题:

乒乓球电子计分器专业(系)电气工程系班级智能电子081班学生姓名杜慧娟指导老师陈新喜完成日期2019年4月26号目录

一、设计任务与要求2

二、方案设计与论证2

三、硬件电路设计3

四、软件设计8

五、安装与调试13

六、使用说明15

七、心得体会16

参考文献

附录

电路原理图

电路PCB图

元器件清单详细程序清单成绩评定表

一、设计任务与要求

1.设计一个乒乓球电子记分器。

2.能用按键控制比分,并在数码管上显示,能一键切换。

二、方案设计与论证

1.总体设计分析

单片机的集成度高,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,

可靠性高,抗干扰能力强和使用方便等独特的优点。

所以本课题采用单片机AT89S51作为

本设计的核心元件。

利用7段共阳数码管作为显示器件。

在此设计中共接入了8个7段共阳LED显示器,用于记录两队的分数。

当比赛需要加分时,按下S1进行切换。

接通电源

后,直接进入右边数码管的加减分模式。

按下S2键给右队加1分,,如分数计错需减分

时,,按下S3键减1分。

按下S1,进入左边数码管的加减分模式。

按下S2给左队加分。

如分数记错需要减分时,按下S3键减1分.S4键控制大比分.比赛结束时按下复位键即可将两队的计分牌清零。

2.功能模块方案设计

模式一:

按下S2给左边加分,按下S3给左边减分。

模式二:

按下S2给右边加分,按下S3给右边减分。

3.方案确定

选定方案描述:

在像乒乓球这样的竞技比赛中,记分器占着很大的作用。

如果我们就只在心里记着双方的比分,显然是不实际的,而且在现在的乒乓球比赛中采用的都是11分制。

因此我们

不能再用传统的记分方式了。

本次课题采用单片机设计了一个乒乓球的记分器,该记分器操作简单,使用安全,方便,能满足广大乒乓球爱好者的需要。

总系统图:

三、硬件电路设计

1.89S51单片机芯片介绍

单片机就是一块硅片上集成了中央处理器(cpu)存储器和输入输出接口(并行I/O串

行通信口)振荡电路,计数器等电路的一块集成电路,这样的一块集成电路具有一台计算机的基本功能,因而被称为单片微型计算机,简称单片机(MCU).MCS-51单片机是美国INTE公司于1980年推出的产品,典型产品有8031(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用HMOS功耗是630mW/是89C51的5倍,实际使

用方面已经被市场淘汰)和8751等通用产品,一直到现在,MCS-51内核系列兼容的单片机仍是应用的主流产品,比如目前流行的89S51。

有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由MCS-51单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51内核实际上已经成为一个8位单片机的标准。

其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。

同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、

89S51,PHILIPS(菲利浦),和WINBOND华邦)等,我们常说的已经停产的89C51指

的是ATMEI公司的AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由

Flash(程序存储器的内容至少可以改写1000次)存储器取带了原来的ROM(—次性写入),AT89C51的性能相对于8051已经算是非常优越的了。

不过在市场化方面,89C51受到了PIC单片机阵营的挑战,89C51最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP功能等新功能才能更好延续MCS-51的传奇。

89S51就是在这样的背景下取代89C51的,现在,89S51目前已经成为了实际应用市场上新的宠儿,作为市场占有率第一的Atmel目前公司已经停产AT89C51,将用AT89S51代替。

89S51在工艺上进行了改进,89S51采用0.35新工艺,成本降低,而且将功能提升,增加了竞争力。

AT89S51/LS51单片机是低功耗的、具有4KB在线课编程Flash存储器的单片机。

它与通用80C51系列单片机的指令系统和引脚兼容。

片内的Flash可允许在线重新编程,也可使用非易失性存储器编程。

他将通用CPU和在线可编程Flash集成在一个芯片上,形成了功能

强大、使用灵活和具有较高性能性价比的微控制器。

1)AT89S51具有如下特性:

--片内程序存储器含有4KB的Flash存储器,允许在线编程,檫写周期可达1000次;

--片内数据存储器内含128字节的RAM;

--I/O口具有32根可编程I/O线;

--具有两个16位I/O线;

--中断系统具有6个中断源、5个终端矢量、2个中断优先级的中断结构;--串行口是一个全双工的串行通信口;

--具有两个数据指针DPTRC和DPTR1

--低功耗节电模式有节电模式和掉电模式;

--包含3级程序锁定位;

--AT89S51的电源电压为4.0-5.5V

--振荡器频率0-33MHz(AT89S51)

--具有片内看门狗定时器;

--灵活的在线片内编程模式(字节和页编程模式);

--具有断电标志模式POF

2)89S51相对于89C51增加的新功能包括:

--新增加很多功能,性能有了较大提升,价格基本不变,甚至比89C51更低!

--

ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。

是一个强大易用的功能。

--最高工作频率为33MHz89C51的极限工作频率是24M就是说S51具有

高工作频率,从而具有了更快的计算速度。

--具有双工UART串行通道。

--内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电

路。

--双数据指示器。

--电源关闭标识。

--全新的加密算法,这使得对于89S51的解密变为不可能,程序的保密性大

大加强,这样就可以有效的保护知识产权不被侵犯。

--兼容性方面:

向下完全兼容51全部字系列产品。

比如8051、89C51等等早

期MCS-51兼容产品。

也就是说所有教科书、网络教程上的程序(不论教科书上采用的单片机是8051还是89C51还是MCS-51等等),在89S51上一样可以照常运行,这就是所谓的向下兼容。

3)引脚排列及功能

P0口:

P0口为一个8位漏级开路双向I/O口,

每脚可吸收8TTL门电流。

当P1口的管脚第

一次写1时,被定义为高阻输入。

P0能够用

于外部程序数据存储器,它可以被定义为数

据/地址的第八位。

在FIASH编程时,P0口

作为原码输入口,当FIASH进行校验时,P0

输出原码,此时P0外部必须被拉高。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器

能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用

作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接

收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的

缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地

址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八

位地址信号和控制信号。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可

接收输出4

个TTL门电流。

当P3口写入

“1”后,它们被内部上拉为高

电平,并用作输入。

作为输入,

由于外部下拉为低电平,P3口将

输出电流(ILL)这是由于上拉

的缘故。

除此之外P3口还具有

以下功能,如表所示:

2.电路介绍

1)电源部分

电源主要采用+5V电源,安全且节能环保,符

合设计要求和环保要求。

2)按键、时钟部分

按键部分主要由加分按钮、减分按钮、复位按

钮三部分组成。

其中S1为切换按钮,S2为加分按

钮,S3为减分按钮,S4操作需显示的大比分。

时钟部分构成单片机的最小系统。

3)显示部分

显示部分我们主要采用7段共阳LED数码管实际上是由7个发光管组成8字形构成

的,加上小数点就是8个。

4)复位电路

构成单片机最小系统

四、软件设计

统的操作过程和工作过程在程序的设计过程中起着很重要的指导作用,因此在软件设计之前应首先分析乒乓球比赛记分器的工作原理。

当比赛开始时,先判断是哪队得分,每次加分加1分。

如果不小心加错分了,则按键减去多加的分。

S4控制大比分。

当比赛开始时,首先按复位键清除场上比分,按S1切换

加减分的双方。

根据以上对工作流程的分析,软件设计可以分为以下几个模块:

1.键盘扫描

UINT8Scankey(void)

{

UINT8key;

if((P3&0x0f)==0x0f)

return(0xff);

Delay(10);

if((P3&0x0f)==0x0f)

return(0xff);

key=P3&0x0f;

while((P3&0x0f)!

=0x0f);return(key);}

2.显示函数

voidDisplay(void)

{

staticUINT8num=0;

UINT8temp0,temp1,temp2,temp3,temp5,temp6,temp7;if(i==1)

{

temp0=jifen;

temp1=XA%10;

temp2=XA/10;

temp3=DA%10;

temp5=DB%10;

temp6=XB%10;

temp7=XB/10;

}if(i==2)

{

temp0=jifen;

temp1=XA%10;

temp2=XA/10;

temp3=DA%10;

temp5=DB%10;

temp6=XB%10;

temp7=XB/10;

}

P2=0xff;

switch(num)

{

case0:

P0=SEGMENT[temp0];case1:

P0=SEGMENT[temp1];case2:

P0=SEGMENT[temp2];case3:

P0=SEGMENT[temp3];case4:

P0=0xf6;break;break;break;break;break;case5:

P0=SEGMENT[temp5];

case6:

P0=SEGMENT[temp6];

case7:

P0=SEGMENT[temp7];

}

P2=SELECT[num];num++;if(num==8)num=0;}

3.主函数main(){

UINT8c;Init();

while

(1)

{c=Scankey();

switch(c)

{caseS1:

S_1();break;caseS2:

S_2();break;caseS3:

S_3();break;caseS4:

S_4();break;

}}

break;

break;

break;

4.延时函数

voidDelay(UINT16t){

UINT16i,j;for(i=0;i

for(j=0;j

}

5.其他程序

voidS_1(){i++;if(i==3)i=1;

}

voidS_2(){if(i==1){XA=XA+jifen;}if(i==2){XB=XB+jifen;

}

}voidS_3(){if(i==1)

{

XA=XA-jifen;

}

if(i==2){XB=XB-jifen;

}

}

voidS_4(){if(i==1){

DA=DA+jifen;XA=0;XB=0;

}if(i==2){

DB=DB+jifen;XB=O;XA=O;

}

}

voidInit(){TMOD=0x01;TH0=0xf8;TL0=0x30;TR0=1;IE=0x82;

}

主流程图:

五、安装与调试

1.调试的条件与方法:

1)不通电检查

检查连线电路安装完毕后,不要急于通电,先认真检查接线是否正确,包括

错线、少线、多线。

多线一般是因接线时看错引脚,或者改接线时忘记去掉原来的旧线造成的,在实验中经常发生,而查线时又不易发现,调试时往往会给人造成错觉,以为问题是由元气件造成的。

为了避免做出错误判断,通常采用2种查线方法:

一种方法是按

照设计的电路图检查安装的线路,把电路图上的连线按一定顺序在安装好的线路中逐

一对应检查,这种方法比较容

易找出错线和少线;另一种方法是按实际线路来对照电路原理图,按照2个元件引脚

连线的去向查清,查找每个去处在电路图上是否存在,这种方法不但能查出错线和少线,还能检查出是否多线。

不论用什么方法查线,一定要

在电路图上对查过的线做出标记,并且还要检查每个元件的引脚的使用端数是否与图纸相符。

查找时最好用指针式万用表的“RX1”,或用数字万用表的“X档”。

直观检查直观检查电源、地线、元件引脚之间有无短路;连线处有无接触不

良;二极管、三极管、电解电容等引脚有无错接;集成电路是否插对等。

2)通电观

察把经过准确测量的电源电压加入电路,电源接通之后不要急于测量数据和观察结果,首先要观察有无异常现象,包括有无冒烟,是否闻到异常气味,手模元件是否发烫,电源是否有短路现象等。

如果出现异常现象,应立即关断电源,待排除故障后方可重新通电。

然后再测量各元件引脚的电源电压,而不是只测量各路总电源电压,以保证元器件正常工作。

3)分块调试。

调试包括测试和调整两个方面。

测试是在安装后对电路的参数及工作状态进行测量,调整是指在测试的基础上对电路的参数进行修正,使之满足设计要求。

为了使测试顺利进行,设计的电路图上应标出各点的电位值、相应的波形以及其它数据。

测试方法有2种:

第一种是采用边安装边调试的方法,也就是把复杂的电路按原理图上的功能分成块进行安装调试,在分块调试的基础上逐步扩大安装调试的范围,最后完成整机调试。

采用这种方法能及时发现问题,因此是常用的方法,对于新设计的电路更是如此。

一种方法是整个电路安装完毕,实行一次性调试。

这种方法适用于简单电路或定型产品。

分块调试是把电路按功能分成不同的部分,把每个部分看成一个模块。

比较理想的调试程序是按信号的流向进行,这样可以把前面调试过的输出信号作为后一级的输入信号,为最后的联调创造条件。

4)整机联调在分块调试的过程中,由于是逐步扩大调试范围,故实际上已完成了某些局部联调工作。

下面只要作好各功能块之间接口电路的调试工作,再把全部电路接通,就可以实现整机联调。

整机联调只需要观察动态结果,即把各种测量仪器及系统本身显示部分提供的信息与设计指标逐一比较,找出问题,然后进一步修改电路参数,直到完全符合设计要求为止。

2.使用仪器设备

数字万用表、示波器、电烙铁3.测试数据分析

单片机的电压应是4.0-5.5V。

数码管的电流:

静态时,10-15mA;动态时,16/1动态扫描时,平均电流为4-5mA

峰值电流50-60mA。

六、乒乓球电子记分器使用说明

1.使用前注意事项

(1)轻拿轻放,确定放置的地方平坦、干燥。

(2)打开电源开关,记分器会自动

清零。

(3)确认电源指示灯亮着,如果不亮检查是否电源二极管烧坏,如果是则更换

二极管。

(4)如果数码管不能显示,则检查三极管是否完好,如果三极管能正常工作,

则检查数码管能否正常工作。

(5)如果数码管亮度不均,查看控制数码管电流的电阻是否损坏2.小比分加分操作

按下总开关,接通电源。

按下S2给左边的数码管加分,如果要给另外一队加分,则

只需要按下S1,再按下S2加分。

按下复位键,则清零。

3•小比分减分操作

按下总开关,接通电源。

按下S3给左边的数码管减分,如果要给另外一队加分,则

只需要按下S1,再按下S3减分。

按下复位键,则清零。

4.大比分控制操作

七、心得体会

本系统主要是利用的AT89S51单片机的原理来设计,性能优良。

由于单片机的强大功

能,所以有很大的改良型,能够进一步的完善和加强它的功能。

通过一周的课程设计,使我得到了很多知识,并找出了平时学习中的不足以及知识上的误区。

平时在练习过程中遇到过很多大大小小的问题,但是都没有及时的解决,以至于很多知识点都很模糊。

从此次设计可以看出我们在学习的过程中缺乏动手能力,这也是作为一个即将踏上工作岗位上的人的一大弊端,如果知道的晚的话也许会影响以后的工作。

在这次设计中我知道了它的重要性,所以在今后的学习中我会认真的对待这一错误。

让自己变的更加完美,用知识充实自己的大脑。

参考文献

[1]王静霞.《单片机原理及应用》电子工业出版社.2019.5.[2]姚金生,郑小利等

元器件。

北京:

电子工业出版社,2019

[3]张宪,王春娴等电子元器件的选用与检测问答。

北京:

化学工业出版社,2019

附录:

电路原理图PCB图元器件清单详细程序清单

成绩评定表

附录一:

电路原理图:

附录二:

PCB图

附录三:

元件清单

附录四:

详细程序设计

#include

typedefunsignedcharUINT8;

typedefunsignedintUINT16;#defineS10x0e#defineS20x0d#defineS3

0x0b#defineS40x07

UINT8codeSEGMENT[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,

0x80,

0x90,0xbf,0xf6,0xff};

UINT8codeSELECT[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

UINT8DA=0,XA=0,DB=0,XB=0,i=1,jifen=1;voidDelay(UINT16t){

UINT16i,j;

for(i=0;i

for(j=0;j

voidDisplay(void){

staticUINT8num=0;

UINT8temp0,temp1,temp2,temp3,temp5,temp6,temp7;if(i==1){

temp0=jifen;temp1=XA%10;temp2=XA/10;temp3=DA%10;temp5=DB%10;temp6=XB%10;temp7=XB/10;}

if(i==2){

temp0=jifen;temp1=XA%10;temp2=XA/10;temp3=DA%10;temp5=DB%10;temp6=XB%10;temp7=XB/10;}

P2=0xff;

switch(num){

case0:

P0=SEGMENT[temp0];case1:

P0=SEGMENT[temp1];case2:

P0=SEGMENT[temp2];break;break;break;case3:

P0=SEGMENT[temp3];case4:

P0=0xf6;case5:

P0=SEGMENT[temp5];case6:

P0=SEGMENT[temp6];case7:

P0=SEGMENT[temp7];}

P2=SELECT[num];num++;if(num==8)num=0;}

UINT8Scankey(void){

UINT8key;

if((P3&0x0f)==0x0f)return(0xff);Delay(10);if((P3&0x0f)==0x0f)return(0xff);key=P3&0x0f;while((P3&0x0f)!

=0x0f);return(key);}voidS_1(){

i++;if(i==3)i=1;}

voidS_2(){

break;break;break;break;break;

if(i==1){

XA=XA+jifen;}

if(i==2){

XB=XB+jifen;}}

voidS_3(){

if(i==1){

XA=XA-jifen;}

if(i==2){

XB=XB-jifen;}}

voidS_4(){

if(i==1){

DA=DA+jifen;XA=0;XB=0;}

if(i==2){

DB=DB+jifen;XB=0;XA=0;}

}voidInit(){

TMOD=0x01;TH0=0xf8;TL0=0x30;TR0=1;IE=0x82;}main(){

UINT8c;

Init();while

(1){

c=Scankey();switch(c){

caseS1:

S_1();break;caseS2:

S_2();break;caseS3:

S_3();break;caseS4:

S_4();break;}}}

voidtimer0(void)interrupt1{

TH0=0xf8;TL0=0x30;Display();}

附录五:

电气工程系《单片机技术》课程设计成绩评定表

专业:

智能电子班级:

智能电子081学号:

姓名:

杜慧娟时间:

2019年月日

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

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

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

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