好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

篮球计时计分器系统设计报告.doc

20页
  • 卖家[上传人]:公****
  • 文档编号:444629537
  • 上传时间:2023-02-04
  • 文档格式:DOC
  • 文档大小:648.91KB
  • / 20 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 篮球计时计分系统设计报告电信131 魏荣根电信132 李卓壮 郑浩目 录1. 系统设计要求及设计思路2. 硬件电路设计 2.1主控电路 2.2按键控制模块 2.3显示模块 2.4定时报警模块3. 软件开发流程及代码分析4. 实验总结 引 言•篮球计时计分器硬件电路设计•篮球计时计分器软件设计篮球计时计分器系统以AT89C51单片机为核心,系统显示部分包括计时显示和计分显示两部 分,均采用共阳极LED动态扫描方式显示系统采用单片机定时器TO中断计时,计时范围宽,可 进行定时设定,也可以调整小时、分钟、秒等值;计分部分调整灵活,显示范围宽,足以满足各种 规糢赛程需要1. 系统设计要求及设计思路1. 系统设计要求为实现篮球计时计分器系统的设计,本系统应该满足以下几点要求:•能设置整个赛程的比赛时间,在比赛过程中能根据需要暂停和开始计时•能根据比赛情况刷新比赛双方的比分•中场交换比赛场地时,能交换甲、乙两队比分的位置•比赛结束时,能发出报警声2. 系统设计思路根据设计任务与要求,设计思路如下:系统主要功能包括记分和计时两部分,能实现两队比分的加分、减分、汁时以及其他多种显 示效果;系统控制模块有:2位动态显示记分模块、4位动态显示计时模块、两队加分减分模块、 按键查询模块、分秒控制模块等。

      具体实现过程:釆用7段LED数码管动态显示整个赛程的比赛时间和两队的比分情况通过 4个按键和外部中断0实现输入功能,用于赛前时间调整、比赛过程比分纪录、时间启停以及比 赛结束以后的声音报警等功能 2.硬件电路设计根据设计要求与设计思路,确定该系统的设计方案,图6-1为该系统设计方案的硬件电路设 计框图硬件电路主要由4部分组成:主控电路、按键控制电路、显示模块和定时报警模块下面对其进行一一介绍2.1主控电路系统的主控电路即为单片机最小系统,前丨M几章已经介绍过,其电气原理图如图6-2所示, 这串.不再赘述2.2按键控制模块系统共涉及9个按键,采用查询方式进行键盘扫描,具体电气原理图如图所示 : 2.3显示模块系统采用共阳极数码管显示,前面也已作详细介绍,在此不再赘述本系统显示分为三部分 时间计时显示、A队分数显示以及B队分数显示显示模块如图所示:2.4定时报警模块定时报警模块采用蜂鸣器声音报警比赛结束后,P3.7输出一 低电平,此时,发射结正向偏置且集电结反向偏置,满足三极管放 大的外部条件,使信号放大从而驱动扬声器产生报警电气原理图 如图6-5所示。

      3.软件开发流程及代码分析本系统软件部分主要包含定时中断函数、延时函数、显示函数、蜂鸣器启动函数、外部中断 o函数、按键函数等下面一一进行介绍1..软件开发流程篮球比赛中,得分可分为1分、2分、3分三种情况,系统在这设置加1分功能和加2分功能, 得2分可按一下加2分功能键,得3分可先后按一下加2分功能键和加1分功能键主函数中调 用显示函数,可显示时间、比分中断函数及按键扫描函数配合实现篮球比分和时间显示及修改 功能其中,用1片4位数码管显示时间,2片2位数码管显示比分,均采用动态扫描方式显示; 时间启停、分数累加,均通过接入键盘电路实现2. .代码分析(1)函数声明及变景定义为方便程序的编写,把部分常用的变量进行伪定义include#include #define uint unsigned int #define uchar unsigned charuchar code table[]= {0x3 f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar disbuffer[8]={0};uchar minute=0,second=0; //定义全局变量uchar Ascore=03score=0,temp=0; //uchar flagel=0; //定义标志位uchar flage=0; //uint county,z; //sbit bizz=P3A7; //蜂鸣器 sbit add1= PlA0; //加一分sbit add2=PlAl; //加两分sbit minus 1=P1A2; //减一分sbit exchange=PlA3; //上下半场换场时加分sbit bstop= PlA4; //全场结束 关闭蜂鸣器 sbit start=PlA5; //开始sbit stopagain=PlA6; //暂停 开始sbit tum=PlA7; //切换加分sbit timeadd=P3A2; //加时间 设定时间 (2)定时中断函数产生一个Is的计时单元Void ininterruptO interrupt 1{TH0=(65536-50000y256;TLO=(65536-50000)%256;count++;if(count==20){Count=0;If(second==0&&minute==0; { Et0=0; }else if(second==0 && minute!=0) { second=59; minute--; } else if(second!=0 ) { second--; } }(3)延时函数void delay ()函数用于显示延时,voiddelayl ()函数用于延时消抖。

      void delay() //显不延时函数uint x,y;for(x=10;x>0;x-)for(y=10;y>0;y-);//延时消抖函数16msvoid delay 1(){uint x,y;foi0pc-)for(y=360;y>0;y-);}(4)显示函数//显示函数功能是将数码管的码值进行处理送到端口,使得数码管显示时间和分数Void dinplayQuchar ij; uchartemp;disbuffer[3]=second% 10; disbuffer[2]=second/l 0; disbuffer[ 1 ]=minute% 10; disbufifer[0]=minute/10; disbuflfer[5]=Ascore% 10; disbuffer[4]=Ascore/10; disbufFer[7]=Bscore% 10; disbuffer[6]=Bscore/l 0; temp=Oxfe;P2=temp;for(i=0;i<8;i++){j=disbuffer[i];P0=tableD];delayO;temp=_crol_(temp, 1); P2=temp; }}(5)蜂鸣器启动函数功能是等比赛结束后,启动蜂鸣器提示比赛结束void bizzerQ "蜂鸣器函数while(minute=0 && sec(md=0) 判断时间结(6)外部中断0函数void exinterrupt() interrupt 0 //中断{ delay1(); if(!timeadd) //按键设置比赛时间 { while(!timeadd); minute++; } }(7)按键函数功能有实现A队加1分、加2分,A队减1分,B队加1分、加2分,B队减1分,下半场切换比分,暂停继续等void button() //按键 函数{ if(!turn) { delay1(); //延时消抖 以下用delay1的都是延时消抖 if(!turn) { while(!turn); flage+=1; //标志位 } } if(flage%2==0) { if(!add1) { delay1(); if(!add1) { while(!add1); //按键时 松手检测 Ascore+=1; // A加 1 分 } } if(!add2) { delay1(); if(!add2) { while(!add2); Ascore+=2; } }if(!minus1) { delay1(); if(!minus1) { while(!minus1); Ascore-=1; } } } else { if(!add1) { delay1(); if(!add1) { while(!add1); Bscore+=1; } }if(!add2) { delay1(); if(!add2) { while(!add2); Bscore+=2; } } if(!minus1) { delay1(); if(!minus1) { while(!minus1); Bscore-=1; } } }if(!exchange) //下半场换场切换比分按键 { delay1(); if(!exchange) { while(!exchange); temp=Ascore; Ascore=Bscore; Bscore=temp; } } if(!stopagain) //暂停 继续 按键 { delay1(); if(!stopagain) { while(!stopagain); flage1+=1; } } if(flage1%2==1) { TR0=0; } else TR0=1; if(!bstop==1) { delay1(); if(!bstop==1) { while(!bstop。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.