基于51单片机比赛计分器设计--课程设计.docx
《基于51单片机比赛计分器设计--课程设计.docx》由会员分享,可在线阅读,更多相关《基于51单片机比赛计分器设计--课程设计.docx(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、等级: 课 程 设 计课程名称单片机原理与应用课题名称比赛计分器设计专 业测控技术与仪器班 级学 号姓 名指导老师2016年3月11日电气信息学院课程设计任务书课题名称比赛记分器设计姓 名专业测控技术与仪器班级学号指导老师课程设计时间2016年2月29日-2015年3月11日(1、2周)教研室意见意见: 审核人:一、任务及要求1、给甲,乙两队分别设置1个加分按钮,按一下能分别实现+1;2、给甲,乙两队分别设置1个减分按钮,按一下能分别实现-1;3、设置一个清零按钮,按一下能实现清零;4、设置一个甲、乙比分对调按钮;5、设置一个加减一分、两分和三分的切换按钮;6、设置预置分按钮。二、进度安排第一
2、周:周一:集中布置课程设计相关事宜,确定设计课题,进行分组和小组分工周二周五:到网上查找相关资料,了解设计方法和练习proteus软件的使用;周六周日:学习初步的模块设计;对所得资料进行整理和分析,连接线路图;第二周:周一周二:使用keil和proteus软件设计,修改程序,纠正错误;周三:软件仿真和系统调试,单片机实物图的连接和调试;周四周五:设计报告撰写。周五进行答辩和设计结果检查。三、参考资料1单片机原理及及应用王迎旭 编 机械工业出版社 20112单片机应用程序设计技术 周航慈 著 北京航空航天大学出版社 2002目 录第1章 设计任务及要求11.1比赛记分器介绍11.2课题和分工11
3、.3 设计要求与内容1第2章 系统方案设计32. 1 总体系统框图32.2 AT89C51单片机介绍3第3章 系统硬件设计73.1 原理图及说明73.2 时钟输入电路73.3 发光二极管显示电路83.4 独立式键盘控制电路83.5 数码管显示电路9第4章 系统软件设计104.1 主要流程图104.2 程序模块11第5章 系统仿真及调试16 5.1调试结果16第6章 总结19参考文献20附录A电路原理图21附录B汇编程序清单22 - 27 -第1章 设计任务及要求1.1 比赛记分器介绍比赛记分器运用广泛,尤其在各类体育运动和体育比赛上,常能见到它的影子,而传统的比赛记分器多采用手翻形式的记分牌,
4、这种记分牌虽然廉价可靠,但使用寿命短,易磨损,计分不方便,位数少,面积小等缺陷使得它难以继续胜任现在的大型体育比赛的计分要求,于是电子化的记分器应运而生,这类记分器以其除了具有一切同记分牌一样的操作外,还有计时报警,比分切换、比分预置等诸多优点,逐渐成为各大比赛首选的记分器。1.2 课题和分工本次课程设计的课题是比赛记分器,是由刘永庚(小组组长)、黄鸿杰、冯德勇三人共同完成此次设计的,其中刘永庚主要负责使用汇编语言在keil软件上按照电路图和课题要求编写出正确的程序,黄鸿杰负责使用proteus软件绘制出符合设计要求和电气原理的比赛记分器电路图,以及进行仿真和演示,本人主要负责收集网络上的相关
5、资料和软件,并进行归纳整理,以及学习相关软件的使用方法,还有对后续出现的错误进行修正,拟写报告。1.3 设计内容与要求1.3.1.设计内容设计一个甲,乙两队用的比赛计分器,要求能实现以下功能:1、设置一个甲队按钮,结合分值切换键能实现甲的加减一分、加减两分、加减三分;2、设置一个乙队按钮,结合分值切换键能实现甲的加减一分、加减两分、加减三分;3、设置一个加减一分、加减两分和加减三分的分值切换按钮;4、设置一个清零按钮,按一下能实现清零;5、设置一个比分切换按钮,能在比赛换场时实现比分的对调;6、设置一个预置分按钮,能从任意比分开始;7、使用六位或八位数码管实时显示比赛双方比分。1.3.2设计要
6、求与内容1、设计方案要合理、正确,系统稳定;2、软件设计要求尽可能精练、简短,并且运行可靠;3、硬件电路力求简单明了,以节约成本。第2章 系统方案设计2.1 总体系统框图本次设计是设计一个基于AT89C51单片机的比赛计分器,在以单片机为主体的基础上配以一定的外围电路和软件,来实现比赛计分器的一些功能。利用2片4个7段共阴级数码管显示器.采用动态显示输出比分,通过甲操作按钮、乙操作按钮、分值切换按钮、对换比分按钮、清零按钮和预置按钮共六个功能按钮可以基本实现设计要求,分值状态用发光二极管的亮和灭来表示。系统设计方案的硬件电路设计的框图如图2-1所示。图2-1 基于AT89C51单片机比赛计分器
7、系统框图2.2 AT89C51单片机介绍AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(PEROM)和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元。2.2.1 AT89C51单片机的主要特点 1)与MCS-51产品指令系统完全兼容 ;2)4k字节可重擦写Flash闪速存储器 ;3)1000次擦写周期 ;4)全静态操作:0Hz24MHz ;5)三级加密程序存储器 ;6)88字节
8、内部RAM ;7)32个可编程IO口线 ;8)2个16位定时计数器 ;9)6个中断源 ;10)可编程串行UART通道; 11)低功耗空闲和掉电模式。 图2-2-2 AT89C51引脚图2.2.2 AT89C51各引脚的功能1)VCCAT89C51电源正极输入,接+5V电压。2)GND电源接地端。3)XTAL1接外部晶振的一个引脚,在单片机内部,它是一反向放大器输入端,这个放大器构成了片内振荡器,它采用外部振荡器时,此引脚应接地。4)XTAL2接外部晶振的一个引脚,在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端,当采用外部振荡器时,则此引脚接外部振荡信号的输入。5)RSTAT89C51
9、的复位信号的输入引脚,高电位工作,只要将此引脚电位提升到高电位,并持续两个周期以上的时间,AT89C51便能完成系统复位的各项工作,使得内部特殊功能寄存器的内容均被设成已知状态。6)ALE/PROGALE是英文“ADDRESS LATCH ENABLE”的缩写,表示允许地址锁存允许信号.当访问外部存储器时,ALE信号负跳变来触发外部的8位锁存器(如74LS373),将端口P0的地址总线(A0A7)锁存进入锁存器中,在非访问外部存储器期间,ALE引脚的输出频率是系统工作频率的1/16,因此可以用来驱动其他外围芯片的时钟输入.当访问外围存储器期间,将以1/12振荡频率输出。7)EA/VPP此引脚为
10、低电平时,则读取外部程序代码(存于外部EPROM中)来执行程序.在使用AT89C51时,此引脚接成高电平使程序运行时访问内部程序存储器,当程序指针PC值超0FFFH时,将自动转向外部程序存储器运行。8)PSEN此为“Program Store Enable”的缩写.在访问外部程序存储器选通信号,低电平有效。在访问外部程序存储器读取指令代码时,每个机器周产生二次PSEN信号。在执行片内程序存储器指令时,不产生PSEN信号,在访问外部数据时,也不产生PSEN信号。9)P0P0口(P0.0P0.7)是一个8位漏极开路双向输入端口,当访问外部数据时,它是地址总线(低8位)和数据总线复用。外部不扩展而单
11、片应用时,则作为一般I/O口使用,P0口每个引脚可以驱动8个LSTTL负载。10)P1P1口(P1.0P1.7)是具有内部提升电路的双向I/O端口(准双向并行I/O端口),其输出可驱动4个LSTTL负载,仅供用户作为输入输出用的端口。P2P2口(P2.0P2.7)是具有内部提升电路的双向I/O端口(准双向并行I/O端口),当访问外部程序存储器时,它是高8位地址,外部不扩展而单片使用时,则作一般I/O口用,每个引脚可驱动4个LSTTL负载11)P3P3口(P3.0P3.7)是具有内部提升电路的双向I/O端口(准双向并行I/O端口),它还提供特殊功能,包括串行通信,外部中断控制、计时计数控制及外部
12、随机存储器的读取或写入控制等功能,其特殊功能引脚分配如下: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外部随机存储器的读选通,低电平有效第3章 硬件设计3.1 原理图及说明如图3.1所示,8个8段共阴极数码显示管采用动态输出方式, 8个发光二极管采用低电平点亮,信号输入采用独立按键方式。图3.1电路原理图3.2 时钟输入电路如图3.2所示,采用的是内部时钟
13、方式,在MCS-51单片机芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2 。而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路。图3.2 时钟输入电路3.3 发光二极管显示电路如图3.3所示,6个LED灯在低电平时点亮,高电平时熄灭,系统上电后,默认分值为+1,此时所有灯均不亮,只在分值切换按钮动作后会使指示灯依次从左到右循环点亮,对应的分值依次是+1、+2、+3、-1、-2、-3。 图3.3 LED显示电路3.4 独立式键盘控制电路如图3.4所示,独立式按键是指用I0口线构成的单个按
14、键电路,每个独立式按键单独占一根I0口线,每根I0口线上按键的工作状态不会影响其他IO口线的工作状态,即一个按键对应着个端口输入,每一个按键都有一个按键电路来判断其是否按下。其中第一个按键为甲队分数控制键,第二个按键为乙队分数控制键,第三个按键为甲乙两队加减分值切换键,第四个按键为甲乙两队比分清零键,第五个按键为甲乙两队比分对调键,第六个按键为甲乙两队比分预置键(预置分均为50)。图3.4独立式键盘控制电路3.5 数码管显示电路如图3.5所示,数码管显示电路使用2片4个8段共阴极数码显示管,采用动态输出方式。采用最前三位数码管显示甲队的分值,最后三位数码管显示乙队的分值,中间两位数码管显示分隔
15、符。74LS245是常用来驱动led或者其他的设备的芯片,它是8路同相三态双向总线收发器,可双向传输数据。74LS245还具有双向三态功能,既可以输出,也可以输入数据。当8051单片机的P0口总线负载达到或超过P0最大负载能力时,必须接入74LS245等总线驱动器 表3.5 LED显示器共阴极部分图3.5数码管显示电路第4章 软件设计4.1 主要流程图4.1.1 主程序流程图 图4.1.1 主程序流程图4.1.2 键盘控制子程序流程图图4.1.2 键盘控制子程序流程图4.1.3 数码管显示子程序流程图图4.1.3数码管显示子程序流程图4.2 程序模块4.2.1 键位模块4.2.1.1 按键设置
16、NA EQU 24H NB EQU 25H ;甲乙两队分数 TEMP EQU 26H ;存放每次计分分值TEMP1 EQU 27HSTA BIT P1.0 ;甲队分值控制位STB BIT P1.1 ;乙队分值控制位SWITCH BIT P1.2 ;计分分值切换控制位 CLR0 BIT P1.3 ;比分清零控制位BFQH BIT P1.4 ;比分对调控制位 YZFZ BIT P1.5 ;预置分值控制位ORG 0000H SJMP START START:MOV DPTR,#TABLE ;将表首址送DPTR MOV NA,#0 MOV NB,#0 ;比分自动清零 MOV TEMP,#1 ;开机默认
17、加减分值为1 MOV P2,#01H ;分值显示灯亮 A1:ACALL DISPLAY ;调显示函数 JNB STA,S1 JNB STB,S2 JNB SWITCH,S3 JNB CLR0,S4 JNB BFQH,S5 JNB YZFZ,S6LJMP A1 ;判断按下的控制键4.2.1.1 甲队控制键S1:LCALL DELAY ;去抖动 JB STA,A1 ;确认按键 MOV A,NA ADD A,TEMP MOV NA,AC0:JB STA,A1 ;等键释放 LCALL DISPLAY SJMP C04.2.3 乙队控制键S2:LCALL DELAY ;去抖动 JB STB,A1 MOV
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 比赛 计分 设计 课程设计
限制150内