基于51单片机的篮球计分器
- 格式:doc
- 大小:451.50 KB
- 文档页数:29
工程设计课程报告基于51单片机的篮球计分器姓名:莫崇维学号: ********2012 年 12月 22 日基于51单片机的篮球计分器一.需求分析篮球是一项充满乐趣的运动,打篮球可以学到很多课本里没有的东西,比如信任,合作,鼓励等,现在篮球普及率已经很高,不仅仅是专业运动员的运动,也是普通老百姓的活动,不管是走在学校里,还是公园里,甚至是乡村里,都能看到篮球场,都能看到打篮球的人,篮球已成为我们大部分人生活里不可或缺的组成部分,每天都能听到有人在谈论篮球,说说自己喜欢的NBA巨星……因为喜欢篮球,所以打篮球,时不时会来场激烈的比赛,篮球计分器将让我们摆脱用粉笔或记分牌计分带来的不便,轻轻松松几个按钮开关就能让我们记下分数,让我们感受到科技给我们带来的巨变。
计分器主要功能:1、记下双方比分,随时显示2、能够随时更改双方比分3、能够调整比赛的时间,还有暂停时间4、能够对换比分当双方更换场地5、时间走完能发出终场比赛信号二.方案设计根据所学的C语言基础知识和一些编程思想,对所需的一些硬件进行市场调查比较,选择了比较简单,易于实现的51单片机,结合运用了C语言思想进行方案设计,运用keil uversion软件编写程序。
51单片机内部的定时器/计数器进行中断可以结合软件延时实现计时。
采用89C51芯片作为硬件核心,其内部采用FlashROM,具有4KB ROM存储空间,能与3V的超低压工作,由于电路设计中时由于不具备ISP在线编程技术,可以运用STC-isp烧入程序。
图1给出了本系统的实现框图。
图1 总体框图三.电路原理设计电路主要包括CPU部分、电源部分、复位电路部分、按键部分、LED显示部分。
1、CPU部分51单片机为单芯片微控制器,常见封装形式为40脚双列直插式塑料封装DIP-40,其引脚识别为:正面面向用户,缺口向上,左上面第一脚为1脚,然后按逆时针方向依次为2~40脚。
通常第一脚有标志符号。
51单片机管脚图如图2所示。
基于51单片机篮球记分牌设计(数码管显示)#include<reg51.h>unsigned char a1,b1,c1,a2,b2,c2,d1,d2,e3,f3,g3,h3,i,j,flag10,flag11,flag12;unsigned char af,bf,time=24,cnt1,cnt2;signed int time1=720;sbit aj=P1^0;sbit bj=P1^1;sbit cn=P1^2;sbit bn=P1^3;sbit en=P3^2;sbit fn=P3^3;sbit hn=P3^0;sbit gn=P3^4;sbit set=P1^4;sbit tj=P1^5;sbit tz=P1^6;sbit ot=P1^7;bit flag1=0,flag2=0,flag3=0,flag4=0,flag5=0,flag6,flag7,flag8,flag9; unsigned char s[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0x7c,0x39,0x5e,0x79,0x3e};void delay(unsigned char i); void display();void sw();void abbfen();void esnny();void esnne();void esnns();void esfzw();void hfwz();void ot1();void setj ();void timej ();void timez ();void main(){TMOD=0x11;TH0=0x3c;TL0=0xb0;TH1=0x3c; TL1=0xb0; EA=1;ET0=1;ET1=1; while(1) {display();abbfen();sw();esnny();esnne();esnns();esnne();esfzw();hfwz();timej ();timez ();setj ();ot1();}}void delay(unsigned char i ) {unsigned char j,k;for (k=0;k<i;k++)for (j=0;j<10;j++);}void display(){a1=af/100;b1=af%100/10;c1=af%100%10;P2=0x00;P0=s[a1];delay(2);P2=0x01;P0=s[b1];delay(2);P2=0x02;P0=s[c1];delay(2);P2=0x03;P0=s[10];delay(2);a2=bf/100;b2=bf%100/10; c2=bf%100%10;P2=0x04;P0=s[10];delay(2);P2=0x05;P0=s[a2];delay(2);P2=0x06;P0=s[b2];delay(2);P2=0x07;P0=s[c2];delay(2);e3=time1/60/10;f3=time1/60%10; g3=time1%60/10; h3=time1%60%10;P2=0x08;P0=s[e3];delay(2);P2=0x09;P0=s[f3];delay(2);P2=0x0a;P0=s[g3];delay(2);P2=0x0b;P0=s[h3];delay(2);d1=time/10;d2=time%10;P2=0x0c;P0=s[d1];delay(2);P2=0x0d;P0=s[d2];delay(2);}void abbfen(){if(aj==0){delay(10);}if(aj==0){flag1=1;}if(flag1==1&&aj==1) {flag1=0;af++;}}void sw(){delay(10);}if(bj==0){flag2=1;}if(flag2==1&&bj==1) {flag2=0;bf++;}}void esnny(){if(cn==0){delay(10);}if(cn==0){flag3=1;}if(flag3==1&&cn==1) {flag3=0;TR0=1;}}void esnne(){{delay(10);}if(bn==0){flag4=1;}if(flag4==1&&bn==1) {flag4=0;TR0=0;}}void esfzw(){if(en==0){delay (10);}if(en==0){flag5=1;}if(flag5==1&&en==1) {flag5=0;TR1=1;}}void esnns(){if (fn==0){delay (10);}if(fn==0){flag6=1;}if(flag6==1&&en==1) {flag6=0;TR1=0;}}void hfwz(){if (gn==0){delay (10);}if(gn==0){flag7=1;}if(flag7==1&&gn==1) {flag7=0;time=24;}}void setj (){if (set==0){delay (10);}if(set==0){flag10=1;}if(flag10==1&&set==1) { flag10=0;j++;if (j==3) j=0;}}void ot1(){if (ot==0){delay (10);}if(ot==0){flag12=1;}if(flag12==1&&ot==1){flag12=0;time1=300;}}void timej (){if (tj==0){delay (10);}if(tj==0){flag8=1;}if(flag8==1&&tj==1){flag8=0;switch(j){case 0x00:break;case 0x01:time1--; break;case 0x02:time1=time1-60;break; default:break;}}void timez (){if (tz==0){delay (10);}if(tz==0){flag9=1;}if(flag9==1&&tz==1){flag9=0;switch(j){case 0x00:break;case 0x01:time1++; break;case 0x02:time1=time1+60;break; default:break;}}}void int1()interrupt 1 {TH0=0x3c;TL0=0xb0;cnt1++;if(cnt1==21){cnt1=0;time1--;}if(time1==-1){time1=720;}}void int3()interrupt 3 {TH1=0x3c;TL1=0xb0;cnt2++;if(cnt2==21){cnt2=0;time--;if(time==-1){time=24;hn=0;hn=1;}}}。
篮球计时计分系统
本系统满足以下几点要求:
*1、能设置整个赛程的比赛时间,在比赛过程中能根据需要暂停和开始计时
*2、能根据比赛情况刷新比赛双方的比分
*3、中场交换比赛场地时,能交换A、B两队比分的位置
*4、比赛结束时,能发出报警声
设计思路:
一、电路设计:
*1、显示模块,由一个4位共阳数码管作为计时显示,一个红色2位共阳数码管显示A队
得分,一个蓝色2位共阳数码管显示B队得分。
用一个74HC595作为位扫描驱动。
*2、按键模块,一共9个按键,分别用于赛前时间设置、加1分,加2分,减1分,半场
换分,停止警报,开始,暂停/继续(此按键可以不用),加分减分队伍选择切换
*3、警报模块,时间结束时能发出警报
*4、单片机最小系统(使用12M晶振)
二、软件设计:
*系统主要功能包括记分和计时两部分,能实现两队的加分、减分以及其它多种显示效果;
系统控制模块有:2位动态显示记分模块、4位动态显示计时模块、两队加分减分模块和
按键查询模块
好了,不说了,直接上图。
(PS:仿真和程序都是本人亲自制作编写,如有雷同,呵呵....)显示模块电路:
按键电路:
警报电路:
单片机最小系统:
完整电路:
上附件,希望大家一起交流学习/s/1kpubd。
毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
单片机课程设计基于51单片机的无线篮球计分器设计专业年级: 2012级电气工程及其自动化参与成员:邹勇(P121813544)尚阿琪(P121813545)刘甜甜(P121813535)马辉(P121813517)张大为(P121813555)贾双梅(P122113555)指导老师:黄靖涛摘要目前,随着人民生活条件的改善以及对各种比赛项目的热爱和欣赏,采取有线机器来进行记分的中小型比赛也开始减少,取而代之的是利用无线控制进行记分。
无线记分系统不再沿用过去的记分功能,而是利用无线发送与接收的形式工作,既节省了材料费用,也使记分器工作的时候比较不受约束,且可以任意挪动。
因此为了使记分更加方便并且记分设备的携带更加便捷,无线记分设备在国内外的研究都变得更加广泛和深入。
本文主要设计了一个基于CC1101模块的无线记分器,采用的是STC89C52芯片,来进一步研究射频收发模块与单片机的结合,并实现无线记分功能。
本设计的无线记分器分别由记录端和接收显示端这两部分构成。
记录端由单片机最小系统、CC1101无线发射模块、按键、指示灯等组成,单片机读取按键后把数据利用CC1101无线发射模块发送给接收显示端进行显示。
接收显示端由单片机最小系统、CC1101无线接收模块、四位数码显示模块等组成,无线接收模块将接收的数据送单片机处理后,再将数据由数码管显示出来。
根据该无线记分器的设计框图,进行材料的选购以及硬件的搭建,并用C语言编写程序实现记分功能,分别利用四个功能按键控制A、B两队的加分和减分,在记录端数码管上显示加分或者减分,在接收端数码管上显示两队的比分情况。
关键词:无线;射频收发模块;记分器目录摘要 (2)一、系统方案设计 (4)1.1 系统构成框图及基本功能介绍 (4)1.2 系统各部分简介 (4)二、硬件电路设计 (5)2.1 51单片机最小系统 (5)2.2 无线收发部分 (6)2.2.1 CC1101模块简介 (6)2.2.2 无线模块单片机接口 (7)2.3 74HC573芯片介绍 (7)2.4 触摸按键介绍 (8)2.5 数码管模块介绍 (9)2.6 各模块连接概述 (10)三、软件设计 (11)3.1 软件设计综述 (11)3.2 C程序设计 (12)四、硬件搭建及测试 (12)4.1 程序的编写及烧录 (12)4.2 硬件测试 (13)总结 (14)附录 (15)附录1 C程序设计 (15)附录2硬件调试效果图 (19)一、系统方案设计1.1系统构成框图及基本功能介绍本设计主要采用STC89C52单片机制造而成,由无线发送模块和无线接收模块组成无线收发系统,按键区采用TTP226触摸按键,设置四个功能按键,分别控制A 、B 两队的加减分情况,显示区分为两个部分,一部分由一组四位数码管模块形成,处于发送端显示加或减的功能;另一部分由一组八位数码管模块形成,处于接收端显示A 、B 两队比分情况。
基于STC89C51单片机的篮球计时计分器的设计摘要随着科技的日益发展进步,单片机技术已经被广泛应用在科研、工作等重要领域内,目前也已经普及到我们的日常生活中,扮演着十分重要的角色。
本次设计是基于单片机的篮球计分器,以基本篮球规则为依据,设计结构简单且方便操作,对篮球比赛实现实时控制。
此次设计的计分器总共包括四个模块,他们是24秒显示、计时器、记分器、计节器。
实现的功能是:24秒显示能按键控制24秒计时器,当控球时间超过24秒时,可发出报警信号。
计时器可按键调节,可以随时暂停计时,暂停比赛,在每节结束和全场结束时报警。
记分器记录两队的积累分数,可通过按键分别加1、2、3分。
设计分为硬件设计和软件设计。
硬件设计的主要包括的是:LED数码管显示、按键控制系统设计以及辅助功能的设计。
软件设计包括:功能选择、倒计时的实现。
本文主要介绍了用单片机设计实现篮球计分器的整个流程,采用C语言编写程序。
设计引用MAX7219专用LED驱动芯片,解决了多位LED数码管同时显示的问题。
其中时间显示和比分显示部分由两组共阴极LED数码管显示。
时间显示部分可以以分为单位进行计时调整。
比分显示部分可以实现在半场结束后手动换场,两个显示模块均采用动态扫描方式进行显示。
按键控制部分采用独立按键,共设八个按键,实现调整分数、调整时间、比赛的开始/暂停、复位键和交换场地键等功能。
报警部分由蜂鸣器加三级管驱动,实现了发出按键声音和结束报警的功能。
采用单片机控制使这个系统按键操作使用简单,安装方便。
解决了篮球比赛计数器的安装问题,节约了线材,适合在各种规模的体育场馆使用,完全可以代替传统的用钟表进行计时的方法,当然稍加改动也可以用于其他球类比赛,是体育器材向智能化发展的一个实例。
关键词:STC89C51单片机;温度控制;恒温箱;DS18B20AbstractWith the increasing development of advances in technology, chip technology has be en widely applied in the important areas of research, work, etc., now also has spread int o our daily lives, it has developed into a more mature technology, the design will focus on SCM medical incubator temperature control system to do in-depth research. Smart th ermostat not only have a number of functions, which are extremely versatile. It can not only make the upper limit for the precise control of temperature control, but when the te mperature is not set within the range of time, but also through the relay to drive the co rresponding load of work, and at the same time the buzzer and warning lights will issue a warning signal, a very intelligent.Most of microcontroller-based incubator temperature control system is in use in lab oratory, industrial, pharmaceutical, agriculture. In the laboratory especially biological labor atories, we have to get more accurate experimental data, for constant temperature test en vironment demanding. So for the laboratory, the role of the incubator is very important. In the industrial production process, we incubator for relatively more stringent requiremen ts, such as heat, cold treatment products, etc., directly affect the quality of the product. I n medicine medical incubator is mainly used for storing drugs and reagents, transport, vaccines, Refrigerated blood, warmed dialysate, saline warming the like. From the above we can clearly see the important role of the incubator. In agriculture greenhouse, the te mperature control system is essential for the growth of crops for agriculture, so that all aspects of life in the temperature control system is always in a very important position.Keywords: MCU—80C51; Incubator; Temperature control目录摘要..................................... 错误!未定义书签。
基于51单片机的篮球计时计分器基于51单片机的篮球计时计分器随着科技的不断进步,基于51单片机的篮球计时计分器应运而生。
这种计时计分器不仅为篮球比赛提供了方便,还大大降低了人工操作的成本和错误率。
本文将详细介绍基于51单片机的篮球计时计分器的特点、设计、实验验证及未来发展趋势。
一、文章类型和关键词本文属于技术应用类文章,主要关键词包括51单片机、篮球计时计分器、传感器、电路设计、程序设计等。
二、引言篮球比赛需要精确的计时和计分,传统的人工方式往往存在操作不便、易出错等缺点。
随着科技的发展,基于51单片机的篮球计时计分器成为了篮球比赛中的重要工具。
这种计时计分器具有自动化、精确度高、操作方便等优点,被广泛应用于各类篮球比赛中。
三、51单片机与篮球计时计分器51单片机是一种常见的微控制器,具有灵活的指令集和丰富的外围设备,包括定时器、中断控制器、串口通信接口等。
基于51单片机的篮球计时计分器利用了51单片机的这些特性,通过编程实现对比赛计时和计分等功能的控制。
四、篮球计时计分器设计篮球计时计分器的设计包括硬件和软件两部分。
硬件部分主要包括51单片机、传感器、电路连接等。
传感器用于检测篮球比赛中的关键事件,如进球、犯规等,并将这些事件转换为电信号传递给51单片机。
电路连接部分包括电源电路、通信电路等,为51单片机和传感器提供稳定的工作环境。
软件部分包括程序设计、算法实现等。
程序设计根据实际需求进行,实现计时、计分、显示等功能。
算法实现用于优化计时和计分的过程,提高计时计分的准确性和实时性。
五、实验验证为了验证基于51单片机的篮球计时计分器的可行性和有效性,我们进行了一系列实验。
实验中,我们将计时计分器与实际比赛场景相结合,记录了多场篮球比赛的数据。
通过对实验数据的分析,我们发现计时计分器在计时和计分方面的准确率达到了98%以上,证明了其可行性和有效性。
六、未来发展趋势随着技术的不断发展,基于51单片机的篮球计时计分器将具有更广泛的应用前景。
51单片机篮球计分器课程设计课程设计题目:51单片机篮球计分器摘要:本篇文章将介绍如何利用51单片机设计一个篮球计分器。
篮球计分器是一个常见的电子装置,用于记录篮球比赛的得分情况。
通过本次课程设计,我们将学习如何使用51单片机搭建一个简单而实用的篮球计分器。
一、引言篮球计分器是一种常见的电子设备,用于记录篮球比赛中双方球队的得分情况。
传统的篮球计分器通常由数码显示器、按钮开关和计分芯片等组成。
而现在,随着技术的进步,我们可以使用51单片机来设计一个更加智能和便捷的篮球计分器。
二、设计原理1. 硬件设计在硬件设计上,我们需要准备一个51单片机作为控制核心,数码显示器用于显示得分情况,按钮开关用于控制计分操作。
通过连接51单片机和数码显示器,并设置合适的引脚连接方式,实现得分数据的传输和显示。
2. 软件设计在软件设计上,我们需要编写相应的程序来实现篮球计分器的功能。
首先,我们需要定义变量来存储两个球队的得分数据。
然后,通过读取按钮开关的状态,判断用户的操作,并根据操作类型更新得分数据。
最后,将得分数据传输给数码显示器进行显示。
三、具体步骤1. 硬件连接我们需要将51单片机的引脚与数码显示器的引脚进行连接。
具体连接方式如下:- 将51单片机的P1口连接到数码显示器的A、B、C、D引脚,用于传输得分数据的位数;- 将51单片机的P2口连接到数码显示器的1、2、3、4引脚,用于传输得分数据的个位数;- 将51单片机的P3口连接到按钮开关,用于接收用户的计分操作。
2. 软件编程接下来,我们需要编写相应的程序来实现篮球计分器的功能。
具体步骤如下:- 首先,定义两个变量来存储两个球队的得分数据,初始值为0;- 然后,通过循环读取按钮开关的状态,判断用户的操作类型;- 如果用户按下了加分按钮,相应球队的得分数据加1;- 如果用户按下了减分按钮,相应球队的得分数据减1;- 最后,将得分数据传输给数码显示器进行显示。
分类号编号华北水利水电学院North China University of Water Resources and Electric Power 毕业设计题目:基于51单片机的球赛计时计分器院系信息工程学院专业电子信息工程姓名学号200711719指导教师2011 年 5 月23日华北水利水电学院毕业设计任务书设计题目:基于51单片机的球赛计时计分器专业:电子信息工程班级学号:200711719姓名:指导教师:设计期限:2011年3月7 日开始2011年5月25日结束信息工程学院2011年3月一、毕业设计的目的1、围绕课程设计的内容,培养学生查询相关资料以及文献检索的能力,培养学生对新知识新技术的独立的学习能力和应用能力;2、培养学生对以往所学知识的综合运用能力;在理解课堂所讲知识的基础上,提高学生的自学能力;3、培养学生了解并逐步熟悉科学研究的整个过程,养成良好的科学态度以及实事求是、严谨塌实的工作作风;培养学生独立分析问题和解决问题的科学研究的能力;4、通过本课程设计,培养学生在单片机应用系统的软、硬件相结合方面的综合能力,既要培养学生在软件编程方面的能力,同时还要培养学生在硬件方面的实践能力以及综合调试等能力。
二、主要设计内容及基本要求1、能记录整个赛程的比赛时间,并能修改比赛时间、暂停比赛时间。
2、能随时刷新甲、乙两队在整个赛程中的比分。
3、中场交换比赛场地时,能交换甲、乙两队比分的位置。
4、比赛时间结束时,能发出报警指令。
5、共接入10个八段LED显示器,其中6个用于记录甲、乙两队的分数,每队3个LED显示器显示分数范围可达到0—999分;4个LED显示器则用来记录赛程的时间,其中2个用于显示分钟;2个用于显示秒钟。
赛程计时采用倒计时方式,计时范围可达到0—99分钟。
6、为了配合计时器和计分器校正、调整时间和比分,在设计中设立了7个按键。
其中4个用于输入甲、乙两队的分数;另外3个则用于完成设置、调整、启动和暂停赛程时间等功能。
单片机课程设计基于51单片机的无线篮球计分器设计摘要目前,随着人民生活条件的改善以及对各种比赛项目的热爱和欣赏,采取有线机器来进行记分的中小型比赛也开始减少,取而代之的是利用无线控制进行记分。
无线记分系统不再沿用过去的记分功能,而是利用无线发送与接收的形式工作,既节省了材料费用,也使记分器工作的时候比较不受约束,且可以任意挪动。
因此为了使记分更加方便并且记分设备的携带更加便捷,无线记分设备在国内外的研究都变得更加广泛和深入。
本文主要设计了一个基于CC1101模块的无线记分器,采用的是STC89C52芯片,来进一步研究射频收发模块与单片机的结合,并实现无线记分功能。
本设计的无线记分器分别由记录端和接收显示端这两部分构成。
记录端由单片机最小系统、CC1101无线发射模块、按键、指示灯等组成,单片机读取按键后把数据利用CC1101无线发射模块发送给接收显示端进行显示。
接收显示端由单片机最小系统、CC1101无线接收模块、四位数码显示模块等组成,无线接收模块将接收的数据送单片机处理后,再将数据由数码管显示出来。
根据该无线记分器的设计框图,进行材料的选购以及硬件的搭建,并用C语言编写程序实现记分功能,分别利用四个功能按键控制A、B两队的加分和减分,在记录端数码管上显示加分或者减分,在接收端数码管上显示两队的比分情况。
关键词:无线;射频收发模块;记分器目录摘要 (2)一、系统方案设计 (4)1.1 系统构成框图及基本功能介绍 (4)1.2 系统各部分简介 (4)二、硬件电路设计 (5)2.1 51单片机最小系统 (5)2.2 无线收发部分 (6)2.2.1 CC1101模块简介 (6)2.2.2 无线模块单片机接口 (7)2.3 74HC573芯片介绍 (7)2.4 触摸按键介绍 (8)2.5 数码管模块介绍 (9)2.6 各模块连接概述 (10)三、软件设计 (11)3.1 软件设计综述 (11)3.2 C程序设计 (12)四、硬件搭建及测试 (12)4.1 程序的编写及烧录 (12)4.2 硬件测试 (13)总结 (14)附录 (15)附录1 C程序设计 (15)附录2硬件调试效果图 (19)一、系统方案设计1.1系统构成框图及基本功能介绍本设计主要采用STC89C52单片机制造而成,由无线发送模块和无线接收模块组成无线收发系统,按键区采用TTP226触摸按键,设置四个功能按键,分别控制A 、B 两队的加减分情况,显示区分为两个部分,一部分由一组四位数码管模块形成,处于发送端显示加或减的功能;另一部分由一组八位数码管模块形成,处于接收端显示A 、B 两队比分情况。
基于C51单片机的篮球计分器设计题目要求:1. 设计一款能够显示篮球比分的记分牌;2. 通过加分按钮可以给A队,或B队加分;3. 设计对调功能,更换场地后,AB队分数互换;仿真截图:完整源代码:#include<reg51.h>code unsigned seg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; // 分别对应数码管显示字形0-9int m=15,n=00,x=0,y=0,jie=2,bujin=1,zanting=0,chuzanting=0;//初始化,m、n为分、秒计时x、y为A、B两队分数,其余为中间变量sbit A_add = P3^0; // A队加分按钮sbit B_add = P3^1; // B队加分按钮sbit Time_add = P3^2; // 时间加按钮sbit Time_sub = P3^3; // 时间减按钮sbit A_sub = P3^4; // A队减分按钮sbit B_sub = P3^5; // B队减分按钮sbit pause = P3^6; // 暂停、启动按钮sbit change = P3^7; // 换场地按钮void keyScan(); //按键扫描函数void delay(int t) //延时子程序,通过参数t,可以调整暂停时间{while(t--){unsigned int i;for(i=0;i<200;i++); //设置变量i的变化范围,能调整延时的单位时间长度,i越小,延时单位时间越短,精度越高}}void display(int m,int n,int x,int y)//数码管动态刷新显示程序{if(jie==1&&bujin!=2) //中间变量jie=1时,为上半场,对p1赋值P1=0xbf; //p1=0xbf,即p1=1011111B,点亮上半场对应指示灯P2=0xfe; //数码管动态刷新显示程序p2=11111110,i为分钟P0=seg[m/10]; //刷新显示时间显示分钟十位,调用延时程序delay(1); //延时数码管的点亮P2=0xff;P0=0;P2=0xfd; //同理,分钟个位并延时点亮P0=seg[m%10];delay(1);P2=0xff;P0=0;P2=0xfb; //秒钟十位P0=seg[n/10];delay(1);P0=0;P2=0xff;P2=0xf7; //秒钟个位P0=seg[n%10];delay(1);P0=0;P2=0xff;P2=0xef; // A队分数十位P0=seg[x/10];delay(1);P2=0xff;P0=0;P2=0xdf; //A队分数个位P0=seg[x%10];delay(10);P2=0xff;P0=0;P2=0xbf; //B队分数十位P0=seg[y/10];delay(1);P0=0;P2=0xff;P2=0x7f; //B队分数个位P0=seg[y%10];delay(1);P0=0;P2=0xff;}void t0(void) interrupt 1 //调用定时器T0 基本计时单位秒中断{int i;TH0=0xb1; //利用定时器T0,送入计数初值TH0,TL0TL0=0x10; //定时器定时单位为20msi++;if(i==50) //利用中间变量i,令i的值为50 50*20ms=1秒{if(n==0) //分钟与秒时间的调整当秒减到0后分钟减1{n=60;if(m > 0) m--;}n--; //实现1秒计时i=0;}}void main() //主程序{TMOD=0x01; //设置定时器工作方式EA=1;ET0=1;TH0=0xb1; //定时计送计数初值,EA=1,开中断p3口电平拉高TL0=0x10; //p1-0x7f,上半场指示灯点亮TR0=1;P3=0xff;P1=0x7f;while(1) //通过while(1),反复调用循环体内子程序{display(m,n,x,y); //调用动态刷新显示程序keyScan(); //按键处理函数if(m <=0 && n<=0) //时间结束了{ET0=0; //关闭中断,停止计时TR0 = 0;}}}void keyScan() //按键扫描函数{int temp; //中间变量temp,检测到有按键按下时交换A,B两队分数if(A_add==0) //当检测到A队加分按键按下,对应加分{delay(1); //调用延时子程序,实现按键抖动功能,即当检测到按键按下时,延时,按键仍按下,说明非抖动,A队对应加分if(A_add==0){x++;}}if(B_add==0) //B队加分键被按下{delay(1);if(B_add==0){y++;}}if(A_sub==0) //A队减分{delay(1);if(A_sub==0){if(x>=1) x--;}}if(B_sub==0) //B队减分{delay(1);if(B_sub==0){if(y>=1)y--;}}if(Time_add==0) //时间增加按钮{delay(10);if(Time_add==0){n++;if(n==60){m++;n=1;}}}if(Time_sub==0) //时间减少{delay(10);if(Time_sub==0){if(!(m == 0 && n == 0)) //防止被减成了负数{if(n <= 0){n = 60;m--;}n--;}}}if(change==0) //交换场地{delay(1);if(change==0){temp=x; //两个分数值对调x=y;y=temp;}}if(pause==0) //检测到暂停键按下是,令EA =0关闭中断{delay(1);if(pause==0){if(EA == 0){EA = 1;}else{EA = 0;}}}//当有按键没被松开时不要接着往下执行,防止按键被重复检测while(A_add ==0 || B_add ==0 || A_sub ==0 || B_sub==0 || pause==0 || change==0){display(m,n,x,y); //等待按钮被松开}}Proteus仿真图:。
毕业设计论文基于51单片机的篮球比赛计分器设计系别: 机电工程系专业名称: 自动化学号: 26100102059学生姓名: 黎俊杰指导教师: 卢满怀指导单位: 机电工程系完成时间: 2010年5月5日电子科技大学中山学院毕业设计(论文)任务书电子科技大学中山学院毕业设计(论文)成绩评定表基于51单片机的篮球比赛计分器设计概要本系统是采用单片机AT89C51作为本设计的核心元件。
利用7段共阳LED 作为显示器件。
在此设计中共接入了2个7段共阳LED显示器,用于记录该队的分数,2个LED显示器显示范围可达到0~99分,基本满足赛程需要。
当比赛队得1分时,按下S1键加1分,得2分时按S2键加2分,得3分时按下S3键加3分。
如分数计错需减分时,每按一次S4键减1分。
采用单片机控制是这个系统按键操作使用简洁,LED显示,安装方便。
解决了篮球比赛计分器的安装问题,节约了线材,适合在各种规模的体育场馆使用,完全可以代替传统的用钟表进行计时的方法,当然稍加改动也可以用于其他球类比赛,是体育器材向智能化发展的一个实例。
关键词:AT89C51 LED显示定时/计数器Based on the basketball game JiFenQi 51 SCM designAlmost toThis system is used for the design of single-chip AT89C51 core components. Use a total of seven sections Yang LED display device. In the design of the CPC access for 7 total Yang LED display, to record the team score, 2 LED display range of 0-99 points can be achieved, basically meeting schedule needs. When the team have 1 points, press the button and S1, according to two points with 2 points, S2 keys to 3 points press S3 button and three points. If plan to reduce the wrong scores points, each time you press the button minus 1. S4 'Using single-chip microcomputer control system is the key operation, the LED display concise and easy installation. To solve the problem of the basketball game JiFenQi installation, saving a wire, suitable for all kinds of sports venues, can completely replace the traditional method of using clock time, of course, revising can also be used to other ball games, sports equipment to the development of intelligence is an example of.Keywords: AT89C51 LED display time/counters目录引言 (1)1 设计意义与要求 (7)1.1 设计意义 (7)1.2 设计要求 (7)2系统总体方案及硬件设计 (10)2.1 AT89C51简介 (10)2.2 数码管显示原理 (10)2.3 系统总体方案 (11)3 编程设计 (12)3.1 定时/计数器 (12)3.2 程序流程图 (13)3.3 程序分析 (15)4 Proteus软件仿真 (16)4.1 Proteus仿真软件简介 (16)4.2 仿真过程 (16)5 调试分析............................................................................. 错误!未定义书签。
基于51单片机的篮球赛计时计分器的系统设计摘要:本文提出了一个基于51单片机的篮球比赛计时计分器的系统设计方案。
系统采用基于C语言的程序设计,具有计时、计分、倒计时等功能。
此外,系统具有易操作、高精度、低功耗、防误操作等优点。
本文首先对篮球比赛计时计分器的功能和需求进行了分析,然后介绍了系统设计的硬件和软件方案,最后进行了系统测试和分析,验证了系统的稳定性和可靠性。
关键词:51单片机、篮球比赛、计时计分器、系统设计Abstract:This paper proposes a system design scheme of abasketball game timer and scorer based on the 51 single-chip microcomputer. The system adopts C language-based program design, which has functions such as timing, scoring, countdown, etc. In addition, the system has the advantages of easy operation, high accuracy, low power consumption, andanti-misoperation. This paper first analyzes the functionsand requirements of the basketball game timer and scorer, and then introduces the hardware and software design scheme ofthe system, and finally tests and analyzes the system toverify the stability and reliability of the system.Keywords: 51 single-chip microcomputer, basketball game, timer and scorer, system design1. 研究背景篮球比赛是一种广泛开展的体育活动,而比赛计时计分器是篮球比赛中必不可少的设备。
51单片机篮球计分器毕业设计序言计分器是篮球比赛中必不可少的设备,它能够记录比赛的得分情况,帮助裁判员和观众清晰地了解比赛进程。
在传统的篮球比赛中,计分器通常是由人工操作的,但是随着科技的发展,人工操作的计分器已经逐渐被自动化的电子计分器所取代。
而随着计算机科学与技术的不断发展,单片机技术在这方面的应用也越来越广泛。
本篇文章将介绍一种基于51单片机的篮球计分器设计方案,尝试探讨如何利用单片机技术实现篮球比赛计分的自动化。
一、设计方案的背景与意义在传统的篮球比赛中,计分工作通常由工作人员手动操作。
这种方式需要有专门的工作人员负责计分,不仅浪费人力资源,而且容易出现人为错误。
引入自动化的电子计分器,既能够提高比赛的计分效率,又能够减少人为错误的发生,提高了比赛的公正性。
利用单片机技术实现篮球计分器,不仅仅只是提供了一款便携、高效的计分器,更是为单片机技术在现实生活中的应用提供了一种有益的示范。
二、设计方案的具体实施1. 系统整体设计本设计方案将基于51单片机,通过按键输入、LED/LCD显示,实现对篮球比赛的实时计分和时间计时功能。
为了方便观众和裁判员的观看,还会配备蜂鸣器作为得分提示。
2. 功能设计本篮球计分器设计将主要包括以下功能:(1)得分计数功能:通过按键输入,实现对两支球队的得分计数功能。
(2)时间计时功能:通过按键输入,设置比赛的计时时长,并且实时显示比赛剩余时间。
(3)得分提示功能:在每次得分后,通过蜂鸣器提示观众和裁判员有球队得分。
(4)数据保存功能:为了防止断电导致数据丢失,设计方案将引入EEPROM芯片,实现数据的保存与恢复功能。
三、硬件设计1. 单片机选择本设计方案将选择51单片机作为主控芯片,它具有低功耗、高性能和丰富的外设资源,非常适合用于嵌入式系统的设计。
2. 输入输出设备为了实现按键输入和LED/LCD显示,本设计方案将使用矩阵键盘和LED/LCD模块作为输入输出设备。
课程设计实验报告一、题目:篮球记分器二、主要元器件:STC89C52 12M晶振四位一体数码管两位数码管2个4.7K欧排阻2个极性电容电容22pF 电阻10K欧开关8个导线若干三、主要功能:1.12分钟倒计时2.分别给A、B队加1、2、3分并显示3.换场A、B两队分数交换4.暂停四、工作原理:1.原理图2.方框图3.实物图开始置首显示码初始值定时器0初始化开放EA和TR0显示12分钟倒计时循环检查开关是否按下4.程序#include<reg51.h>unsigned char code seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x00,0x90 }; int i=11,j=59,a=0,b=0,m=0,n=0,temp,s=0,r=24,k;sbit aa=P0^0;sbit bb=P0^1;sbit one=P0^2;sbit two=P0^3;sbit three=P0^4;sbit exchange=P0^5;sbit stop=P0^6;sbit led=P3^6;sbit tt=P3^7;void delay(int x){int w,q;for(w=0;w<x;w++)for(q=0;q<120;q++);}void display(int i,int j,int a,int b){P2 = 0x01;P1 = seg[i/10];delay(1);P2 = 0x00;P2 = 0x02;P1 = seg[i%10];delay(1);P2 = 0x00;P2 = 0x04;P1 = seg[j/10];delay(1);P2 = 0x00;P2 = 0x08;P1 = seg[j%10];delay(1);P2 = 0x00;P2= 0x10;P1 = seg[a/10];delay(1);P2= 0x00;P2= 0x20;P1 = seg[a%10];delay(1);P2 = 0x00;P2 = 0x40;P1 = seg[b/10];delay(1);P2 = 0x00;P2= 0x80;P1 = seg[b%10];delay(1);P2 = 0x00;}void time0() interrupt 1{TH0 = 0xb1;TL0 = 0xe0;m++;if(m==50){m=0;j--;if(j==-1)j = 59;n++;if(n==60){n=0;i--;if(i==0&&j==0){ET0=1;TR0 = 1;}}}display(i,j,a,b);}void main(){P0 = 0x00;display(12,0,0,0);TMOD = 0x01;TH0 = 0xb1;TL0 = 0xe0;IE = 0x82;TR0 = 1;while(1){if(aa==1&&one==1){a++;display( i, j, a, b);while(one==1);}else if(aa==1&&two==1){ a=a+2;display( i, j, a, b);while(two==1);}else if(aa==1&&three==1){a=a+3;display( i, j, a, b);while(three==1);}else if(bb==1&&one==1){b++;display( i, j, a, b);while(one==1);}else if(bb==1&&two==1){ b=b+2;display( i, j, a, b);while(two==1);}else if(bb==1&&three==1){ b=b+3;display( i, j, a, b);while(three==1);}else if(exchange==1){temp = a;a = b;b = temp;delay(500);}else if(stop==1){ET0=0;TR0=0;while(stop==1);while(stop==0);while(stop==1){ET0=1;TR0=1;}}}}五、工作过程:初始化定时器T0,并开启T0中断,十二分钟倒计时开始工作,每隔20uS数码管显示分、秒,循环检查各开关是否按下并做相应处理。
1.设计任务和性能指标1.1设计任务利用单片机完成篮球比赛计分器,倒计时器,能更改时间和记分。
1.2性能指标(1)计分器能实现0-99的分数显示。
(2)倒计时器能实现12分钟倒计时的准确显示,能实现暂停,时间的更改,倒计时完毕实现上下半场的自动更换。
(3)能够实现场次的手动更换。
2 设计方案2.1任务分析模拟篮球比赛计分器就是用单片机来控制一个矩阵键盘和数码管,模拟真实的篮球计分器,两个LED灯来表示上下半场,利用数码管倒计数表示倒计时和记分,再使用矩阵键盘来更改分数和倒计时。
2.2方案设计根据设计的要求可知,系统的硬件原理框图如下图所示。
系统硬件框图单片机选用的是STC89C52RC,它与8052系列单片机全兼容,但其内部带有8KB的FLA SH ROM,设计时无需外接程序存储器,为设计和调试带来极大的方便。
倒计时和记分使用三个数码管来显示,同时需要对三个数码管进行显示。
键盘系统可以根据系统的需要设置不同的键的个数,可以选择线式键盘或矩阵式键盘,若单片机的IO口不够用时,可以考虑扩展8255或8155满足系统的要求。
软件方案方面,软件可由汇编语言完成,也可由C语言完成。
软件设计可以分为以下几个功能模块:主程序:初始化。
键盘监控模块:实现实时的硬盘监控。
场次模块:实现场次更换。
时间更改模块:实现时间更改。
分数更改模块:记分。
倒计时模块:定时器的中断服务子程序,完成1ms的时间定时,实现时间的精确倒数。
3 系统硬件设计3.1单片机的最小系统STC公司生产的STC89C52RC单片机它是硬件电路的核心部分,时钟电路晶振使用11.0592MHz,复位电路采取按键复位方式。
单片机系统的时钟电路单片机系统的复位电路3.2电源电路设计电源用5V直流直接供电。
3.3数码管显示电路显示电路采用2个2位共阳数码管,P0作为数码管的输出,P1.1,P1.2分别作为数与位的选择。
分数显示电路倒计时显示电路锁存器电路3.4矩阵键盘电路键盘电路使用12键九宫格模式,使用P2.0-P2.6进行键盘的监控。
课程设计任务书设计题目篮球比赛计分器设计学生姓名所在院系电子信息与电气工程学院专业、年级、班设计要求:1.结合单片机串行口工作原理,用AT89S52设计一个篮球比赛计时计分器。
2.能够记录整个赛程的比赛时间并可同时用数码管显示。
3.拥有键盘接口,可通过键盘修改当前的比赛成绩(成绩修改包括加减1、2、3)。
4.能够随时刷新甲、乙两队在整个比赛中的比赛成绩。
5.能够通过数码管显示两队的比赛成绩。
6.比赛中场和结束时,能发出报警。
学生应完成的工作:1.根据设计任务选定合适的单片机,根据控制对象设计接口电路。
2.根据电路工作过程,画出软件流程图,根据流程图编写相应的程序,进行调试并打印程序清单。
3.根据所确定的设计电路,利用相关软件绘制电路原理图、仿真图等,提供元器件清单。
4.根据电路及器件,完成安装、焊接和调试工作。
5.根据设计过程,撰写实习报告。
6.该生在此次设计中主要负责了倒计时程序的查找、电路的仿真和元器件的领取任务。
参考文献阅读:【1】单片机原理及应用[M].张毅刚编著.高等教育出版社;【2】51系列单片机及C51程序设计[M].王建校,杨建国等编著.科学出版社;【3】单片机原理及接口技术[M].徐煜明,韩艳编著.电子工业出版社;【4】单片机C语言和汇编语言混合编程实例详解[M].杜树春.北京航空航天大学出版社;工作计划:2012.05.07 8:00~11:30 下达课程设计任务书,介绍课程设计整体情况15:00~18:30 熟悉课题,查阅资料2012.05.08 8:00~11:30 教师进行方案性提示,主要原理15:00~18:30 学生根据课题需要,拟定系统硬件方案2012.05.098:00~18:30 讨论,优化并确定系统硬件方案2012.05.108:00~18:30 讨论并确定程序流程,逐步开始撰写课程设计报告2012.05.118:00~18:30 根据程序流程图编写程序2012.05.148:00~18:30 讨论、优化最终完成系统软件设2012.05.158:00~18:30 系统硬件电路制作,并检查课程设计报告撰写进度2012.05.168:00~18:30 系统硬件电路制作,并检查课程设计报告撰写进度2012.05.178:00~18:30 烧录程序,系统调试2012.05.188:00~11:30 完成课程设计报告的撰写15:00~18:30 集中检查收取课程设计报告及完成的实物任务下达日期:2012 年5月7 日任务完成日期:2012 年5月18 日指导教师(签名):学生(签名):篮球比赛计分器设计摘要:篮球比赛计分器的设计是为了解决篮球比赛时计分与计时准确方便和灵活适用的问题而提出的,我组设计的篮球比赛计分器硬件部分主要利用AT89S52单片机完成了计分与计时的功能,并通过两个四位七段数码管分别用来显示比赛时间和甲、乙比赛双方的分数,软件部分利用Keil C51软件来进行编译,通过Proteus软件进行仿真,最后将生成的HEX文件烧入到单片机芯片中。
工程设计课程报告基于51单片机的篮球计分器姓名:莫崇维学号: ********2012 年 12月 22 日基于51单片机的篮球计分器一.需求分析篮球是一项充满乐趣的运动,打篮球可以学到很多课本里没有的东西,比如信任,合作,鼓励等,现在篮球普及率已经很高,不仅仅是专业运动员的运动,也是普通老百姓的活动,不管是走在学校里,还是公园里,甚至是乡村里,都能看到篮球场,都能看到打篮球的人,篮球已成为我们大部分人生活里不可或缺的组成部分,每天都能听到有人在谈论篮球,说说自己喜欢的NBA巨星……因为喜欢篮球,所以打篮球,时不时会来场激烈的比赛,篮球计分器将让我们摆脱用粉笔或记分牌计分带来的不便,轻轻松松几个按钮开关就能让我们记下分数,让我们感受到科技给我们带来的巨变。
计分器主要功能:1、记下双方比分,随时显示2、能够随时更改双方比分3、能够调整比赛的时间,还有暂停时间4、能够对换比分当双方更换场地5、时间走完能发出终场比赛信号二.方案设计根据所学的C语言基础知识和一些编程思想,对所需的一些硬件进行市场调查比较,选择了比较简单,易于实现的51单片机,结合运用了C语言思想进行方案设计,运用keil uversion软件编写程序。
51单片机内部的定时器/计数器进行中断可以结合软件延时实现计时。
采用89C51芯片作为硬件核心,其内部采用FlashROM,具有4KB ROM存储空间,能与3V的超低压工作,由于电路设计中时由于不具备ISP在线编程技术,可以运用STC-isp烧入程序。
图1给出了本系统的实现框图。
图1 总体框图三.电路原理设计电路主要包括CPU部分、电源部分、复位电路部分、按键部分、LED显示部分。
1、CPU部分51单片机为单芯片微控制器,常见封装形式为40脚双列直插式塑料封装DIP-40,其引脚识别为:正面面向用户,缺口向上,左上面第一脚为1脚,然后按逆时针方向依次为2~40脚。
通常第一脚有标志符号。
51单片机管脚图如图2所示。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图2 单片机引脚图管脚说明:VCC:供电电压。
GND:接地。
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口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时, ALE 只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
单片机是一种微控制器,任何为控制器正常工作最基本的条件是要有正确的电源、时钟电路好复位信号,三者缺一不可。
单片机正常工作最基本条件是:正确的电源、时钟信号、复位信号。
51系列单片机第40引脚接电源+5V,第20引脚接地。
电压过高或者过低均会引起单片机CPU部工作。
单片机指令执行时在时钟脉冲控制下进行的,时钟脉冲信号是由单片机内部时钟电路及18脚、19脚外接晶振和电容组成的时钟电路产生的。
时钟电路异常,也会引起单片机CPU部工作,可通过测量30脚(ALE)是否有时钟脉冲六分频信号输出来判断振荡电路是否起振。
复位电路时在CPU通电后,给复位端9脚(RST)一个复位脉冲,使CPU内部处于初始工作状态。
51系列单片机是高电平复位,在正确的复位后(工作状态)9脚应保持低电平。
如果复位电路出现故障,CPU也将无法工作。
由于CPU的复位电路只有在开机瞬间产生复位脉冲,周期一般为几毫秒,用万用表无法鉴别正常与否。
对于只有上电复位的复位电路,快速判断CPU是否有故障可以采取强制复位的方法,将复位瞬时接电源正端,如果此时CPU恢复工作,说明CPU的复位电路出现故障。
对于有按键复位的复位电路,按下复位键,测量复位端是否有高电平产生来判断复位电路工作是否正常。
图3 CPU控制电路2、电源部分图4 电源部分如图4所示,为单片机,复位电路提供电源。
3、复位电路部分如图5所示,单片机中RST端口通过一个10uF的电解电容接VCC,又通过一个10K的电阻接地。
接VCC的电容为复位电容,接地的电阻为下拉电阻。
工作过程:单片机刚上电时需复位一次才能可靠工作,通过电容接VCC,是利用电容充电来提供>>2个机器周期的高电平时间让单片机复位,如此单片机可以正常工作了,这之后又不要求单片机复位,所以可以通过10K的电阻下拉接地,保证RST脚维持在低电平状态(即不复位状态)。
图5 复位电路4、按键部分如图6所示,键盘对应名称如下:ADD1,DEC1,EXCHANGE,ADD2,DEC2,RUN/STOP其中,ADD1 甲队比分加1键,(暂停时为调整时间分钟加1)DEC1 甲队比分减1键,(暂停时为调整时间分钟减1)EXCHANGE 换场键,半场休息时换场。
ADD2 乙队比分加1键,(暂停时为调整时间秒钟加1)DEC2 乙队比分减1键,(暂停时为调整时间秒钟减1)RUN/STOP 启动暂停键,比赛开始时按下启动计时,比赛开始。
比赛开始后,按下为暂停计时,比赛暂停。
图6 按键部分5、LED显示部分如图7,图8和图9所示,分别代表甲乙两队记分牌和剩余时间牌。
其中图5为剩余时间牌,初始剩余时间默认为12:00;图8和图9为甲乙两队的比分值,用三位数表示,范围从000到999。
图7 D2(4LED)图8 D3 (3LED) 图9 D4 (3LED)系统的总电路图图10给出了系统总电路图123456654321DCBAT i t l eN u m b e rR e v i s i o nS i z eBD a t e :15-J u n -2012S h e e t o f F i l e :E :\项目开发\篮球计分器\蓝球记分器新版.d d b D r a w n B y :P 1.01P 1.12P 1.23P 1.34P 1.45156P 1.67P 1.78R S T 9P 3.0(R X D )1031(T X D )11P 3.2(I N T 0)12P 3.3(I N T 1)13P 3.4(T 0)14P 3.5(T 1)15P 3.6(W R )16P 3.7(R D )17X T A L 218X T A L 119G N D 20(A 8)P 2.021(A 9)P 2.122(A 10)P 2.223(A 11)P 2.324(A 12)P 2.425(A 13)P 2.526(A 14)P 2.627(A 15)P 2.728P S EN 29A L E /P R O G 30E A /V P P 31(A D 7)P 0.732(A D 6)P 0.633(A D 5)P 0.534(A D 4)P 0.435(A D 3)P 0.336(A D 2)P 0.237(A D 1)P 0.138(A D 0)P 0.039V C C 40U 1A T 89C 51Y 112M H zC 222C 322C O M1R 12R 23R 34R 45R 56R 67R 78R 89R P 11K1234K 5A D D 21234K 6D E C 21234K 7R U N /S T O PV C CR 14.7KD 1P O WE RV C CR 210K321P 1D CV C C112233445566S 1S W I T C HA A F FB B E E D D d p d pC C G G S 1S 2S 3S 4V C C1234K 3D E C 11234K 4E X C H A N G E1234K 2A D D 1S 5S 6S 7S 8S 9S 10S 1S 2S 4S 3S 6S 8S 9E EE DDC DCC G B GGF F F A S 10A AB BS 5S 7dp C 4104E 1D 2d p 3C 4G5B 6S 17S 28F 9A 10S 311D 33L E DE 1D 2d p 3C 4G5B 6S 17S 28F 9A 10S 311D 43L E DCV C CR 34.7K L S 1S P E A K E Rb ceQ 18550V C C+C 110u FE 1D 2d p 3C 4G 5B 7S 38S 29F 10A11S 112S 46AAKKD 24LE DS 2图10 系统总电路图四、硬件设计与调试1、电路板的的焊接要区分开电源地和信号地,电源地主要是针对电源回路而言的,而信号地主要是指两块芯片或者模块之间的通信信号的回流所流过的路径,电源地可以理解为通过发电厂与大地相连接而信号地仅仅是电路板上所有接地信号的公共端。