收藏 分享(赏)

毕业设计-基于AT89C51单片机的篮球记分牌系统设计.doc

上传人:dreamzhangning 文档编号:4126994 上传时间:2018-12-10 格式:DOC 页数:47 大小:915KB
下载 相关 举报
毕业设计-基于AT89C51单片机的篮球记分牌系统设计.doc_第1页
第1页 / 共47页
毕业设计-基于AT89C51单片机的篮球记分牌系统设计.doc_第2页
第2页 / 共47页
毕业设计-基于AT89C51单片机的篮球记分牌系统设计.doc_第3页
第3页 / 共47页
毕业设计-基于AT89C51单片机的篮球记分牌系统设计.doc_第4页
第4页 / 共47页
毕业设计-基于AT89C51单片机的篮球记分牌系统设计.doc_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、哈尔滨工业大学华德应用技术学院毕 业 设 计 ( 论 文 )题 目 专 业 班 号 学 生 姓 名 指 导 教 师 答 辩 日 期 哈尔滨工业大学华德应用技术学院毕业设计(论文)I摘 要单片机是把主要计算机功能部件都集成在一块芯片上的微型计算机。它是一种集计数和多接口于一体的微控制器,被广泛应用在智能产品和工业自动化上,而 51 单片机是个单片机中最为典型和最有代表性的一种本次毕业设计的主要任务是设计一个篮球比赛记分牌,包括硬件设计和软件设计。硬件设计的主要任务是:LED 数码管显示、按键控制系统设计以及辅助功能的设计。软件设计包括:功能选择、倒计时的实现。本文主要介绍了单片机实现篮球记分牌的

2、整个设计流程,采用汇编语言编写程序。本课题选择 AT89C51 为核心控制元件,设计了日常比赛中用到的篮球记分牌。设计同时引用 MAX7219 专用 LED 驱动芯片,解决了多位 LED 数码管同时显示的问题,硬件结构紧凑,成本低。该单片机篮球记分牌可适应不同篮球规则,通过按键修改每个设置。运行可靠,具有一定的使用价值和竞争价值。关键词 : AT89C51 单片机、LED 数码管、MAX7219、汇编、篮球记分哈尔滨工业大学华德应用技术学院毕业设计(论文)II目录摘 要 .I第 1 章 绪论 1第 2 章 单片机 21.1 单片机的特点及发展概况 21.2 单片机的基本组成 .21.3 单片机

3、的特点 .21.4 单片机的应用 21.5 单片机在篮球记分牌中的应用 3第 3 章 硬件设计 43.1 设计题目分析 .43.1.1 面板设计: .43.1.2 按键及开关功能设定 .53.1.3 系统硬件设计 .63.2 硬件电路设计 .12第 4 章 系统软件设计 144.1 软件设计思路和程序流程图 144.2 程序源代码 16结论 17致谢 18参考文献 19附录一 电路原理图 20附录二 程序源代码 21哈尔滨工业大学华德应用技术学院毕业设计(论文)1第 1 章 绪论单片机出现的历史并不长,它的产生与发展和微处理器的产生与发展大体上同步.1970 年微型计算机研制成功后,随即在 1

4、971 年,美国 Intel 公司生产出了 4位单片机 4004,它的特点是结构简单,功能单一,控制能力较弱,但价格低廉.1976年 Intel 公司推出了 MCS-48 系列单片机,它以体积小 ,功能全,价格低等特点获得了广泛的应用,成为单片机发展进程中的一个重要阶段,此可谓是第一代单片机.在 MCS-48 系列单片机的基础上,Intel 公司在 20 世纪 80 年代初推出了第二代单片机的代表 MCS-51 系列单片机.这一代单片机的主要技术特征是为单片机配置了完美的外部并行总线和串行通信接口,规范了特殊功能寄存器的控制模式,以及为增强控制功能而强化布尔处理系统和相关的指令系统,为发展具有

5、良好兼容性的新一代单片机奠定了良好的基础.近几年出现了具有许多新特点的单片机,可称之为第三代单片机.它以新一代的 80C51 系列单片机为代表.同时 16 位单片机也有很大发展.尽管目前单片机品种繁多,但其中最为典型的仍当属 Intel 公司的 MCS-51系列单片机.它的功能强大,兼容性强,软硬件资料丰富.国内也以此系列的单片机应用最为广泛.直到现在 MCS-51 仍不失为单片机中的主流机型.在今后相当长的时间内,单片机应用领域中的 8 位机主流地位还不会改变.哈尔滨工业大学华德应用技术学院毕业设计(论文)2第 2 章 单片机1.1 单片机的特点及发展概况单片机是一个单芯片形态,面向控制对象

