篮球比赛计时控制器设计.docx
《篮球比赛计时控制器设计.docx》由会员分享,可在线阅读,更多相关《篮球比赛计时控制器设计.docx(14页珍藏版)》请在冰豆网上搜索。
篮球比赛计时控制器设计
课程设计任务书
题目篮球比赛计时控制器设计
专业、班级学号姓名
主要内容、基本要求、主要参考资料等:
一、主要内容:
①熟悉单片机应用系统得设计方法和规范,达到综合的目的。
②学习文件检索和查找数据手册的能力。
③学习protel软件的使用。
④学会整理和总结涉及文档报告。
二、基本要求:
①以MCS-51系列单片机为核心,设计篮球比赛计时控制器。
2篮球比赛上下半场四节制,每节12分钟,要求能随时暂停,启动后继续计时,一节比赛结束后可清零。
3按篮球比赛规则,进攻方有24秒为例计时。
4“分”“秒”显示用LED数码管。
5用开关控制计时器的启动/暂停。
624秒计时时间到、每节结束、全场结束能自动音响提示。
三、主要参考资料:
①张毅珅等单片微型计算机原理及应用西安电子科技大学出版社
②李建忠编著单片机原理及应用西安西安电子科技大学出版社
完成期限:
指导教师签名:
课程负责人签名:
2005年6月日
目录
第一章基本原理简介…………………………3
第一节设计简介……………………………3
第二节8031定时复位功能简介……………3
第三节LED数码显示器与8155关系简介…4
第二章原理图…………………………………7
第三章流程图…………………………………8
第四章程序……………………………………9
第一节程序设计内容………………………9
第二节汇编源程序…………………………9
第五章总结……………………………………13
参考文献………………………………………14
附录……………………………………………14
第一章基本原理简介
第一节设计简介
篮球比赛中除了有总时间倒计时外,为了加快比赛的节奏,新的规则还要求进攻方在24秒内有一次投篮动作,否则视为违例。
根据要求,以MCS51系列单片机为核心,设计篮球比赛计时控制器。
篮球比赛上下半场四节制,每节12分钟,要求能随时暂停,启动后继续计时,一节比赛结束后可清零。
按篮球比赛规则,进攻方有24秒为例计时。
“分”“秒”显示用LED数码管。
用开关控制计时器的启动/暂停。
24秒计时时间到、每节结束、全场结束能自动音响提示。
该篮球比赛计时器的设计,可对比赛总时间和各方每次控球时间计时。
该计时器采用按键操作、LED显示,非常实用。
此计时器在程序参数稍加修改后也可作为其他球类比赛的计时器。
主控芯片为MCS51系列8031,采用6MHz晶振,P1.0-P1.6作键盘输入。
A1为总计时工作开启键,比赛开始;A2为启动24秒计时键,投篮或交换控球时按下此键,24秒计时开始;A3为24秒计时停止键(没有违例);A4为暂停键,可以控制总计时和24秒计时暂停;A5为总计时和24秒计时同时启动键。
电路采用动态显示,逐个地循环点亮各位数码管,每位显示1ms左右,使人看起来就好像在同时显示不同的字符一样。
第6位显示完后,再进行锁存输出。
显示器的前两位显示24秒计时,后4位显示总计时的分、秒。
用T0定时器中断进行总计时处理,24秒计时用T1定时器中断计时。
同时电路通过键盘扫描,根据键值转相应键处理,定时道响铃。
第二节8031定时复位功能简介
8031单片机的定时控制功能是由片内的时钟电路和定时电路来完成的,而片内的时钟产生有两种方式:
一种是内部时钟方式;一种是外部时钟方式,该设计应用片内震荡方式(如图1)。
采用内部时钟方式时,片内的高增益反相放大器通过XTAL1、XTAL2外接作为反馈元件的片外晶体振荡器(呈感性)与电容组成的并联谐振会路构成一个自激振荡器,向内部时钟电路提供振荡时钟。
振荡器的频率主要取决于晶体的振荡频率,一般晶体可在1.2-12MHz之间任选,电容C1、C2可在5-30pF之间选择,电容的大小对振荡频率有微小的影响,可起频率微调作用。
MCS-51单片机在时钟电路工作后,在RST/Vpd端持续给出2个机器周期的高电平就可以完成复位操作(一般复位脉冲宽度大于10ms).复位分为上电复位和外部复位两种方式。
该设计既可以为上电复位也可以为外部复位如图2。
当需要外部复位时,按下复位按钮即可达到复位目的。
复位不影响片内RAM存放的内容,而ALE、PSEN在复位期间将输出高电平。
图1图2
第三节LED数码显示器与8155关系简介
由于该设计涉及到LED数码显示器有六个,故不能直接把8031单片机和LED数码显示器相连,而是通过可编程接口8155实现数据的转化与传递。
8155是一种多功能接口芯片。
它内部有两个可编程的8位并行I/O口、一个6位并行I/O口、一个14位定时/计数器以及256字节的RAM存储器。
可以直接和MCS-51系列颠片机相连接,而不需要增加硬件电路,它是单片机应用系统中最常见的一种接口芯片。
如图3,8153的AD0-AD7为地址/数据复用线。
它直接与8031单片机的P0口相连接,实现地址、数据、命令及状态信号传输,并由PA0-PA7分别接LED数码显示器的a,b,c,d,e,f,dp端,由PC0-PC5六个输出端口来调节LED数码显示器。
由于仅用到一个8155接口,从电路结构来看,采用静态显示不可能实现对六个LED数码显示器的控制,因此只有采用动态法对LED数码显示器的控制。
CE为片选信号,输入,低电平有效。
IO/M为RAM和I/O口选择线。
当IO/M=1匙,选中I/O口;当IO/M=0时,选中RAM。
ALE为地址锁存信号。
在ALEde下降沿将CPU输出到AD0-AD7总线上的地址信号和CEjiIO/M信号锁存到8155内部锁存器中。
RD和WR分别是读选通信号和写选通信号,输入低电平有效。
在读信号是,当CE=0,且RD=0时,将8155片内RAM单元I/Okou中的内容传送到AD0-AD7总线上去。
在写信号时,当CE=0,且WR=0时,将CPU输出到AD0-AD7总线上的信号写道8155的RAM单元或I/O口中。
RESET为复位信号,高电平有效。
当RESET端加沙功能5us左右宽的正脉冲式,8155初始复位,把3个I/Okou均置为输入方式。
TIMERIN为定时器输出。
它是8155片内定时器的脉冲信号输入端。
TIMEROUT为定时器输出。
通过它可以输出矩形波或脉冲波。
该设计通过8031的P1.2来作为8155的片选信号,P1.1控制IO/M。
Vcc为电源正端,采用单一+5V电源。
Vss为电源地端。
图3
LED数码显示器是1种由LED发光二极管组合显示字符的显示器件。
它使用了8个LED发光二极管数码显示器。
其内部结构如图4和图5。
该设计用到共阴极7段LED数码显示器。
把发光二极管的阴极连载一起构成公共阴极,使用时公共阴极接地。
每个发光二极管的阳极通过电阻与输入端相连。
当阳极端输入高电平时,段发光二极管就导通点亮。
而输入低电平时则不点亮。
该设计采用软件为主的接口方法。
这种接口方法的电路如图6所示,它是以软件查表代替硬件译码,不但省区了译码器,而其还能显示更多的字符。
但是驱动器是必不可少的,因为仅靠接口提供不了较大的电流共LED显示器使用。
实际使用的LED数码显示器位数较多,为了简化线路、降低成本,大多采用以软件为主的接口方法。
对于多位LED数码显示器,通常采用动态扫描显示方法,即逐个地循环地点亮各位显示器。
这样虽然在任意识可只有一位显示器被点亮,但是由于人眼具有视觉残留效应能够,看起来与全部显示器持续点亮的效果基本一样。
为了实现LED显示器的动态扫描显示,除了要给显示器提供显示段码之外,还要对显示器进行位的控制,即通常所说的“段控”和“位控”。
因此对于多位LED数码显示器的接口电路来说,需要有两个输出口,其中一个用于输出显示段码;另一个用于输出位控信号。
“位控”实际上就是对LED显示器的公共端进行控制,位控信号的数目与显示器的位数相同。
图4图5
图6
第二章电路原理图
第三章程序流程图
第四章程序
第一节程序设计内容
1.在设计过程中我们用一个储存单元作为秒储存单元,当一秒到来时,就让秒计数单元加一,当秒计数达到60时,就自动返回到0,重新计数。
2.对于秒计数单元中的数据要把它十位和个位分开,方法采用对10整除和对10求余。
3.在LED数码上显示,仍通过查表的方式完成。
第二节汇编源程序
secondEQU30H
minuteEQU31H
tEQU32H
ORG1000H
MOVminute,#0FF;minute=-1
MOVR7,#0FFH;(R7)=-1
MOVR6,#100;(R6)=100
MOVA3H,#00H;P2.2为低电平
MOVA2H,#0FH;P2.1为高电平
KEY1:
INCR7;(R70=(R7)+1(R7)初值为0
MOVA,R7;A第一次为0循环以后不为0
JNZCLOCK;在每次12秒结束时响音响
LCALLKS1;检查有闭合键没有
JNZA1;A非0,有键闭合则转
LJMPLK8;无键闭合则则转并返回
A1:
LCALLDIR;消抖
LCALLDIR
MOVA,90H;P0.0地址送累加器
CJNEA,#0FH,START;比较判断是非是A键,使则转
START:
INCminute
MOVA,minute;
MOVB,#10
DIVAB
MOVDPTR,#TABLE
MOVCA,@A+DPTR
MOVP0,A
LCALL
MOVA,B
MOVA,@A+DPTR
MOVP0,A
MOVPC2,0FH
LCALLDD
LCALLLD1
MOVA,B
MOVA,@A+DPTR
MOVP0,A
MOVPC3,0FH
LCALLDD
LCALLLD1
MOVA,minute
CJNEA,#0CH,KEY1
NEXT:
MOVsecond#00H
MOVB,#10
DIVAB
MOVDPTR,#TABLE
MOVCA,@A+DPTR
MOVP0,A
MOVPC0,0FH
LCALLDD
LCALLLD1
MOVA,B
MOVA,@A+DPTR
MOVP0,A
LCALLDD
LCALLLD1
LCALLKS1
JNZA4
LJMPPP
PP:
LCALLDEY1S
LCALLKS1
JNZA2
LJMOMM
MM:
INCsecond
CJNZA,#60,NEXT
LJMPSTART
DELY1S:
LCALLDELY
DJNZR6,MM
LJMPDELY1S
RET
DD:
MOVR0,#7AH
MOVR3,#01H
MOVA,#00H
MOVR1,#BITPORT
MOVX@R1,A
LD1:
MOVA,@R0
MOVDPT,#TABLE
MOVCA,@A+DPTR
MOVR1,#SEGPORT
MOVX@R1,A
MOVR1,#BITPORT
MOVA,R3
MOVX@R1,A
LCALLDELY
INCR0
JBA.5,LD2
RLA
MOVR3,A
SJMPLE1
LD2:
RET
A2:
MOVt#0H
CLRA
ADDAt
CJNEA24,CLOCK
LCALLKS1
JNZA3
CJMPLL
RET
LL:
MOVA,t
MOVB,#10
DIVAB
MOVDPTR,#TABLE
MOVCA,@A+DPTR
MOVR0,A
MOVPC4,0FH
LCALLDD
LCALLLD1
MOVA,B
MOVCA,@A+DPTR
MOVP0,A
MOVPC5,0FH
LCALLDD
LCALLLD1
MOVAsecond
ADDAR1
RET
A3:
LCALLDIR
LCALLDIR
MOVA,92H
CINEA#0FH,MM
A4:
LCALLDIR
LCALLDIR
MOVA93H
CINEA,#0FH,STOP
LCALLKS1
JNZA5
LJNPLK8,STOP
STOP:
SJMP$
REST
A5:
LCALLDIR
LCALLDIR
MOVA,94H
CJNEA,#0FH,PP
RET
CLOCK:
MOVA7,0FH
RET
LK8:
MOVA,#0FFH
SJMP$
RET
KS1:
MOVDPTR,#97H
MOVA,@DPTR
ANLA,#0FH
ORLA,#F0H
CPLA
RET
TABLE:
DB3FH,06H,5BH,4FH,66H,7DH,07H,7FH,6FH
END
第五章总结
通过这次课程设计,我深深地体会到“书到用时方恨少”这句话。
由于平时学习的不够深入,只是对课本上一些原理及助记符的学习,没有进行过深入的个人设计和分析,从而使该设计时遇到很大困难,一时间感觉完成该课程设计时间太少不可能完成,但是经过几天的努力和同学间协作,竟然如期完成了,尽管忙得不可开交,但是经过自己亲自设计一番确实受益很深,这次设计必将为以后我在该领域学习和研究打下很好的一个开端。
在这里我要深深的感谢帮助我的老师和同学,没有他们的热情帮助和支持我恨难相信自己能否独立完成。
通过这次的设计之后我感到我以后要多看些这方面的书籍,以扩大自己的知识范围,为以后自己深入学习做好基础。
除次之外,理论要与实际操作联系起来,这次在设计过程中,我明显地感觉到自己的动手能力太差,一些看起来比较简单的东西,需要做几遍才能做好。
在这方面,我还要多多练习。
同时,它也锻炼了我的查阅资料的能力,这些为我以后走入社会打下了不可磨灭的一笔。
总之,总之,做课程设计过程中,刚开始会觉得很困惑,很麻烦,但慢慢地你就会发现其实还挺有意思,尤其到了后期,当看到自己亲手制作的东西,就会有一种说不出来的喜悦,使我信心倍增,有一种成就感。
这次课程设计使我加深了对专业课得了解,提高了自己的动手能力,感谢老师给了我们这次宝贵的机会。
参考文献
1张毅珅等《单片微型计算机原理及应用》
西安西安电子科技大学出版社
2李建忠编著《单片机原理及应用》
西安西安电子科技大学出版社
附录
表18155的PC口线联络信号定义
方式
口位
作PA口联络信号
作PA和PB口联络信号
PC0
AINTR
AINTR
PC1
ABF
ABF
PC2
ASTB
ASTB
PC3
输出
BINTR
PC4
输出
BBF
PC5
输出
BSTB
表2LED数码显示器的显示段码
段码位
D7
D6
D5
D4
D3
D2
D1
D0
显示位
dp
g
f
e
d
c
b
a
表3十六进制数及空白字符与P的显示段码
字型
共阳极段码
共阴极段码
字型
共阳极段码
共阴极段码
0
C0H
3FH
9
90H
6FH
1
F9H
06H
A
88H
77H
2
A4H
5BH
b
83H
7CH
3
BOH
4FH
C
C6H
39H
4
99H
66H
d
A1H
5EH
5
92H
6DH
E
86H
79H
6
82H
7DH
F
84H
71H
7
F8
07
空白
FFH
00H
8
80H
7FH
P
8CH
73H