EDA篮球比赛计分器课程设计.doc_第1页
EDA篮球比赛计分器课程设计.doc_第2页
EDA篮球比赛计分器课程设计.doc_第3页
EDA篮球比赛计分器课程设计.doc_第4页
EDA篮球比赛计分器课程设计.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

河南理工大学本科课程设计报告1、 任务及要求: 设计一个用于赛场的篮球计时计分器,其完成的功能如下所示: 1、能记录整个赛程的比赛时间,并能修改比赛时间。 2、能随时刷新甲、乙两队在整个过程中的比分。 3、中场交换比赛场地时,能交换甲、乙两队比分的位置。 4、比赛结束时,能发出报警声。二、硬件设计2.1 AT89C52简介单片机是在一块芯片中集成了CPU、RAM、ROM、定时/计数器和多功能I/O口等计算机所需要的基本部件的大规模集成电路。其以体积小、功能全、性价比高等诸多优点而独具特色,在工业控制、尖端武器、通信设备、家用电器等嵌入式应用领域中独占鳌头。如果说C语言程序设计课程设计软件设计的基础课,那么单片机以其系统硬件构架完整、价格低廉、学生能动手等特点,成为工科学生硬件设计基础课。2.2 数码管显示原理数码管实际上是由7个发光管组成8字形构成的,加上小数点就是8个。我们分别把他命名为A,B,C,D,E,F,G,H。 图2.2 数码管内部结构图假设我们要显示一个数字2, 那么 A、B、G、E、D这5个段的发光管亮就可以了,C、F、H不亮,同时由于接法为共阴接法,那么为高电平是亮,低电平是灭。从高往低排列, P1.7-P1.0写成二进制为01011011, 把他转化为16进制则为5BH。我们可以根据硬件的接线把数码管显示数字编制成一个表格,见下表,以后直接调用就行了。数码管的接口有静态接口和动态接口两种。静态接口为固定显示方式,无闪烁,其电路可采用一个并行口接一个数码管,数码管的公共端按共阴接GND,本次课程设计由于所需数码管不多,故可用些种方法接线。这种接法占用接口多,仅能接少量数码管。动态接口采用各数码管循环轮流显示的方法,当循环显示的频率较高时,利用人眼的暂留特性,看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出,另一接口完成各数码管的轮流点亮。多位一体的数码管原理和单个的差不多。表2.1 共阴极数码管显示显示 P1.7 小数点 P1.6 G P1.5小FP1.4 EP1.3 DP1.2 CP1.1 BP1.0 A HE代码 0 00111 11 13FH1 0 0 0 0 0 11 0 06H 2 0 1 0 1 1 01 1 5BH 3 0 1 0 01 1 11 4FH 4 0 11 00 1 1 0 66H5 01 1 0 1 1 0 16DH 6 01 1 1 1 1 0 1 7DH 7 00 00 0 1 11 07H 8 0 1 1 11 1 1 1 7FH 9 0 1 10 1 1 1 1 6FH 2.3 总体方案:基于单片机系统的篮球赛计时计分器的系统构成图如下图所示: 图2.3 系统结构图本系统采用单片机AT89C51作为本设计的核心元件。利用7段共阴LED作为显示器件。在此设计中共接入了8个7段共阴LED显示器,其中4个用于记录AB队的分数,每队2个LED显示器显示范围可达到099分,足够满足赛程需要,另外4个LED显示器则用来记录赛程时间,其中2个用于显示分钟,2个用于显示秒钟。赛程计时采用到计时方式。即比赛前将时间设置好,比赛开始时启动计时,直至计时到零为止。计时范围可达到099分钟,也完全满足实际赛程的需要。其次,为了配合计时器和计分器校正调整时间和比分,我们特定在本设计中设立了11个按键,其中8个用于设置,交换场地,启动和暂停等功能。2.4 硬件原理图:系统硬件图如下图2.4所示:TR0=0显示时间和比分停止计时开始计时TR0位取反加减分处理开始/暂停按钮按下?开始/暂停按钮按下?YNYN三、 软件设计3.1 主流程图:2、源程序代码见附1。四、Proteus软件仿真1.进入比赛,先设置时间为一节或着半场。默认是15分钟(按下“A+1”进行分钟加1,按下“A-1”进行分钟减1),如图4.1 图4.12、 按下“START/PAUSE”开始比赛或者暂停,如图4.2 图4.23、 上面的液晶显示为计时显示。下面的液晶显示为分数显示“左侧为攻左半场的队的分数,右侧为攻右半场的对的分数。”换场后依然如此。4、按下“CHANGFIELD”交换场地,重新计时。5、A+1,A+2,A+3,A-1,B+1,B+2,B+3,B-1进行两队分数调整附1:源程序代码ORG 0000HLJMP MAINORG 0003HLJMP CHANGEORG 000BHLJMP TIMEORG 0013HLJMP TIAOSHIORG 001BHLJMP YANSHIMAIN: MOV SP,#50H MOV TCON,#04H MOV 20H,#00H ;秒 MOV 21H,#0CH ;分 MOV 22H,#00H ;A队分数; MOV 23H,#00H ;B队分数; MOV 24H,#02H ; MOV 25H,#01H MOV 26H,#0CH ;分钟定时区; MOV 30H,#00H ; MOV 31H,#00H ;时间缓冲区; MOV 32H,#02H ; MOV 33H,#01H ; MOV 34H,#00H ; MOV 35H,#00H ;分数显示缓冲区; MOV 36H,#00H ; MOV 37H,#00H ; MOV 39H,#03H ;TIAN HEIHEI MOV TMOD,#11H MOV TH0,#0D8H MOV TL0,#0F0HMOV TH1,#0D8HMOV TH1,#0F0H MOV IE,#10001111B MOV IP,#05H MOV R2,#64HCLR P3.6START:LCALL DISPT LCALL DISPF JNB P1.0,PP1 ;A队加一分 JNB P1.1,PP2 ;A队加两分 JNB P1.2,PP3 ;A队加三分 JNB P1.3,PP4 ;A队减一分 JNB P1.4,PP55 ;B队加一分 JNB P1.5,PP66 ;B队加两分 JNB P1.6,PP77 ;B队加三分 JNB P1.7,PP88 ;B队减一分 JB P3.0,START LCALL DELAY JB P3.0,STARTSTOP1:JNB P3.0,STOP1 LCALL DELAY JNB P3.0,STOP1 CPL TR0 ;按键奇数次开始,偶数次暂停 LJMP STARTPP55: LJMP PP5PP66: LJMP PP6PP77: LJMP PP7PP88: LJMP PP8PP1: LCALL DELAY JB P1.0,PPBSTOP11:JNB P1.0,STOP11 LCALL DELAY JNB P1.0,STOP11 INC 22H MOV A,22H LJMP STOREAPP2: LCALL DELAY JB P1.1,PPBSTOP22:JNB P1.1,STOP22 LCALL DELAY JNB P1.1,STOP22 MOV A,22H ADD A,#02 MOV 22H,A LJMP STOREAPP3: LCALL DELAY JB P1.2,PPBSTOP33:JNB P1.2,STOP33 LCALL DELAY JNB P1.2,STOP33 MOV A,22H ADD A,#03 MOV 22H,A LJMP STOREAPP4: LCALL DELAY JB P1.3,PPBSTOP44:JNB P1.3,STOP44 LCALL DELAY JNB P1.3,STOP44 DEC 22H MOV A,22HSTOREA:MOV B,#0AH DIV AB MOV 34H,B MOV 35H,APPB: LJMP STARTPP5: LCALL DELAY JB P1.4,PPCSTOP55:JNB P1.4,STOP55 LCALL DELAY JNB P1.4,STOP55 INC 23H MOV A,23H LJMP STOREBPP6: LCALL DELAY JB P1.5,PPCSTOP66:JNB P1.5,STOP66 LCALL DELAY JNB P1.5,STOP66 MOV A,23H ADD A,#02 MOV 23H,A LJMP STOREBPP7: LCALL DELAY JB P1.6,PPCSTOP77:JNB P1.6,STOP77 LCALL DELAY JNB P1.6,STOP77 MOV A,23H ADD A,#03 MOV 23H,A LJMP STOREBPP8: LCALL DELAY JB P1.7,PPCSTOP88:JNB P1.7,STOP88 LCALL DELAY JNB P1.7,STOP88 DEC 23H MOV A,23HSTOREB:MOV B,#0AH DIV AB MOV 36H,B MOV 37H,APPC: LJMP STARTDELAY:MOV R4,#5HDL00: MOV R5,#0FFHDL11: DJNZ R5,DL11 DJNZ R4,DL00 RET;时间中断程序;TIME: PUSH ACC PUSH PSW MOV TH0,#0D8H MOV TL0,#0F0H DJNZ R2,RET0 MOV R2,#64H MOV A,20H CLR C DEC A MOV 20H,A MOV A,21H CJNE A,#00H,PFF ;非0分跳转; MOV A,20H CJNE A,#00H,PFF ;非0分0秒情况跳转; CLR TR0 ;比赛结束停止计时; MOV 20H,#00H MOV 21H,#00H MOV 32H,#00H MOV 33H,#00H LCALL MINGYIN MOV 21H,26H MOV 30H,#00H MOV 31H,#00H MOV 32H,24H MOV 33H,25H LJMP RET0PFF: MOV A,20H CJNE A,#0FFH,OUT MOV 20H,#59 ; MOV 30H,#09H MOV 31H,#05H MOV A,21H DEC A MOV 21H,AOUT: MOV A,20H MOV B,#0AH DIV AB MOV 30H,B MOV 31H,A MOV A,21H MOV B,#0AH DIV AB MOV 32H,B MOV 33H,ARET0: POP PSW POP ACC RETIYANSHI:PUSH ACC ;定时器1中断 PUSH PSW MOV TH1,#0D8H MOV TL1,#0F0H DJNZ R2,RET1 MOV R2,#64HDJNZ 39H,RET1MOV 39H,#03H ;TIAN HEIHEIMOV R2,#64H CLR TR1CLR P3.6RET1: POP PSW POP ACC RETI;鸣音子程序;MINGYIN: SETB P3.6SETB TR1 RETI;时间显示程序;DISPT: MOV R0,#30H MOV R3,#0F7H MOV A,R3PLAYT:MOV P2,A MOV A,R0 MOV DPTR,#DSEG1 MOVC A,A+DPTR MOV P0,A LCALL DL1 MOV P2,#0FFH MOV A,R3 RR A JNB ACC.7,LD1 INC R0 MOV R3,A LJMP PLAYTLD1: RET;比分显示程序;DISPF:MOV R0,#34H MOV R3,#7FH MOV A,R3PLAYF:MOV P2,A MOV A,R0 MOV DPTR,#DSEG1 MOVC A,A+DPTR MOV P0,A LCALL DL1 MOV P2,#0FFH MOV A,R3 RR A JNB ACC.3,LD1 INC R0 MOV R3,A LJMP PLAYF AJMP LD1;调时时间显示程序;DISPW: MOV R0,#24H MOV R3,#0F7H MOV A,R3PLAYW:MOV P2,A MOV A,R0 MOV DPTR,#DSEG1 MOVC A,A+DPTR MOV P0,A LCALL DL1 MOV P2,#0FFH MOV A,R3 RR A JNB ACC.1,LD1 INC R0 MOV R3,A LJMP PLAYWDL1: MOV R7,#05HDL: MOV R6,#0FFHDL6: DJNZ R6,DL6 DJNZ R7,DL RETDSEG1:DB 3FH,06H,5BH,4FH,66H DB 6DH,7DH,07H,7FH,6FH;调时子程序;TIAOSHI:PUSH ACC PUSH PSW JB P3.3,CHU LCALL DELAY JB P3.3,CHU STOPQ:JNB P3.3,STOPQ LCALL DELAY JNB P3.3,STOPQIF10: LCALL DISPW LCALL DISPF JNB P1.3,DECT JB P1.0,WHAIT2 LCALL DELAY JB P1.0,WHAIT2STOPE:MOV C,P1.0 JNC STOPE LCALL DELAY MOV C,P1.0 JNC STOPE INC 26H

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论