6、的嵌入式应用计算机系统.它的出现及发展使计算机技术从通用型数值计算领域进入到智能化的控制领域.从此,计算机技术在两个重要领域通用计算机领域和嵌入式计算机领域都得到了极其重要的发展,并正在深深地改变着我们的社会。1.2 单片机的基本组成单片机的结构特征是将组成计算机的基本部件集成在一块晶体芯片上,构成一台功能独特的,完整的单片微型计算机.1.3 单片机的特点单片机独特的结构决定了它具有如下特点.(1)高集成度, 高可靠性单片机将各功能部件集成在一块晶体芯片上,集成度很高,体积自然也是最小的.芯片本身是按工业测控环境要求设计的,内部布线很短,其抗工业噪音性能优于一般通用的 CPU.单片机程序指令,

7、常数及表格等固化在 ROM 中不易破坏,许多信号通道均在一个芯片内,故可靠性高.(2)控制功能强为了满足对对象的控制要求,单片机的指令系统均有极丰富的条件:分支转移能力,I/O 口的逻辑操作及位处理能力,非常适用于专门的控制功能.(3)低电压,低功耗为了满足广泛使用于便携式系统,许多单片机内的工作电压仅为1.8V3.6V,而工作电流仅为数百微安.(4)优异的性能价格比单片机的性能极高.为了提高速度和运行效率,单片机已开始使用 RISC 流水线和 DSP 等技术.单片机的寻址能力也已突破 64KB 的限制,有的已可达到1MB 和 16MB,片内的 ROM 容量可达 62MB,RAM 容量则可达

8、2MB.由于单片机的广泛使用,因而销量极大,各大公司的商业竞争更使其价格十分低廉,其性能价格比极高.1.4 单片机的应用哈尔滨工业大学华德应用技术学院毕业设计(论文)3由于单片机功能的飞速发展,它的应用范围日益广泛,已远远超出了计算机科学的领域.小到玩具,信用卡,大到航天器,机器人,从实现数据采集,过程控制,模糊控制等智能系统到人类的日常生活,到处都离不开单片机.其主要的应用领域如下。(1)在测控系统中的应用单片机可以用于构成各种工业控制系统,自适应控制系统,数据采集系统等.例如,工业上的锅炉控制,电机控制,车辆检测系统,水闸自动控制,数控机床及军事上的雷达,导弹系统等。(2)在智能化仪器仪表

9、中的应用单片机应用于仪器仪表设备中促使仪器仪表向数字化,智能化,多功能化和综合化等方向发展.单片机的软件编程技术使长期以来测量仪表中的误差修正,线性化的处理等难题迎刃而解。(3)在机电一体化中的应用单片机与传统的机械产品结合使传统的机械产品结构简化,控制走向智能化,构成新一代的机电一体化产品.这是机械工业发展的方向。(4)在智能接口中的应用计算机系统,特别是较大型的工业测控系统中采用单片机进行接口的控制管理,单片机与主机并行工作,可大大提高系统的运行速度.例如,在大型数据采集系统中,用单片机对模/数转换接口进行控制不仅可提高采集速度,还可以对数据进行预处理.如数字滤波,误差修正,线性化处理等.

10、(5)在人类生活中的应用单片机由于其价格低廉,体积小巧,被广泛应用在人类生活的诸多场合,如洗衣机,电冰箱,空调器,电饭煲,视听音响设备,大屏幕显示系统,电子玩具,信用卡,楼宇防盗系统等.单片机将使人类的生活更加方便舒适,丰富多彩。1.5 单片机在篮球记分牌中的应用由于本次设计的简单篮球记分牌体积小,故要求其控制器体积更小以便能嵌入其结构之中。单片机以微小的体积和编程的灵活性而产生多种控制功能,完全可以满足需求。可以适应不同规则下操作。其具体功能及实现在以下两章做详细介绍。 哈尔滨工业大学华德应用技术学院毕业设计(论文)4第 3 章 硬件设计3.1 设计题目分析题目:篮球比赛电子记分牌 题目要求

