1、课程内容 单片机课程设计 题目 篮球比赛专业测控技术与仪器 基于单片机的电子记分牌 姓名*学号* 1、任务是以单片机为控制核心,遵循篮球比赛规则进行设计一种可以记录游戏得分和游戏剩余时间的装置。具有基本功能的电子记分牌。 2、设计要求 1 要求实时记录比赛的比分和剩余时间。 2 通过对单片机编程,可以显示得分和剩余时间。 3、设计一个篮球24秒计时器,在还剩5秒时发出提示音。 4 提交设计报告、电路图和程序源代码。 3.参考文献1张以刚.单片机原理与应用M.北京:高等教育出版社,2004.2 刘润华,刘立山。模拟电子技术学报。山东:石油大学出版社,2003.3 周润静,张丽娜等。保护
2.美国入门教程M.北京:机械工业出版社,2007.4印石。电工电子生产基础M.武汉:华中科技大学出版社,2008.5 彭杰华。电子技术课程设计指南J.北京:高等教育出版社篮球比赛电子记分牌,1997.完成期限指导教师专业带头人*201*年*月*基于单片机的篮球比赛电子记分牌目录第一章引言11.1单片机在体育赛事记分中的应用11.2本设计任务 1 第二章总体方案论证与设计 22.1 显示模块 22.2 按键控制模块 22.3 报警模块22.4 总体硬件组成框图 3 第三章系统硬件设计 43.1 显示模块硬件设计 43.2 按键控制模块硬件设计 43.3 蜂鸣器报警模块硬件设计 53.4
3、最小单片机系统的硬件设计 6 第四章系统软件设计 74.1 主程序设计 74.2 按键控制程序设计 84.3 蜂鸣器报警程序设计 8 第五章系统调试及测试结果分析 105.1 系统调试 105.2 测试结果 10 结论 11 参考文献 12 附录1 流程 13 附录 2 模拟渲染 19 第一章引言 体育比赛计时记分系统是一个快速、快速地收集、记录、处理和传输体育比赛过程中产生的时间、分数等数据。根据不同运动项目不同的竞赛规则要求,体育比赛的计时记分制度包括测量、计分、击打、获胜等类型。篮球比赛的输赢取决于参赛队在规定的比赛时间内得分的多少。因此,篮球比赛的计时记分制度是计分式制度。
4、负责篮球比赛数据采集和分发的专用系统。它负责比赛成绩和成绩信息的收集、处理、传输和分发。篮球比赛的计时记分系统由计时器、记分器和其他电子设备组成。由于比赛的不可重复性,篮球计时计分系统是一种实时性很强、可靠性要求极高的电子服务。因此计时记分设备是篮球比赛中不可缺少的电子设备。计时计分系统设计是否合理,关系到比赛系统运行的稳定性和可靠性,直接影响比赛的顺利进行。同时,根据当前高水平篮球比赛要求,一套完整的篮球比赛计时计分系统设备应能够与现场比分处理、现场大屏幕、电视转播车等设备连接。达到高度的现场游戏感和表演娱乐观众。功能目标。随着比赛规则的进一步完善,相应的计时、计分制度也必须随之而来。
5. 改进。 1.1 单片机在体育赛事计分中的应用 传统的篮球比赛计分是通过工作人员手动翻转记分板来实现的,而比赛时间则由工作人员仪表控制。由于人为因素,手动操作的比赛记分牌难免会出现误差。单片机作为一种微控制系统,集成度高、功能强、通用性好。尤其具有体积小、重量轻、能耗低、价格便宜、可靠性高、抗干扰能力强、使用方便等独特特点。由于其优点,单片机得到了迅速推广和应用,现已成为测控应用系统的首选型号和新型电子产品的关键组成部分。因此,单片机在体育记分牌上的应用已成为必然趋势。 1.2 本设计任务以单片机为核心,构成单片机最小系统,构建了分数和时间显示模块、控制按钮模块和
6、可在指定时间报警的提示模块,通过按钮控制模块的操作,实现得分与时间进行比较的设计,最终显示在显示模块上。第二章总体方案论证与设计本系统采用单片机作为控制核心。该系统主要包括显示模块、按钮控制模块、蜂鸣器报警模块等,下面对各模块的设计进行演示和比较。 2.1 显示模块方案一:采用七段数码管显示。数码管是指将所有发光二极管的一极连接在一起,形成一个公共极,因此数码管有共阴极和共阳极。以共阳极数码管为例。使用共阳极数码管时,公共电极应接+5V。当某一场发光二极管的阴极处于低电平时,相应场就会点亮。当某个场的阴极为高电平时,对应的场不会发光。因此,每个数码管有9个接口。数码管的驱动方式有静态扫描和动态扫描。
7.两种形式。静态扫描编程简单,但电路复杂;动态扫描变得复杂并且需要使用其他芯片。方案2:使用1602 LCD显示屏。液晶的物理特性是:通电时具有导电性,排列变得有序,易于光线通过;未通电时,排列混乱,阻碍光线通过。与数码管相比,它不仅可以显示更多的图形符号,而且还具有薄、轻、无辐射等优点。综合以上两种方案篮球比赛电子记分牌,系统设计中采用第二种方案。 2.2 按键控制模块 方案一:采用矩阵键盘。矩阵键盘的长子接口连接到单片机的I/O端口。通过连接少量I/O端口即可扩展多个按键。但其缺点是电路较复杂,编程较麻烦。选项 2:使用独立按钮。每个独立的按钮都连接到微控制器的 I/O。虽然不能节省I/O口,但电路简单,编程容易。
8. 比较以上两个选项很容易。由于本系统只需要4个按钮,因此选择方案2。 2.3 报警模块 在报警模块中,单片机输出的信号经PNP晶体管放大后进入蜂鸣器发出声音提示比赛时间。 2.4 总体硬件组成框图 蜂鸣器报警模块 液晶显示模块 晶振电路 按键控制模块 复位电路 图2-1 总体硬件组成框图 系统框图如图2-1 所示。该系统主要由四个模块组成,即单片机、最小系统模块、液晶显示模块、蜂鸣器报警模块、按钮控制模块。最小单片机系统作为整个系统的控制核心。按钮模块的四个按钮控制分数和时间,然后将其显示在屏幕上。蜂鸣器报警模块按照程序设定的时间发出报警。第三章系统硬件设计使电子记分牌更加方便、灵活
9.直播,本次设计分为四个模块,下面将对每个模块进行一一介绍。 3.1 显示模块硬件设计 1602 LCD 也称为1602 字符LCD。它是专门用于显示字母、数字、符号等的点阵液晶模块,由若干个5X7或5X11点阵字符位组成。每个点每个矩阵字符位可以显示一个字符。表示显示的内容为16X2,即可以显示两行16字符的液晶模块。图3-1 LCD 模块电路 3.2 按键控制模块硬件设计 按键控制模块采用4 个独立的按键。 Key1、Key2、Key3、Key4分别连接到微控制器的P10、P11、P12、P13。每个按钮的另一端直接接地,因此低电平有效。按键控制模块电路如图3-2所示。
10、这四个独立的按钮分别实现比赛的暂停、时间的刷新以及比赛中两队得分值的改变。具体标签及功能如表3-1所示。表 3-1 按键功能说明 序列号 接口功能 Key1 P10 比赛开始/暂停 Key2 P11 刷新进攻方 24 秒时间 A 队得分值加一 Key4 P13 B 队得分值加一 图 3-2 按键控制模块电路图3.3 蜂鸣器报警模块硬件设计 图 3-3 蜂鸣器报警模块电路图 蜂鸣器报警模块由蜂鸣器和 PNP 三极管组成,接在微控制器的P27端口。蜂鸣器由5V驱动,低电平有效。蜂鸣器模块如图3-3所示。 3.4 最小单片机系统硬件设计 图 3-4 最小系统模块电路图为 4K 字节 FLASH 存储器
11、低电压、高性能、带存储器(且只读)的CMOS 8位微处理器,俗称单片机。它是一个具有 2K 字节闪存可编程和可擦除只读存储器的微控制器。微控制器的可擦除只读存储器可重复擦除1000次。该器件采用ATMEL的高密度非易失性存储器制造技术制造,与行业标准MCS-51指令集和输出引脚兼容。 ATMEL 的微控制器将多功能 8 位 CPU 和闪存组合在一个芯片中,因此是一款高效的微控制器。最小系统模块的晶振电路由12MHz晶振和30pF电容组成,复位电路由10uF电解电容和104陶瓷电容组成。电路如
12、如图3-4所示。第四章系统软件设计本设计中,系统软件设计也采用模块化设计,将系统各部分的功能编写成子模块的形式,增强了系统软件的可读性和可移植性。 4.1 主程序设计 本系统中单片机的主要功能是利用内部定时器测量时间,并随时接受来自控制模块的信息,在1602液晶屏上显示比赛的比分和剩余时间。主程序流程如图4-1所示。图4-1 主程序流程图。 NYNY 显示是否按下该键来执行控制程序。当蜂鸣器响起时,倒计时初始化开始。 4.2 按键控制程序设计。 Key1 键与程序设置的标志匹配。位标志控制游戏的暂停。当按下 Key1 时,标志加一。两个不同的标志值分别有一个关闭定时器和一个打开定时器。按下Key2按钮后,你将有24秒的时间进行攻击。
13、变量miao 重新赋值为24,表示最后一次进攻结束,对方队伍开始进攻。每按一次Key3和Key4,A队和B队的分数加一。程序流程如图4-2所示。图 4-2 按键控制流程图 A 队得分加一 Key2 按 B 队得分加一 刷新 24 秒 暂停/开始 Key1 按下 延时是否按下 Key4 按下 Key3 按下 4.3 程序中蜂鸣器报警程序设计 此处设置一个变量并使用if语句来判断。当变量等于设定的时间段时,蜂鸣器就会发出声音。当24秒起音时间只剩下5秒时,蜂鸣器会响一秒; 24秒起音时间结束后,蜂鸣器鸣响4秒;单节结束时,蜂鸣器响4秒。流程图如图4-3所示。图4-3 报警程序流程图。蜂鸣器鸣响 4 秒。蜂鸣器鸣响 1 秒。蜂鸣器鸣响 5 秒。单季度。
14. 5秒结束?到24秒?是否到期第五章系统调试及测试结果分析5.1 系统调试是为了提前排除软硬件错误。本设计需要软件调试、硬件调试以及软硬件联合调试。 5.1.1 硬件调试:本阶段使用实验板ST-3A来调试各模块的功能。主要检查硬件之间的连接是否正确,调试各模块是否能够实现指定的功能。 5.1.2 软件调试 软件调试采用Keil 软件完成。编写完源程序后,新建工程并选择处理器;然后新建一个文档编辑程序,编辑后保存为.C,将保存的.C文件添加到工程中。检查没有语法错误后会生成 .HEX 文件。 5.1.3 软硬件联调 软硬件联调主要通过应用程序完成。在环境中绘制系统原理图后,软件
15、调试阶段,将Keil生成的.HEX文件下载到单片机中,并在计算机上进行软件仿真。 5.2 测试结果 本系统具有良好的设计结构。最小单片机系统能够正常工作,按钮模块能够实现控制功能,液晶显示模块能够根据按钮模块输入的控制信息进行显示,蜂鸣器报警模块能够根据程序进行设置。打电话叫警察。仿真结果图如附录2所示。结论基于单片机的篮球比赛电子记分牌是对传统篮球比赛中手动翻转记分牌的改进,解决了篮球比赛中准确、方便、灵活、适用的记分计时问题。篮球比赛。系统整体电路由最小单片机系统、1602液晶显示模块、5个独立按钮控制模块和蜂鸣器报警模块组成。四个模块分别完成篮球比赛记分牌的信息处理、显示、控制等基本功能。通过软硬件仿真和调试实现了本设计。
16、基本功能:1602液晶屏左侧显示各参赛队的得分,右侧显示比赛剩余时间。四个按钮可以完成节目要求并控制分数和时间的调整。蜂鸣器可以在指定的时间使用。对推文进行分段,为玩家和观众提供提示。参考文献1 李川,王秋猛. ISP技术原理及实现方法J.科技情报. 2007年篮球比赛电子记分牌,第35期:93-94.2万广义。单片机实验与实用教程M.北京:北京航空航天大学出版社。 2005.1。 3. 张以刚.单片机原理与应用M.北京:高等教育出版社。 2003:160-190.4 胡野,姚鹏毅,陈明。 99SE原理图及PCB设计教程M.机械工业出版社。 2005年:23-99.5马中美。单片机C语言应用设计M.北京
17.:北京航空航天大学出版社。 20066周润静。基于M的电路及单片机仿真系统的设计与仿真。北京:北京航空航天大学出版社。 2005.7 金炯泰,金奎焕。如何使用编译器M。北京:北京航空航天大学出版社。 2002.8 尹石.电工电子生产基础M.武汉:华中科技大学出版社,2008.9 彭杰华。电子技术课程设计指南J. 北京: 高等教育出版社, 1997. 附录1 程序## uchar char# uint code tab1=A : ;uchar code tab2=B ;ucha
18. r 代码 tab3= 游戏结束; /uchar代码tab4=游戏结束时显示AB; /sbit lcden=P22;sbit lcdrw=P21 游戏结束时显示; /1602液晶屏的3个端口sbit lcdrs=P20;sbit key1= P10; sbit key2=P11; /四键 sbit key3=P12;sbit key4=P13;sbit Bell=P27; /蜂鸣器 uint,标志; / 标志位 uchar i,num,count;uchar sec,min,miao;uchar,; /两队得分/*液晶功能*/vo
19. id delay(uint z) /液晶延迟函数 uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void (uchar com) /命令子函数lcdrs=0; /接受命令 P0=com; /发送命令码delay(5)到P0口;lcden=1; /E 改为高电平延迟(5); /在此延迟期间,发送指令lcden=0; /E变为低电平,高脉冲结束void(uchar date) /Data子功能=1; /接受数据 P0=日期; /发送数据到P0口delay(5);lcden=1; /E 变为高电平 de
20. 放置(5); /在此延迟期间,向lcden=0发送数据; /E 变为低电平,高脉冲结束 void (uchar add,uchar date) /写时间函数 uchar shi,ge; shi=date/10;ge=date;(0x80+add);(0x30+shi);(0x30+ge);void (uchar add,uchar date) /写24秒函数 uchar shi,ge;shi=date/ 10;ge=日期;(0x80+0x40+添加);(
21. 0x30+shi);(0x30+ge);void (uchar add,uchar date) /写入A队计分函数 uchar bai,shi,ge;bai=date/100;shi=date/10;ge=date ; (0x80+add);(0x30+bai);(0x30+shi);(0x30+ge);void (uchar add,uchar date) /写入B队的计分函数 uchar bai,shi,ge;bai=date/100;shi=date
22. /10;ge=date;(0x80+0x40+add);(0x30+bai);(0x30+shi);(0x30+ge);void(uchar add,uchar date) /在处写评分函数游戏结束uchar bai,shi,ge;bai=日期/100;shi=日期/10;ge=日期;(0x80+0x40+add);(0x30+bai);(0x30+shi);(0x30+ge);void del
23. (uint z) /蜂鸣器延时函数 uint x,y;for(x=z;x0;x-)for(y=255;y0;y-);void init() /初始化函数 Bell= 1;= 0;标志=0;最小=12;秒=0;苗=25;=0; =0;lcdrw=0;lcden=0; /E初始值为低电平,后续程序给出高电平以满足E为高脉冲(0x38); /写入显示模式命令(0x0e); /显示器是否打开以及光标的设置(0x06); / 地址指针加减及整个屏幕是否移动(0x01);
24./清屏命令(0x80+0x00); /显示字符初始位置 for(num=0;num16;num+)();(0x80+0x40); /起始地址为53,字符移动到第二行 for(num=0;num2;num+)();(2,);(2,);TMOD=0x01;TH0=(65536-50000) /256 ;TL0=(65536-50000)%256;EA=1;ET0=1; TR0=1; /开启定时器void() /按键功能
25. 数字 if(key1=0)delay(10);if(key1=0)+; /按键一按下,标志位就加一 while(!key1);if(=1) TR0=0; /关闭中断 if(=2)TR0=1; =0;if(key2=0) /刷新24秒delay(5);if(key2=0)while(!key2);miao=25;if(key3=0)delay(5);if(key3= 0)while(!key3);+; (2,);/写入A队得分 if(key4=0)delay(5);if(key4=0)while(!key4)
26.;+; (2,);/写入B队得分 void main()init();while(1)();if(flag=0)(0x80+0x40+7); /写入第一部分(F);(I);(R);if(flag=1)(0x80+0x40+7); /写第二部分(S); (E);(C);如果(标志=2)(0x80+0x40+7); /写第三部分(T);
27. (H);(R);如果(标志=3)(0x80+0x40+7); /写入第四节 (F);(O);(U);if(flag=4)/game 结束显示“GAME OVER”,两队得分 TR0=0;(0x80);for(i =0;i16;i+)(tab3i); /游戏结束字符串数组(0x80+0x40); /起始地址为53,字符移动到第二行 for(i=0;i=4&miao=5) /如果只剩下5秒,则蜂鸣器响1秒 Bell =0;延迟
28._贝尔(510);响铃=1; (510); void () 1 / 定时器 TH0=(65536-50000)/256;TL0=(65536-50000)%256;count+;if(count=18) count=0;sec-;miao-;if(miao=(- 1) /如果24秒到了,蜂鸣器响4秒Bell=0; (510); (510); (510);贝尔=1;if(miao=(-1) miao=24; if( sec=(-1)sec=59;min-;if(min=(-1) /如果比赛(单节)结束,蜂鸣器响4秒 Bell=0;(510);(510);(510);(510);Bell=1;min=11; flag+;(11,min) ;(14,sec);(14,miao); /显示游戏时间 附录2 模拟效果图 19
本文标签:篮球比赛电子记分牌