收藏 分享(赏)

篮球计分器课程设计.doc

上传人:weiwoduzun 文档编号:2717028 上传时间:2018-09-25 格式:DOC 页数:29 大小:2.83MB
下载 相关 举报
篮球计分器课程设计.doc_第1页
第1页 / 共29页
篮球计分器课程设计.doc_第2页
第2页 / 共29页
篮球计分器课程设计.doc_第3页
第3页 / 共29页
篮球计分器课程设计.doc_第4页
第4页 / 共29页
篮球计分器课程设计.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

1、机 械 与 电 子 工 程 学 院课 程 设 计 报 告课 程 名 称 单 片 机 原 理 及 接 口 技 术 设 计 题 目 篮 球 计 分 器 的 设 计 所 学 专 业 名 称 自 动 化 班 级 111 学 号 011123 学 生 姓 名 小 微 指 导 教 师 王 老 师 2014 年 5 月 10 日机电学院数字电子技术课程设计任 务 书设计名称: 篮 球 计 分 器 的 设 计 学生姓名: 小微 指导教师: 王老师 起止时间:自 2013 年 5 月 12 日起 至 2013 年 5 月 26 日止一、 课程设计目的设计一种基于单片机技术对篮球比赛进行简单计分的篮球计分器。二、

2、课程设计任务:1、能记录整个赛程的比赛时间,并能随时实现暂停。 2、能随时刷新甲 、乙两队在整个过程中的比分 , 加分有误时可通过按键实现减分调整。 3、中场交换比赛场地时,能自动交换甲、乙两队比分的位置。 4、比赛结束时,能发出报警声。5 需要调整比赛时间,可通过按键进行加时和减时的调整。三、基本要求:1、允许采用 MCS-51 系列或其他类型单片机。2、系统程序采用汇编或 C 语言编制。3、硬件原理图采用 proteus 软件绘制。 机电学院单片机课程设计指导老师评价表院(部) 机电学院 年级专业 自动化 111学生姓名 小微 学生学号 011123题 目 篮 球 计 分 器 的 设 计一

3、、 指导老师评语该课题是基于单片机的篮球计分器设计,采用单片机 80C51,4 个两位共阳极 LED 数码管显示时间和甲乙两队比分,同时矩阵键盘实现了加分,减分,比分切换等功能,达到设计目的。报告文字通顺,内容详实,论述充分、完整,立论正确,结构合理;报告字数符合相关要求,课题背景介绍清楚;设计方案合理逻辑性强,具有说服力;图表完备、符合规范要求;能对整个设计过程进行全面的总结,得出有一定价值的实验结果。课程设计总体结构合理,思路清晰,设计方案正确详细,课程设计已达到要求。指导老师签名: 年 月 日 二、 成绩评定指导老师签名: 年 月 日 目录摘要与关键字 .11.绪论 21.1 设计背景

4、.21.2 计任务及要求 .22.系统总体方案设计 32.1 方案设计与选择 .3方案一: .3方案二: .4方案确立: .43.系统硬件设计 53.1 篮球计分器硬件设计的基本要求 .53.1.1 硬件设计基本要求 53.1.2 引脚应用说明 53.1.3 引脚排列图 63.2 显示电路 .73.2.1 显示电路设计 73.2.2 按键设计 83.4 晶振电路模块 .83.5 复位电路模块 .93.6 报警模块 .94. 系统程序设计 104.1 设计思想 104.2 主程序设计 105.仿真验证 126.结论 13参考文献 .14附录一 .15附录二 .161摘要与关键字摘要:单片机,亦称

5、单片微电脑或单片微型计算机。它是把中央处理器(CPU) 、随机存取存储器(RAM) 、只读存储器(ROM) 、输入/输出端口(I/0)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。本设计是基于 AT89S52 单片机的篮球计时计分器,利用 7 段共阴 LED 作为显示器件。在此设计中共接入了 4 个 2 位一体 7 段共阴 LED 显示器前者用来记录赛程时间,其中 2 位用于显示分钟,2 位用于 1 显示秒钟,后者用于记录甲乙队的分数,每队 2 个 LED 显示器显示范围可达到 099 分。赛程计时采用倒计时方式,比赛开始时启动计时,直至计时到零为止。其次,为了配合计时器和计分器

