篮球比赛计分器

2020-03-03 01:49:01 来源:范文大全收藏下载本文

课程

单片机原理及应用课程设计

一、设计目的:训练学生综合运用己学课程的基本知识,独立进行单片机应用技术开发工作,掌握单片机程序设计、调试,应用电路设计、分析及调试检测。

二、设计要求:

1.应用MCS-51单片机设计一个篮球比赛计分器;

2.能显示2个队的当前比分;根据各自得分情况进行加1, 2,3分;

3.硬件设计根据设计的任务选定合适的单片机,根据控制对象设计接口电路。设计的单元电路必须有工作原理,器件的作用,分析和计算过程;

4.软件设计根据电路工作过程,画出软件流程图,根据流程图编写相应的程序,进行调试并打印程序清单;

5.原理图设计根据所确定的设计电路,利用Protel等有关工具软件绘制电路原理图、PCB板图、提供元器件清单。

三、参考资料:

[1] 单片微型计算机与接口技术,李群芳、黄建编著,电子工业出版社; [2] 单片机原理及应用,张毅刚编著,高等教育出版社;

[3] 51系列单片机及C51程序设计,王建校,杨建国等编著,科学出版社; [4] 单片机原理及接口技术,李朝青编著,北京航空航天大学出版社;

完成期限

2011.3.14—2011.3.18 指导教师

专业负责人

2011年

3 月 13 日

一、设计原理

1. 电路原理及用途

篮球比赛计分器其实就是一个计数器,本次课程设计就是利用单片机中的定时/计数器来实现其计分的功能。在52单片机中有两个16位的定时/计数器T0,T1,分别由TH0、TL0和TH

1、TL1组成,它们均是8位寄存器,在特殊功能寄存器中占地址8AH-8DH。它们用于存放定时或计数的初始值。此外,内部还有一个8位的方式寄存器TMOD和一个8位的控制寄存器TCON。用于选择和控制定时/计数器的工作。

根据设计的任务要求,本设计任务主要具有以下几个模块:单片机模块;按键模块;数码显示模块。本设计由单片机模块部分植入主程序,通过按键部分进行加

1、

2、3分以及减1分操作,最终在3个LED数码管上显示结果。

本系统是以汇编语言作为编辑语言,采用单片机AT89C52作为本设计的核心元件。利用7段共阳LED作为显示器件。在此设计中共接入了3个7段共阳LED显示器,分别表示个位,十位,百位用于记录该队的分数, 3个LED显示器显示范围可达到0~999分,能够满足篮球比赛的需要。并设置有4个按键:K1,K2,K3,K4。当比赛队得1分时,按下k1键加1分,得2分时按k2键加2分,得3分时按下k3键加3分。如分数计错需减分时,每按一次k4键减1分。

2.设计框图

二、设计步骤和调试过程

1、总体设计电路

2、模块设计和相应模块程序 (1) 硬件设计

 单片机模块

本次设计用到了其中的P0,P1,P2,P3口,分别用于百位,开关,个位,十位 。各管脚的功能和用法如下述。

P0口:P0口为一个8位漏极开路双向I/O口,当作输出口使用时,必须接上拉电阻才能有高电平输出;当作输入口使用时,必须先向电路中的锁存器写入“1”,使FET截止,以避免锁存器为“0”状态时对引脚读入的干扰。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,它不再需要多路转接电路MUX;因此它作为输出口使用时,无需再外接上拉电阻,当作为输入口使用时,同样也需先向其锁存器写“1”,使输出驱动电路的FET截止。

P2口:P2口电路比P1口电路多了一个多路转接电路MUX,这又正好与P0口一样。P2口可以作为通用的I/O口使用,这时多路转接电路开关倒向锁丰存器

Q端。

P3口:P3口特点在于,为适应引脚信号第二功能的需要,增加了第二功能控制逻辑。当作为I/O口使用时,第二功能信号引线应保持高电平,与非门开通,以维持从锁存器到输出端数据输出通路的畅通。当输出第二功能信号时,该位应应置“1”,使与非门对第二功能信号的输出是畅通的,从而实现第二功能信号的输出。