11、:1.显示球队的英文名称(缩写)或用 LED 点阵显示中文名2.显示比分用三位数表示3.显示比赛剩余时间,进攻剩余时间,这些剩余时间变为 0 时发出相应警报4.可用按键显示修改球队名称,及比赛剩余时间,并设置暂停键。球队名 _ _ _ vs _ _ _比分 _ _ _ : _ _ _比赛剩余时间 _ _ : _ _ 第_场 进攻剩余时间 _ _系统硬件设计 3.1.1 面板设计:哈尔滨工业大学华德应用技术学院毕业设计(论文)5篮球记分牌的实现方法有很多,可以分为两大类:第一类是全部采用硬件实现;第二类是采用硬件和软件想结合的方法实现。这里采用单片机实现电子钟属于第二种方法。该设计的篮球记分牌基

12、本功能如设计题目要求所述用三位英文字母缩写代表球队名,采用 MAX7219 专用 LED 驱动芯片实现静态显示,共 6 位 LED采用单片机的动态扫描方式动态显示比分、比赛倒计时、进攻倒计时、场次,共需要 13 位 LED 数码管通过按键修改球队名称,及比赛剩余时间等,并设置暂停键,实现倒计时全部暂停。按键有 6 个分别为 START 键 ATTACK 键 UP 键 DOWN 键 SETN 键 SETFT 键和一个状态开关 active 通过蜂鸣器发出倒计时到报警信号,节时到报警 2 秒钟,竟工倒计时到报警 1 秒3.1.2 按键及开关功能设定START 键 比赛开始/暂停ATTACK键进攻开

13、始UP 键 加 1DOWN 键 减 1SETN 键 设置球队名、节时、节数、进攻限时SETFT 键 修改比分、修正比赛时间、修正进攻时间哈尔滨工业大学华德应用技术学院毕业设计(论文)6硬件设计框图: 图 3-1 硬件设计框图3.1.3 系统硬件设计1.器件选型根据以上列出的主要功能,单片机可选用 Atmel 公司生产的,与 8031 完全兼容的 AT89C51 单片机,该单片机除了具有 8031 所有的功能外,该单片机还带有 4KBde FLASH 的程序存储器,外部不需要扩展程序存储器,此时P0、P1、P2、 P3 可以用做通用 I/O 口使用。另外,选用该单片机可以减低系统成本,由于不需要

14、扩展外部 ROM 存储器,系统的数量减少,使硬件结构更加紧凑,系统性能更好。MAX7219 专用 LED 驱动芯片,是一种高集成化的串行输入/ 输出的共阴极 LED 显示驱动器。每片可驱动 8 位 7 段加小数点的共阴极数码管,可以数片级联,而与微处理器的连接只需 3 根线。MAX7219 内部设有扫描电路,除了更新显示数据时从单片机接收数据外,平时独立工作,极大地节省了 MCU有限的运行时间和程序资源。由于一个按键要实现多种状态转换所以,按键采用独立式键盘结构。报警电路采用单音频报警综合其优缺点,LED 显示采用动静结合方式。2.MAX7219 芯片简介 MAX7219 芯片上包括 BCD

15、译码器、多位扫描电路、段驱动器、位驱动器和用于存放每个数据位的 88 静态 RAM 以及数个工作寄存器。通过指令设置这些工作寄存器,可以使 MAX7219 进入不同的工作状态。A.管脚说明图 3-2 是 MAX7219 的管脚分布图。其中:(1)DIN 为串行数据输入端。当 CLK 为上升沿时,数据被载入 16 b 内部移位开关 active 比赛前/比赛中状态开关蜂鸣报警单片机键盘 LED 显示哈尔滨工业大学华德应用技术学院毕业设计(论文)7寄存器。(2)CLK 为串行时钟输入端。其最大工作频率可达 10 MHz。(3)LOAD 为片选端,当 LOAD 为低电平时,芯片接收来自 DIN 的数

16、据,LOAD 回到高电平时,接收的数据将被锁定。图 3-2 MAX7219 管脚分布图图 3-3 反映了 DIN,CLK 和 LOAD 的工作时序。(4)DIG0DIG7 为吸收显示器共阴极电流的位驱动线。其最大值可达500 mA,关闭状态时,输出V CC。(5)SEGA SEGG,DP 为驱动显示器 7 段及小数点的输出电流,一般为40 mA 左右,可软件调整,关闭状态时,接入 GND。(6)DOUT 为串行数据输出端,通常直接接入下一片 MAX7219 的 DIN端。 哈尔滨工业大学华德应用技术学院毕业设计(论文)8图 3-3DIN,CLK 和 LOAD 的工作时序B.操作指令MAX721