6、校正调整时间和比分,我们特定在本设计中设立了一个 4*4 的矩阵键盘,用于设置,调整时间,启动,调整分数和暂停等功能。采用单片机控制是这个系统按键操作使用简洁,LED 显示,安装方便。主控芯片采用 AT89S52 单片机,采用 C 语言进行编程,编程后利用 Keil uVision3 来进行编译,再生成的 HEX 文件装入芯片中,采用 proteus 软件来仿真,检验功能是否能够正常实现。关键词:篮球计时计分系统;七段共阴 LED 数码管;AT89C5121.绪论1.1 设计背景体育比赛计时计分系统是对体育比赛过程中所产生的时间,比分等数据进行快速采集记录,加工处理,传递利用的信息系统。根据不

7、同运动项目的不同比赛规则要求,体育比赛的计时计分系统包括测量类,评分类,命中类,制胜类得分类等多种类型。篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统。篮球比赛的计时计分系统由计时器,计分器等多种电子设备组成,同时,根据目前高水平篮球比赛要求,完善的篮球比赛计时计分系统设备应能够与现场成绩处理,现场大屏幕,电视转播车等多种设备相联,以便实现高比赛现场感,表演娱乐观众等功能目标。由于单片机的集成度高,功能强,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等独特的优点,使单片机迅速得到了推广应用

8、,目前已经成为测量控制应用系统中的优选机种和新电子产品的关键部位。世界各大电气厂家,测控技术企业,机电行业,竞相把单片机应用于产品更新,作为实现数字化,智能化的核心部件。篮球计时计分器就是以单片机为核心的计时计分系统,由计时器,计分器,综合控制器和 24 秒控制器等组成。1.2 计任务及要求任务: 设计一个用于赛场的篮球计时计分器。要求:1、能记录整个赛程的比赛时间,并能随时实现暂停。 2、能随时刷新甲、乙两队在整个过程中的比分, 加分有误时可通过按键实现减分调整。 3、中场交换比赛场地时,能自动交换甲、乙两队比分的位置。 4、比赛结束时,能发出报警声。5 需要调整比赛时间,可通过按键进行加时

9、和减时的调整。32.系统总体方案设计篮球计时计分器主要包括单片机控制系统、计时显示模块、计分显示模块、定时报警,按键控制键盘模块。通过这几个模块的协调工作就可以完成相应的计时计分控制和显示功能。这四个模块的相互连接如下图 1-1 所示:图 2-1 系统总流程图本设计是基于 AT89S52 单片机的篮球计时计分器,利用 7 段共阴 LED 作为显示器件。在此设计中共接入了 1 个四位一体 7 段共阴 LED 显示器,2 个两位一体 7 段共阴 LED 显示器,前者用来记录赛程时间,其中 2 位用于显示分钟,2 位用于显示秒钟,后者用于记录甲乙队的分数,每队 2 个 LED显示器显示范围可达到 0

10、99 分。赛程计时采用倒计时方式,比赛开始时启动计时,直至计时到零为止。2.1 方案设计与选择LED 数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据 LED 数码管的驱动方式的不同,可以分为静态式和动态式两类。方案一:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的 I/O 端口进行驱动,或者使用如 BCD 码二- 十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 端口多,如驱动 5 个数码管静态显示则需要 58=40 根 I/O 端口来驱动,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路

11、的复杂性。4方案二:LED 数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的 8 个显示笔划“a,b,c,d,e,f,g,dp“的同名端连在一起,另外为每个数码管的公共极 COM 增加位选通控制电路,位选通由各自独立的 I/O 线控制,当单片机输出字形码时,单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为 12ms ,由于人的视觉暂留现象及发光二的余辉效

12、应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的 I/O 端口,而且功耗更低。方案确立:由于数码管动态显示占用 I/O 口数量少,外部硬件电路简单,故本次试验采用数码管动态显示驱动。53.系统硬件设计3.1 篮球计分器硬件设计的基本要求系统硬件主要是由单片机 AT89C51、计时显示电路、计分显示电路、报警电路和 4*4 的矩阵键盘五个部分组成。3.1.1 硬件设计基本要求单 片 机: AT89C51,显示器件 : 七段共阴 LED 显示器,按 键: 矩阵式按键。3.1.2 引脚应用说

13、明AT89C51 管脚说明:VCC(40):供电电压,接5V 的电压。 GND(20):接地。P0 口(3932):P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。当 P0 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时P0 外部必须被拉高。 P1 口(18):P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4TTL门电流。P1 口管脚写入 1 后,被内部上拉为高,可用

14、作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 FLASH 编程和校验时,P1 口作为第八位地址接收。 P2 口(2127):P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个TTL 门电流,当 P2 口被写“1” 时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时, P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功