其中P1的1~4脚分别接上开关K1~K4,P0的36~39脚接上上拉电阻和数码显示的百位,P2的21~24脚接数码显示的个位,P3的10~13脚接数码显示的十位。VCC脚和XTAL分别接上5V电源和12M的晶振。

 按键模块

根据设计要求,该篮球赛计分器共有4个按键:K

1、K

2、K

3、K4,分别实现 4

的功能是加

1、

2、3分和减1分。K1与P1的1脚相连,K2与P1的2脚相连,K3脚与P1的3脚相连,K4键与P1的4脚相连,4个按键共用一个地端,如图2所示。

 数码显示模块

本设计显示部分采用的是7段共阳LED数码管显示,LED就是发光二极管,相对LET来说它的优势在于节能环保,保护视力,使用寿命长等优点。数码管实际上是由7个发光管组成8字形构成的,加上小数点就是8个。我们分别把他命名为A,B,C,D,E,F,G,H,如图所示。

假设要显示一个数字2, 那么 A、B、G、E、D这5个段的发光管亮就可以了,C、F、H不亮,同时由于接法为共阳接法,那么为低电平是亮,为高电平是灭。 5

从高往低排列, P1.7-P1.0写成二进制为01111110, 把它转化为16进制则为A2H。

数码管的接口有静态接口和动态接口两种。

动态接口采用各数码管循环轮流显示的方法,当循环显示的频率较高时,利用人眼的暂留特性,看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出,另一接口完成各数码管的轮流点亮。

静态接口为固定显示方式,无闪烁,其电路可采用一个并行口接一个数码管,数码管的公共端按共阳接VCC,本次课程设计由于所需数码管较少,故可用这种方法接线。这种接法占用接口多,仅能接少量数码管。

本次课程设计的比分范围是0~999,所以采用的3个7段共阳LED来显示,分别显示个位十位百位,其中P2显示个位,P3显示十位,P0显示百位。由于P0没有内置电阻,因此在使用时需外接一个上拉电阻。

(2) 软件设计

篮球比赛计分器其实就是一个计数器,本次课程设计就是利用单片机中的定

时/计数器来实现其计分的功能。在52单片机中有两个16位的定时/计数器T0,T1,分别由TH0、TL0和TH

1、TL1组成,它们均是8位寄存器,在特殊功能寄存器中占地址8AH-8DH。它们用于存放定时或计数的初始值。此外,内部还有一个8位的方式寄存器TMOD和一个8位的控制寄存器TCON。用于选择和控制定时/计数器的工作。

篮球比赛计分器利用单片机的计数器进行工作,计数器对脉冲电平进行加1计数,直至计满回零。作为可编程器件,单片机中的定时/计数器初始化编程步骤如下:

根据定时时间要求或计数要求计算计数器初值; 将工作方式控制字写入TMOD寄存器; 将计数初值写入THX和TLX寄存器; 启动定时器/计数器,即将TRX置位。

如果工作于中断方式,需置位EA(中断总开关)及ETX(允许定时/计数器中断),并编写中断服务程序。

 实验程序:

ORG 0000H STA MOV R0,#00H MOV R1,#00H MAIN: MOV P1,#0FFH MOV A,P1 CJNE A,#0FEH,LP1 INC R0 ACALL DELAY AJMP MAIN LP1: CJNE A,#0FD,LP2 INC R0 INC R0 ACALL DELAY AJMP MAIN LP2: CJNE A,#0FBH,LP3 INC R0