17、9 有 5 个工作状态寄存器,分别是译码方式选择、亮度调节、扫描位数设定、待机开关、显示器检测。除空指令外,7219 的所有操作指令都是 2 个字节,前一个是操作代码,后一个是操作数。下面用十六进制数对控制命令加以说明。C.译码方式选择操作代码为“09H”,操作数为“0”或“0FFH”。选中 “0”则不使用 BCD 译码器,在显示数字或符号时,按每段点亮与否编排传送码。而选中“0FFH” 时,则按 8421 标准二进制编码来代表相应的显示数字,如表 1 所示。需要说明的是,无论译码与否,表 1 中操作数的最高位 D7 均为小数点, “1”为亮,“0”为灭,所以表 1 中所列是小数点不亮时的操作

18、数。图 3-4 译码与不译码的比较D.亮度调节操作代码为“0AH”,操作数如图 3-5 所示。图 3-5 亮度调节操作数这个指令可以用来调节显示器的亮度,改变其操作数可以改变 MAX7219内部扫描脉冲的宽度,从而使电流的平均值有所变化,这个电流平均值可以哈尔滨工业大学华德应用技术学院毕业设计(论文)9从最小的 1/32 至最大的 31/32 之间进行 16 级调节。MAX7219 还提供了一种硬件调整显示器亮度的方式,即通过第 18 管脚的 ISET 和VCC 之间跨接的一个电阻来调节其亮度,段驱动平均电流大约为流过此电阻电流的 100 倍,实际应用中常用十几 k的电阻直接接入即可。E. 扫

19、描位数设定操作代码为“0BH”,操作数如图 3-6 所示。图 3-6 扫描位数设定操作数如果所用的显示器少于 8 位,则应通过这条指令设置相应的位数。因为设置的位数如果比实际使用的位数大,就会形成“虚位” ,而一旦对“虚位”进行操作,将会引起整个显示器的混乱,这是需要加以注意的。另外,扫描位数的设置,会影响到扫描频率的变化,相应地,显示器亮度也会随着变化,所以应先确定扫描位数,再设置显示器亮度。F.待机开关操作代码为“0CH”,操作数为 “0”或“1”。操作数为“0”,则显示器不工作 (灭灯),反之,显示器正常工作。待机状态下,7219 的工作电流仅为 150A。G.显示器检测操作代码为“0F

20、H” ,操作数为“0” 或“1” 。 选择操作数为“1”时,可点亮整个显示器,通常用来检查数码管及连接电路是否存在故障。检测时,不会改变各位原有的显示数据,即检测完毕后,再送入不检测指令“0”,又可恢复显示原数据。H. 位操作指令位操作指令就是对 8 个数码管显示内容的操作,也是 2 个字节,第 1 个字节是位的代码,如图 3-7 所示,第 2 个字节则根据译码方式的选择,来使用表 1 中的编码。图 3-7 位的代码需要说明的是,上述所有指令的输入,不分先后(但每个指令 2 个字节的哈尔滨工业大学华德应用技术学院毕业设计(论文)10秩序不能颠倒)。通常,前 5 条指令一般在上电初始化程序中加以

21、设置,而在工作程序中,仅使用位操作指令即可。另外,MAX7219 上电时,译码方式、亮度调节、扫描位数、待机开关、显示检测等 5 个控制寄存器全部归零。I.与单片机的连接MAX7219 与 51 单片机的连接形式有 2 种,一种是将 MAX7219 的 3 个输入端 DIN, CLK 和 LOAD 与 1951 单片机的任意 3 个端口连接;一种则是直接与 51 单片机的串行接口相连。以下分别介绍这 2 种方式。J. 与单片机任意 3 个端口连接的方式假定按图 3 所示方法连接。 MAX7219 每次接收 2 个字节,高位在先,其指令可编写为: 哈尔滨工业大学华德应用技术学院毕业设计(论文)1

22、1*以下是 MAX7219 与单片机串行接口及 MAX7219 之间多片联级知识,在此只作粗略介绍* * * * *K. 用单片机的串行接口如果将 MAX7219 的 DIN 接入单片机的 RXD,CLK 接入 TXD,LOAD 选任一口线,则可通过单片机串行口对 MAX7219 像对其他设备一样按模式 0 进行发送操作。但由于串行口数据缓冲寄存器 SBUF 为右移发送,所以 MAX7219 的所有命令和操作数与第一种方式相比均应反转,见表 59。注意表 6 中操作数的最低位 D0 为小数点。L.MAX7219 的多片级联MAX7219 可以多片级联,只需将上一片的 DOUT 连接下一片的 D