15、能寄存器的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。 P3 口(10 17):P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门电流。当P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。 P3 口也可作为 AT89C51 的一些特殊功能口,如下表所示: P3 口管脚备选功能:P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) 6P3.2 /INT0(外部中断 0) P3.3 /INT1(外部中断 1) P3.4 T0 (记时器 0

16、 外部输入) P3.5 T1 (记时器 1 外部输入) /PSEN(29):外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的 /PSEN 信号将不出现。 /EA/VPP(31):当/EA 保持低电平时,则在此期间外部程序存储器( 0000H-FFFFH) ,不管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高电平时,此间内部程序存储器。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP) 。 XTAL1(19):反向振荡放大器的输入及内部时钟工作电路的

17、输入。 XTAL2(18):来自反向振荡器的输出。P3.6 /WR (外部数据存储器写选通) P3.7 /RD (外部数据存储器读选通) P3 口同时为闪烁编程和编程校验接收一些控制信号。 RST(9):复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。 ALE/PROG(30):当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个

18、ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时, ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。3.1.3 引脚排列图7图 3-1 AT89C52 单片机引脚图3.2 显示电路3.2.1 显示电路设计本设计采用共阴极数码显示器,通常,共阴极接低电平(一般接地) ,其它管脚接段驱动电路输出端。当某段驱动电路的输出端为高电平时,该端所连接的字符导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。同样,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电

19、流来确定相应的限流电阻。本次设计在显示模块用到的是一个 4 位一体和 2 个两位一体共阴极数码管,共有 8 个代码输入口和 8 个位选输入口,采用排阻提供上拉电流数码管,以保证有足够大的电流点亮数码管,采用动态驱动,使各位数码管逐个轮流受控显示,这就是动态驱动,由于扫描速度极快,显示效果与静态驱动相同,其具体图形如下图 3-1,3-2 所示。图 3-2 计时显示8图 3-3 比分显示3.2.2 按键设计由于在比赛中,甲、乙两队的比分是不断变化的,所以需设置比分刷新控制装置;此功能由 4*4 的矩阵键盘完成。 当有键按下时,执行相应的功能。图 3-4 按键显示3.4 晶振电路模块时钟电路在单片机

20、系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟是保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢。为达到振荡周期是 12MHZ 的要求,这里要采用 12MHZ 的晶振,另外有两个 33P 的电容,两晶振引脚分别连到 XTAL1 和 XTAL2 振荡脉冲输入引脚。具体连接图如图 2-2 所示图 3-5 晶振电路XTAL218XTAL119ALE30E31PSN29RST9P0.0/AD0390.1/ 138P0.2/AD2370.3/ 336P0.4/AD4350.5/ 534P0.6/AD630.7/ 73

21、2P1.01 1.2P1.23 1.34P1.451.56P1.67 1.78P3.0/RXD103.1/T 1P3.2/INT0123.3/IT113P3.4/T014P3.7/RD173.6/W163.5/T115P2.7/A1528P2.0/A8212.1/92P2.2/A10232.3/1 24P2.4/A12252.5/13262.6/1427U1AT89C51C13pC53p X2CRYSTAL XTAL218XTAL119ALE301PSN29RST9P0.0/AD039.1/ 1 8P0./AD237./ 6P0./AD35./ 5 4P0./AD63./ 7 2P1.01 .

22、12P1.23 .34P1.45 .56P1.67 .78P3.0/RXD10./TP3.2/IN 12.3/IT 3P.4/014P3.7/RD17.6/W 63.5/T 5P2.7/A1528P2.0/A821.1/9P2.2/A1023.3/ 4P2.4/A1 25.5/ 3 6.6/ 4 7AT89C51C13p3 RYSTAL93.5 复位电路模块复位是单片微机的初始化操作,其主要功能是把 PC 初始化为 0000H,使单片微机从 0000H 单元开始执行程序。除进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,可以按复位键以重新启动,也可以通过

23、监视定时器来强迫复位。RST 引脚是复位信号的输入端。复位电路在这里采用的是上电+按钮复位电路形式,具体连接电路如图 2-3:XTAL218XTAL119ALE30 EA31 PSEN29RST9P0.0/AD0 39P0.1/AD1 38P0.2/AD2 37P0.3/AD3 36P0.4/AD4 35P0.5/AD5 34P0.6/AD6 3P0.7/AD7 32P1.01 P1.12 P1.23P1.34 P1.45 P1.56P1.67 P1.78P3.0/RXD10P3.1/TXD1P3.2/INT0 12P3.3/INT1 13P3.4/T0 14P3.7/RD17P3.6/WR1