7 INC R0 INC R0 ACALL DELAY AJMP MAIN LP3: CJNE A,#0F7H,LP4 INC R1 ACALL DELAY AJMP MAINL LP4: CJNE A,#0EFH,LP5 INC R1 INC R1 ACALL DELAY AJMP MAIN LP5: CJNE A,#0DFH,MAIN INC R1 INC R1 INC R1 ACALL DELAY AJMP MAIN DELAY: MOV R2,#10H DISPL: MOV A,R0 ANL A,#0FH MOV DPTR,#TAB MOV A,@A+DPTR MOV P2,#01H MOV P0,A MOV A,R0 ANL A,#0FH SWAP A MOV DPTR,#TAB MOV A,@A+DPTR MOV P2,#02H MOV P0,A DISPL2: MOV A,R1 ANL A,#0FH MOV DPTR,#TAB MOV A,@A+DPTR MOV P2,#04H MOV P0,A MOV A,R1 ANL A,#0FH

SWAP A MOV DPTR,#TAB MOV A,@A+DPTR MOV P2,#08H MOV P0,A DJNZ R2,DISPL RET TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,6FH,77H,7CH,39H,5EH,79H,71H,76H,73H END

3、仿真及仿真结果分析

本次课程设计用到的仿真软件有Protues和Keil uvision。在用Protues进行仿真之前,先要用KEIL UVISION软件将我们编写好的汇编程序编译。具体方法是先新建一项目,之后输入编写的程序,输入完成后保存然后执行项目、编译,在目标文件夹内生成编译好的程序文件,其中*.HEX文件就是我们所需要的目的文件,在之后电路设计好后用于导入AT89C52中执行其功能。然后在生成*.HEX文件后,进入Protues软件,此时软件已自动打开一新建项目。我们可直接在其中构建电路图,点击板面左侧按键P,在弹出的Pick devices对话框中进行元器件的选择,元器件都找到后,先进行排版再按照电路图连接,连接好后,双击AT89C52在弹出对话框中选择单片机中要输入的程序,在输入程序后,即可开始进行仿真了,选择执行后点击开关可观察到数码管亮,并能实现加

1、加

2、加

3、减1功能。仿真效果如下图。

4、实验调试结果

打开 Proteus 上的单片机控制步进电机电路图,点击 AT89C51 单片机,调用后缀名为.”HEX”的文件。点击运行,观察现象,3个数码管均显示为0。如下图所示。

然后进行了如下操作:当按下k1键,从左往右(后同)的第3个数码管显示1,再按下k2键,第3个数码管显示3,按下k3键,第3个数码管显示6,再按下k4键,第3个数码管显示5,与设计的要求相符。显示5的仿真图如下图所示.

经过多次反复测试,本系统已能达到设计所要求的所有功能。

三、结论及心得体会

这次课程设计历时一个星期左右,通过这段时间的学习,发现了自己很多的不足,自己知识的很多漏洞,看到了自己的实践经验还是比较缺乏,理论联系实际的能力还急需提高。

在学习中,虽然在理论上对单片机有了简单基本的了解,但是在真正的动手操作中还是存在很多的不足,更多的是对知识的应用上能力有所欠缺,以至完成这样一个简单的设计花费了不少时间。但是最终通过自己的努力,查阅资料,询问同学,完成了这次的单片机的设计,在以后的学习中我也会更多的重视自己理论和实践的结合能力,提高自身综合能力。

最后,我还要感谢在此次课程设计中帮助过我的老师和同学。在他们的鼎力帮助我才能顺利的完成了本次课程设计。

参考文献

[1] 单片微型计算机与接口技术,李群芳、黄建编著,电子工业出版社; [2] 单片机原理及应用,张毅刚编著,高等教育出版社;

[3] 51系列单片机及C51程序设计,王建校,杨建国等编著,科学出版社; [4] 单片机原理及接口技术,李朝青编著,北京航空航天大学出版社 [5] 唐颖. 《单片机原理与应用》[M].北京:北京大学出版社,2008

违章计分

导游计分

篮球比赛

篮球比赛

篮球比赛

篮球比赛

篮球比赛

篮球比赛

篮球比赛

篮球比赛

《篮球比赛计分器.doc》
篮球比赛计分器
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
下载全文