23、IN 即可,CLK 和 LOAD 线全部公用,连在一起。在多片级联时,对 MAX7219 的操作指令要注意 LOAD 信号的起止点,操作开始时,LOAD 下降为低电平,按照每片 MAX7219 两个字节,如果有N 片,则发送 2N 个字节后,LOAD 上升为高电平。还需注意的是,先发送的指令将到达级联的最后一片。哈尔滨工业大学华德应用技术学院毕业设计(论文)12还有一条专为 MAX7219 多片级联设置的一条空操作指令,操作代码为“00H”。当不希望对级联中的某片或某几片 MAX7219 进行操作时,就可以用空操作指令跳过这片或这几片。例如,如果 4 个 7219 串联,为了写入第 4 个芯片

24、,要在 3 个空操作指令码后发送 2 个字节的指令,当 LOAD 升为高电平时,数据被锁存到所有设备,前 3 个芯片收到的是空操作命令,而第 4 个收到预期的数据。在本次设计中采用 MAX7219 专用 LED 驱动芯片,有以下几个优势:首先,MAX7219 每片可以驱动 8 位 LED 数码管,可以多片级联,在本次设计中用到 6 位 LED 显示,不需要级联。第二, MAX7219 与单片机相连只需要3 个口线,而采用 MC14495 则需要 8 个口线,这样就大大节省了口线资源;第三,MAX7219 内部设有扫描电路,除了更新显示数据时从单片机接收数据外,平时独立工作,极大地节省了 MCU

25、 有限的运行时间和程序资源。综上所述,结合了单片机的动态显示和静态显示的优缺,达到优势互补,最终选择 MAX7219 做静态显示球队名称,单片机动态扫描 13 位 LED 显示比分、时间等3.2 硬件电路设计电路图见附录一在该电路中,无需进行存储器和 I/O 口的扩展,P0-P3 口都可以作通用I/O 口来实现其他功能。P1.2P1.7 口作独立式键盘的输入口线,由于 P1 口内部没有上拉电阻,所以在 P1 口外部需要外接上拉电阻。独立式键盘采用一键多功能方式,与矩阵键盘相比,按键设置要少。矩阵键盘适用于按键较多、功能单一的情况。一键多功能,可以减少键的使用,相比在该设计情况下,用独立式键盘更

26、好。蜂鸣器由 TTL 系列集成电路 7406 驱动,通过单片机控制实现报警功能单片机 1.0引脚输出高电平时,7406 输出低电平驱动蜂鸣器发声,P1.0 输出低电平时蜂鸣器停止发声。P0.0P0.2 口与 MAX7219 的数据端口连接,P0.0 和 P0.1、P0.2 分别MAX7219 模块 DIN、LOAD、CLK 端口相连,实现单片机与 MAX7219 模块的数据传输与控制。P3 口作为 LED(共阴极)七段码输出端口,外加 TTL7407 驱动,数码管一般点亮电流为 10mA 左右,电流过大会损坏,电流太小数码管太暗,看不清晰。综合电流及驱动等因素考虑,选择 7407 后电阻选择

27、1K。哈尔滨工业大学华德应用技术学院毕业设计(论文)13显示子程序分为动态显示子程序和静态显示子程序,动态显示与静态显示比较各有优缺。 静态显示的亮度高,占用 CPU 的时间短,但它的成本高。为了简化硬件电路,降低成本,在单片机应用系统中采用动态扫描的方法,解决多位 LED显示问题。动态扫描显示的硬件接口简单,只需一个公共的七段码输出口(字形口)一个选择显示位的数位选择口(字位口) ,显示时,从左到右轮流点亮每位显示器,只要保证扫描周期不超过一定的限度(一般在 20ms 以下)由于视觉的暂留,则可达到“同时”显示各位不同的数字或字符的目的。动态显示的优点是成本低,接口电路简单,但它要求 CPU

28、 繁地为显示服务。考虑到成本和 CPU 负担,初期采用 8155 扩展芯片,完全用动态显示的方案不可取,采用 Motorola 公司生产的 MC14495 芯片结合动态显示接口资源不够用需要扩展,暂时取消。最后引进 MAX7219 专用 LED 驱动芯片解决了单片机接口问题,结合动静态显示的优点,最终得到如上设计的电路图。 哈尔滨工业大学华德应用技术学院毕业设计(论文)14第 4 章 系统软件设计4.1 软件设计思路和程序流程图根据系统的功能要求和硬件的连接情况,软件可分为:T0、T1 定时中断模块和主程序模块。两个中断模块都设定 10ms 基本定时,中断 100 次为1s,进而实现分、秒的计