24、6P3.5/T115P2.7/A15 28P2.0/A8 21P2.1/A9 2P2.2/A10 23P2.3/A1 24P2.4/A12 25P2.5/A13 26P2.6/A14 27U1AT89C51K5C110uR620RC32p图 3-6 复位电路3.6 报警模块蜂鸣器通过一 NPN 三极管进行驱动,如图触发信号有基极引入。如图 2-6.图 3-7 报警电路104. 系统程序设计4.1 设计 思想在设计程序之前,我们首先要对单片机应用系统预完成的任务进行深入的分析,明确系统的设计任务、功能要求和技术指标。其次,要对系统的硬件资源和工作环境进行分析。这是单片机应用系统程序设计的基础和条

25、件。4.2 主程序设计本次单片机课程设计软件设计部分采用模块化程序设计,程序部分由主程序、扫描显示子程序、计时加(减)1 秒的子程序、暂停子程序、延时子程序等组成.其程序流程图如图 3-1 图 3-2。图 4-1 主程序流程图11图 4-2 扫描刷新显示子程序流程图void timer0(void) interrupt 1 / T0 中断服务TH0=0x4C; / 50MS 延时初值TL0=0x00;t+;if(t=20)t=0;miao-;if(miao=-1)fen-;miao=59; / 当 59s 减完,分减 1if(fen=-1)fen=0; / 分清零miao=0;beep=0;

26、/ 时间到,蜂鸣器响125.仿真验证图 5-1 仿真模拟图 a按比赛开始按钮,开始状态显示“10” ,即比赛开始。图 5-1 仿真模拟图 b时间倒计时,同时显示甲乙比分。136.结论在没有做课程设计以前,觉得课程设计只是对知识的单纯总结,但是通过这次课程设计发现自己的看法有点太片面,课程设计不仅是对前面所学知识的一种检验,也是对自己能力的一种提高,通过这次课程设计使自己明白了原来的那点知识是非常欠缺的,要学习的东西还很多,通过这次课程设计,明白学习是一个长期积累的过程,在以后的工作和生活中都应该不断的学习,努力提高自己的知识和综合素质,并将理论与实际相结合,学以致用,不再是纸上谈兵,。对我们学

27、生来说,理论与实际同样重要,这是我们以后在工作中说明自己能力的一个重要标准。在这次课程设计中,同学之间互相帮助,有什么不懂的大家在一起商量,发现我们所学的知识实在是有限,不过我们能够充分利用网络的优势去查阅资料。而且,课程设计中涉及到的电路图用了比较新的一款 PROTEUS 进行设计和仿真,使我多掌握了一个得力的仿真工具。我在整个设计过程中懂得了许多东西,当遇到一不了的问题,跟同伴一起商量、合作,或许能收到事半功倍的效果。不管学什么,一定要打好基础,并将其学好、学精,但空有知识也不一定就能说明什么,还得能为己所用;还有更重要的是培养了独立思考和设计的能力,树立了对知识应用的信心,相信会对今后的

28、学习工作和生活有非常大的帮助,并且提高了自己的动手实践操作能力, 使自己充分体会到了在设计过程中的成功喜悦。虽然这个设计做的不是很完美,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益;最后,也是我感触比较深的一点,这次课程设计时为数不多的独立完成的一次,虽然过程中遇到很多困难,让自己犯愁过,彷徨过,急躁过,可当自己很快调整好心态,从跌倒的地方爬起来继续,最后取得成功,不止是成功后的喜悦,也是一次锻炼!通过这次课程设计,明白学习是一个长期积累的过程,在以后的工作和生活中都应该不断的学习,努力提高自己的知识和综合素质,并将理论与实际相结合,理论与实际同样重要。在设计的过程

29、中不可避免的遇到了许多困难。尤其是在最后的调试中,会因为某种原因而得不到满意的结果,但最后还是解决了。最后在调试结果终于出来以后我更是无比兴奋,无比自豪。在这里我要感谢帮助过我的老师和同学尤其是我的课程设计指导老师张毅宁老师,没有你们也就没有这份课程设计和论文。对我而言,知识上的收获重要,精神上的丰收更加可喜。我们每一个人永远不能满足于现有的成就,人生就像在爬山,一座山峰的后面还有更高的山峰在等着你。挫折是一份财富,经历是一份拥有。这次课程设计必将成为我人生旅途上一个非常美好的回忆。14参考文献【1】余发山,单片机原理及应用技术:中国矿业大学出社,2003【2】 河南理工大学电气学院:单片机实

30、验报告指导册,2008【3】刘法治,常用电子器件及典型芯片应用技术:机械工业出版社,2007【4】何立民,MSC-51 系列单片机应用系统设计:北京航空航天大学出版社,199315附录一整体仿真图16附录二#include#define uchar unsigned char#define uint unsigned intuchar code tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;uchar b,d,t;uchar fen=10,miao=0;uchar flag;uchar temp;sbit beep=P17