29、时功能,以及蜂鸣器的开关控制。主程序模块通过循环执行的方式实现以下功能:判断比赛前/中,比赛前调用静态显示子程序显示球队名称,比赛中则调用动态显示子程序显示比分、比赛时间、进攻时间、场次(节时),若有按键按下,则调用键盘处理子程序。主程序模块的流程图如 31 所示:在中断程序中,先重装定时器初值,基本计时单元加 1,然后进行分、秒的计时,若倒计时为 0 则打开蜂鸣器,持续蜂鸣设定的时间后自动停止。T0、T1 中断服务的流程图如图 3-2、3-3 所示。系统初始化调动态显示子程调键处理子程调静态显示子程开始开始比赛中?读active 键哈尔滨工业大学华德应用技术学院毕业设计(论文)15每节比赛结

30、束后,计数器 R7 加 1,到达比赛前设定的节数时,R7 清 0,相应的显示 0 节,以表示比赛结束。T0、T1 定时中断采用工作方式 1(16 位定时器),由于系统时钟频率为12MHZ,机器周期为 1us。要实现 10ms 的定时方式,在 T0、T1 的初值为X=65536-12*100000*0.01/12=55536=D80FH倒计时以二进制计数,在送入显示之前先拆分为单个 BCD 码,分别送入相对应的显示缓冲区。显示子程序分为动态显示子程序和静态显示子程序,动态显示与静态显示比较各有优缺。静态显示的亮度高,占用 CPU 的时间短,但它的成本高。为了简化硬件电路,降低成本,在单片机应用系

31、统中采用动态扫描的方法,解决多位 LED显示问题。动态扫描显示的硬件接口简单,只需一个公共的七段码输出口(字形口)一个选择显示位的数位选择口(字位口) ,显示时,从左到右轮流点亮每位显示器,只要保证扫描周期不超过一定的限度(一般在 20ms 以下)由于视觉的暂留,则可达到“同时”显示各位不同的数字或字符的目的。动态显示的优点是成本低,接口电路简单,但它要求 CPU 频繁地为显示服务。考虑到成本和 CPU 负担,初期采用 8155 扩展芯片,完全用动态显示的方案不可取,采用 Motorola 公司生产的 MC14495 芯片结合动态显示成本高,也不可取。最后引进 MAX7219 专用 LED 驱

32、动芯片解决了单片机接口问题,结合动静态显示的优点,最终得到动静结合的设计方案。表 3-1 动态显示七段码(字形码)表D7 D6 D5 D4 D3 D3 D1 D0显示字符dp g f e d c b a 七段码0 0 0 1 1 1 1 1 1 3FH1 0 0 0 0 0 0 1 1 06H2 0 1 0 1 1 0 1 1 5BH3 0 1 0 0 1 1 1 1 4FH4 0 1 1 0 0 1 1 0 66H5 0 1 1 0 1 1 0 1 6DH6 0 1 1 1 1 1 0 1 7DH7 0 0 0 0 0 1 1 1 07H8 0 1 1 1 1 1 1 1 7FH9 0 1

33、1 0 1 1 1 1 6FH. 1 0 0 0 0 0 0 0 80H空白 0 0 0 0 0 0 0 0 00H哈尔滨工业大学华德应用技术学院毕业设计(论文)164.2 程序源代码见附录二哈尔滨工业大学华德应用技术学院毕业设计(论文)17结论单片机篮球记分牌设计的主要任务包括硬件设计和软件设计。硬件设计的主要任务是:电源设计、LED 数码管驱动、控制系统设计以及辅助功能的设计, 。软件设计包括:功能选择、倒计时的实现。本文主要介绍了单片机实现篮球记分牌的整个设计流程,采用汇编语言编写程序。本课题选择AT89C51 为核心控制元件,设计了日常比赛中用到的篮球记分牌。设计同时引用 MAX721

34、9 专用 LED 驱动芯片,解决了多位 LED 数码管同时显示的问题硬件结构紧凑,成本底。该单片机篮球记分牌可适应不同篮球规则,通过按键修改每个设置,运行可靠,具有一定的使用和竞争价值。主要使用的是 WAVE 这一工具软件,该软件可用于单片机的设计与开发,建模仿真,实时实现的理想的仿真环境。由于其完整的专业体系和先进的设计开发思路。硬件设计采用 Protel 99SE 绘图,可以自行绘出数据库中没有的器件,使用很方便,其自动布线和电路模块设计很方便。哈尔滨工业大学华德应用技术学院毕业设计(论文)18致谢本文主要阐述了单片机电子记分牌的实现背景及其实现的功能,我对单片微机技术产生了浓厚的兴趣,同

35、时,受我主修专业的影响,我已经习惯于关注单片机设计带来的一系列机遇与挑战。 本篇论文虽然凝聚着自己的汗水,但却不是个人智慧的产品,没有导师的指引和赠予,没有父母和朋友的帮助和支持,我在大学的学术成长肯定会大打折扣。当我打完毕业论文的最后一个字符时,涌上心头的不是长途跋涉后抵达终点的欣喜,而是源自心底的诚挚谢意。我首先要感谢我的导师曾一江老师,她对我的构思以及论文的内容不厌其烦的进行多次指导和悉心指点,使我在完成论文的同时也深受启发和教育。 再次由衷感谢答辩组的各位老师对学生的指导和教诲,我也在努力的积蓄着力量,尽自己的微薄之力回报母校的培育之情,争取使自己的人生对社会产生些许积极的价值!哈尔滨

36、工业大学华德应用技术学院毕业设计(论文)19参考文献1 高洪志.MCS-51 单片机原理及应用技术教程.人民邮电出版社,2009:72-1692 田淑清.C 语言程序设计.高等教育出版社,2008: 31-833 张毅刚.MCS-51 系列单片机系统及其应用.高等教育出版社,2003:29-894 谢自美.电子线路设计、实验、测试.华中理工大学出版社,2000: 107-1115 郭培源.电子电路及电子器件.高等教育出版社,2004: 65-66 潘新民.微型计算机控制技术.人民邮电出版社,1999.9: 55-707 余锡存.单片机原理及接口技术.西安电子科技大学出版社,2000.7: 65

37、-698 周立功.增强型 80C51 单片机速成与实战.北京航空航天大学出版社,2004.5:91-95哈尔滨工业大学华德应用技术学院毕业设计(论文)20附录一 电路原理图哈尔滨工业大学华德应用技术学院毕业设计(论文)21附录二 程序源代码;定义引脚SPK BIT P1.0 ;蜂鸣器开关DIN BIT P0.0 ;P0.0P0.2 为MAX7219 模块控制端口LOAD BIT P0.1CLK BIT P0.2ACTIVE BIT P1.0; ;比赛前/比赛中状态开关;RAM 区分配T0CNT EQU 30H ;T0 基本计时单元T1CNT EQU 31H ;T1 基本计时单元ASCORE E

38、QU 32H ;球队“A”比分单元BSCORE EQU 33H ;球队“B”比分单元MINUTE EQU 34H ;计时分单元 SECOND EQU 35H ;计时秒单元 LSECOND EQU 36H ;进攻限时秒单元 SCENE EQU 37H ;节数(场次)单元 LED_BUF EQU 40H ;动态显缓 SETNCNT EQU 50H ;SETN 键按键次数存放单元 SETFECNT EQU 51H ;SETFT 键按键次数存放单元 DISP_EQU EQU 52H ;静态显缓 ;程序入口ORG 0000H LJMP MAIN;T0 中断入口ORG 000BH哈尔滨工业大学华德应用技术

39、学院毕业设计(论文)22LJMP IT0P;T1 中断入口ORG 0010HLJMP IT1P*主程序* ORG 0040HMAIN: MOV SP , #60H ;设置堆栈指针MOV TMOD #11H ;设置 T0,T1为 16 位定时器方式MOV TH0 , #0D8H ;置 T0 初值MOV TL0 , #0F0HMOV T0CNT , #00H ;T0 中断次数清零MOV TH1 , #0D8H ;置 T1 初值MOV TL1 , #0F0HMOV T1CNT , #00HMOV IE , #82H ;中断允许CLR AMOV T0CNT , A ;计数单元清 0MOV T1CNT