31、;void delay(uint z)uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void dispaly()uchar miaoge,fenge,miaoshi,fenshi;miaoge=miao%10;P2=0x80;P0=tabmiaoge;delay(1);miaoshi=miao/10;P2=0x40;P0=tabmiaoshi;delay(1);fenge=fen%10;P2=0x20;P0=tabfenge;delay(1);fenshi=fen/10;P2=0x10;P0=tabfenshi;delay(1);P2=0x00;17void

32、dispaly1(char a) /甲队比分显示uchar ge1,shi1;b=a;ge1=b%10;P2=0x02;P0=tabge1;delay(1);shi1=b/10;P2=0x01;P0=tabshi1;delay(1);P2=0x00;void dispaly2(char c) /乙队比分显示uchar ge2,shi2;d=c;ge2=d%10;P2=0x08;P0=tabge2;delay(1);shi2=d/10;P2=0x04;P0=tabshi2;delay(1);P2=0x00; void keyscan() /矩阵键盘扫描控制char a,c,e,f;dispaly

33、1(a);dispaly2(c);P3=0xfe;temp=P3;temp=tempwhile(temp!=0xf0)delay(5);temp=P3;temp=temp18while(temp!=0xf0)temp=P3;if(temp=0xee)delay(5);if(temp=0xee)a+; /甲队比分加 1if(a=100)a=99;dispaly1(a);if(temp=0xde)delay(5);if(temp=0xde)a=a+2; /甲队比分加 2if(a=100)a=99;dispaly1(a);if(temp=0xbe)delay(5);if(temp=0xbe)a=a+

34、3; /甲队比分加 3if(a=100)a=99;dispaly1(a);if(temp=0x7e)delay(5);if(temp=0x7e)a-; /甲队比分减 1if(a=100)a=99;dispaly2(c);if(temp=0xdd)delay(5);if(temp=0xdd)c=c+2; / 乙队比分加 2if(c=100)c=99;dispaly2(c);20if(temp=0xbd)delay(5);if(temp=0xbd)c=c+3; / 乙队比分加 3if(c=100)c=99;dispaly2(c);if(temp=0x7d)delay(5);if(temp=0x7d

35、) / 乙队比分减 1c-;if(c=-1)c=0;dispaly2(c);while(temp!=0xf0)temp=P3;temp=tempdispaly2(c);P3=0xfb;temp=P3;temp=tempwhile(temp!=0xf0)delay(5);temp=P3;temp=tempwhile(temp!=0xf0)temp=P3;if(temp=0xeb)21delay(5);if(temp=0xeb)a=0;dispaly1(a); / 双方比分清零c=0;dispaly2(c);if(temp=0xdb)delay(5);if(temp=0xdb)e=a;f=c;a=

36、f; / 双方比分切换dispaly1(a);c=e;dispaly2(c);if(flag!=1) / 避免误操作,只有在时间停止的情况下才能加减定时时间if(temp=0xbb)delay(5);if(temp=0xbb) / 定时时间加 5fen=fen+5;if(fen=99)fen=0;if(temp=0x7b)delay(5);if(temp=0x7b) / 定时时间减 1fen-;if(fen=-1)fen=99;22while(temp!=0xf0)temp=P3;temp=tempdispaly2(c);P3=0xf7;temp=P3;temp=tempwhile(temp!

37、=0xf0)delay(5);temp=P3;temp=tempwhile(temp!=0xf0)temp=P3;if(temp=0xe7)delay(5);if(temp=0xe7)TR0=1; / 比赛开始计时按键flag=1;if(temp=0xd7)delay(5);if(temp=0xd7) / 比赛停止计时按键TR0=0;flag=0;if(temp=0xb7)delay(5);if(temp=0xb7)23 / 比赛时间清零fen=0;miao=0;while(temp!=0xf0)temp=P3;temp=tempdispaly2(c);void timer0(void) in

38、terrupt 1 / T0 中断服务TH0=0x4C; / 50MS 延时初值TL0=0x00;t+;if(t=20)t=0;miao-;if(miao=-1)fen-;miao=59; / 当 59s 减完,分减 1if(fen=-1)fen=0; / 分清零miao=0;beep=0; / 时间到,蜂鸣器响void init() / T0 中断初始化TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;ET0=1;EA=1;24TR0=0;void main() / 主程序P2=0xfe;init();while(1)dispaly();keyscan();- 0 -

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

当前位置:首页 > 中等教育 > 小学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报