40、, A MOV ASCORE, A ;动态显示单元清零MOV BSCOR, A MOV MINETE, A MOV SECOND, A MOV LSECODN, A MOV SETNCNT, A ;SETN、SETFT 按键次数清零MOV SETFTCNT, A MOV SCENE, #01H ;节数置初值 1MAIN_LP: SETB P1.1 ;判断比赛否JNB P1.1 , JX ;比赛中调动态显示T11: LCALL DISP MOV P1 , #0FFHMOV A , P1ANL A , #0FCCJNE A , #0FC, K_PRESS;有键按下调建处理子程序SJMP MAIN_

41、LP哈尔滨工业大学华德应用技术学院毕业设计(论文)23JX: LCALL MAX_DISP ;比赛前则调用静态显示子程序LJMP T11K_PRESS: LCALL KEY_PRGSJMP MAIN_LP ;无建按下,继续循环*动态显示子程序*:DISP :MOV R0 , #40H ;R0 指向动态显缓首址MOV R1 , #7FH ;左边第一位数位代码MOV R2 , #0FFH ;左边第 9 位数位代码MOV R3 , #0FFH ;延时常数MOV A, #0FFH ;全灭数位代码DISP1:MOV DPTR, #0A0H ;字位口地址MOVX DPTR , AMOV A, R0 MOV

42、 DPTR, #SGTR ;查表求七段码MOV A, A+DPTRMOVC DPTR, #0B0H ;字形口MOVX DPTR, A ;输出七段码MOV DPTR, #0A0HDJNZ R3, DELYDELY: INC R0 ;指向下一显缓单元LP: SETB C ;置一进位标志MOV A , R2,RRC A ;R2、R3 数据带进位右移MOV R2, AMOV A , R3RRC AMOV R3, A ;右移 13 次哈尔滨工业大学华德应用技术学院毕业设计(论文)24停止JB ACC.2, LPRETORG 0200H ;数字七段码表SGTR: DB 3FH, 06H, 5BH, 4FH

43、, 66H, 6DH,DB 7DH, 07H, 7FH, 6FH, 80H, 00H*静态显示子程序* JX: LCALL PROCESS ;调初始化子程LCALL DISPLY ;调显示子程LJMP T11;初始化 MAX7219PROCESS: MOV A, #0BH ;显示位数设定(6 位) MOV B, #05HLCALL W_7219MOV A, #09H ;不使用 BCD译码MOV B, #00HLCALL W_7219MOV A, #0AH ;亮度设定MOV B, #09H LCALL W_7219MOV A, #0CH ;待机开关打开,LED 正常显示MOV B, #01HLC

44、ALL W_7219RETDISPLAY: MOV R0, #DISP_BUF ;静态显缓首址MOV R4, #01H ;数位第一位MOV R3, #06H ;设定六位显示C_DISP: MOV A , R0MOV DPTR, #CHARTAB ;查字母表MOVC A, A+DPTR ;得字母七段码哈尔滨工业大学华德应用技术学院毕业设计(论文)25MOV B, A ;向 MAX7219写入数据MOV A, R4LCALL W_7219 INC R0 ;指向下一位显缓INC R4 ;指向下一位数位DJNZ R3, C_DISP ;判断六个数据写入完?RETW_7219: CLR LOAD ;MA

45、X7219 入数据子程序LCALL SD_7219 ;LOAD 低电平写入有效MOV A, BLCALL SD_7219SETB LOADRETSD_7219: MOV R6, #06H ;六个数据C_SD: NOPCLR CLK ;数据左移显示RLC AMOV DIN, C NOPSETB CLKDJNZ R6, C_SDRETORG 1000H ;字母七段码表CHARTAB: DB 77H, 7FH, 4EH, 7EH, 4FH, 47H, 5FH, 37H DB 30H,38H, 36H, 0EH, 79H, 76H, 63H, 67H DB 73H, 27H, 5BH, 31H, 3EH, 03H, 0F, 12H DB 3BH, 6DH, 80H, 00H *键处理子程* KEY_PRG: MOV R5 , #0AH LCALL DELAY_MS ;延时 10msMOV P1, #0FFH ;读键盘端口MOV A, P1ANL A, #FCH ;屏蔽低两位哈尔滨工业大学华德应用技术学院毕业设计(论文)26JNB ACC.2 ;K_START 键JNB ACC.3 ;K_ATTACK键JNB ACC.4 ;K_UP 键JNB ACC.5 ;K_DOWN 键JNB ACC.6 ;K_SETN 键JNB ACC.7 ;K_SETFT 键SJMP KEY_END

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

当前位置:首页 > 学术论文 > 大学论文

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


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

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

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