51单片机做篮球计分器,单片机按键控制led灯12分钟,24秒和14秒重置和倒计时,只用T0、T1可以实现吗?

当前位置: >>
篮球计分器毕业设计
湖南工程职业技术学院毕业设计(论文)湖南工程职业技术学院HUNAN ENGINEERING POLYTECHNIC毕业设计(论文)设计(论文)题目: 系 专 学 生 姓 班 部: 业: 名: 级: 篮球计分器 信息工程系 电子信息工程技术 李中心 311111 易礼智 学号
师指导教师姓名: 最终评定成绩信息工程系 二○一四年五月制I 湖南工程职业技术学院毕业设计(论文)第一部分毕业设计(论文)开题报告第二部分设计说明书II 湖南工程职业技术学院毕业设计(论文)2014 届 毕业设计(论文)资料第一部分毕业设计(论文)开题报告III 湖南工程职业技术学院毕业设计(论文)湖南工程职业技术学院毕业设计(论文)开题报告(2014 届)系 专 学 生 姓 班部: 业: 名: 级:信息工程系 电子信息工程技术 李中心 311111 易礼智 学号
职称 讲师指导教师姓名:2014 年 05 月 30 日1 湖南工程职业技术学院毕业设计(论文)题目:篮球计分器 一、本课题的目的及意义 1)目的 这次设计可以使我们进一步熟悉和掌握了单片机的内部结构和工作原理, 了解了 单片机应用系统设计的基本方法和步骤, 掌握了单片机仿真软件 Proteus 的使用方法, 键盘和显示器在的单片机控制系统中的应用以及撰写课程设计报告的方法。 此次设计 很好的将书本上的理论知识和实践有机的联系了起来, 是我们对理论知识有了更进一 步的掌握,锻炼了我们的动手能力,同时也让我们懂得了理论与实际相结合的意义。 为以后的工作和学习提供了宝贵的经验。 2)意义 在这个电子信息技术迅速普及的今天,人们对电子电子产品的需求越来越多。二 十一世纪的今天,科学技术迅猛发展,时代前进的脚步越迈越宽,应用自动化设备, 现代化通讯, 计算机处理,数字化信息,现代化显示设备等一些高新技术使人类迈向智 能化发展。目前单片机在我们生活各个领域无处不在。导弹的导航系统,飞机上的各 种仪表的控制,工业自动化实现过程中的实时控制以及数据处理,计算机采用的网络 通讯和数据传输,在生活中被广泛使用的智能 IC 卡,民用轿车的安全系统,录像机、 洗衣机、摄像机,以及遥控玩具和一些电子玩具等等,以上这些全都离不了单片机。 更不用说那些自动控制机器人、医疗器械、智能仪表了。可见无论是军事还是民用等 各个领域都离不开单片机。通过这次篮球计分牌的设计,我可以更清楚的了解单片机 程序设计的基本指令功能、编程步骤和技巧来讲述单片机编程,并对 AT89C51 单片 机的原理和结构进行讲述,熟悉了基于单片机开发应用的相关芯片的工作原理,和相 关外围电路的设计和调试过程,对我以后工作学习也有帮助。 本次设计用由 AT89C51 编程控制 LCD 作显示的球赛计时计分系统。该系统具有 赛程时间暂停,及时刷新甲、乙双方的成绩等功能。它具有价格低廉,性能稳定,操 作方便并且易于携带等特点。广泛适合各类学校或者小型团体作为赛程计时计分。 篮球比赛计时计分器是为了解决篮球比赛时计分与计时准确的问题。 此装置利用 单片机 AT89C51 完成了计时和计分的功能。本文详细地介绍了系统硬件与软件的设 计过程,采用该装置可根据实际情况进行比分修改和时间的准确显示,具有低功耗, 可靠性,安全性以及低成本等特点。2 湖南工程职业技术学院毕业设计(论文)二、本课题的基本内容、重点和难点,工作进度安排等。 1)基本内容 本设计是基于 AT89C51 单片机的篮球计时计分器, 利用 7 段共阴 LED 作为显示 器件。在此设计中共接入了 1 个四位一体 7 段共阴 LED 显示器,2 个两位一体 7 段共 阴 LED 显示器,前者用来记录赛程时间,其中 2 位用于显示分钟,2 位用于显示秒 钟,后者用于记录甲乙队的分数,每队 2 个 LED 显示器显示范围可达到 0~99 分。赛 程计时采用倒计时方式,比赛开始时启动计时,直至计时到零为止。 其次,为了配合计时器和计分器校正调整时间和比分,我们特定在本设计中设立 了 7 个按键,用于设置,调整时间,启动,调整分数和暂停等功能。采用单片机控制 是这个系统按键操作使用简洁,LED 显示,安装方便。 2)重点和难点 (1)按键加减能够在数码管上同步显示,没有延时 (2)消除按键抖动 (3)数码管的乱码处理 3)工作进度安排 2013 年 11 月份~2013 年 12 月份: 选题;收集、查阅与篮球计分器相关的资料,对课题进行可行性分析。 2014 年 1 月~2014 年 2 月: 复习电路,模拟电子技术,单片机,数码管, 自动控制等技术等相关知识.详细阅读 相关资料。 2014 年 3 月~2014 年 4 月: 对已查资料进行归纳、整理,定出论文框架。 2014 年 4 月: 利用收集的资料,程序,仿真图做出篮球计分器的仿真电路。 2014 年 5 月: 写出论文初稿,并对初稿进一步修改直至定稿。 2014 年 5 月底:3 湖南工程职业技术学院毕业设计(论文)准备论文的答辩,并整理毕业论文相关的一系列材料。指导教师意见指导教师: 年 教研室意见 月 日教研室主任: 年 月 日4 湖南工程职业技术学院毕业设计(论文)2014 届 毕业设计(论文)资料第二部分设计说明书5 湖南工程职业技术学院毕业设计(论文)湖南工程职业技术学院毕业设计(论文) 篮球计分器设计系 专 学(部) :信息工程系 业:电子信息工程 号:学 生 姓 名:李中心 指 导 教 师:易礼智讲师2014年05 月6 湖南工程职业技术学院毕业设计(论文)目摘 绪录要 .................................................................................................................................................. 1 论 ................................................................................................................................................ 2第一章 单片机 AT89C51 的简介 ...................................................................................................... 3 第二章 设计方案 .............................................................................................................................. 6 2.1 本设计的基本功能介绍 ............................................................................................................... 6 2.2 系统框图 ....................................................................................................................................... 6 2.3 系统硬件组成电路 ....................................................................................................................... 6 2.3.1 显示器及接口 ..................................................................................................................... 6 2.3.2 单片机(AT89C51)........................................................................................................... 8 2.3.2 按键电路 ............................................................................................................................. 8 2.3.3 复位电路 ............................................................................................................................. 8 2.3.4 时钟电路 ............................................................................................................................. 8 第三章 硬件电路设计 .................................................................................................................... 93.1 最小系统设计 ............................................................................................................................... 9 3.1.1 晶振电路(时钟电路) ................................................................................................... 10 3.1.2 复位电路 ........................................................................................................................... 10 3.2 3.3 3.4 EA/VPP(31 脚)的功能和接法 ............................................................................................. 11 P0 口外接上拉电阻 ................................................................................................................. 12 显示电路 ................................................................................................................................... 133.5 按键电路 ..................................................................................................................................... 13 第四章 软件设计 .......................................................................................................................... 154.1 总流程图 ...................................................................................................................................... 15 4.2 按键流程图 .................................................................................................................................. 16 4.2.1 按键切换 ........................................................................................................................... 16 4.2.2 按键加减 ........................................................................................................................... 17 4.3 中断流程图 .................................................................................................................................. 18 4.4 软件调试 ...................................................................................................................................... 197 湖南工程职业技术学院毕业设计(论文)总 致结 .............................................................................................................................................. 20 谢 ................................................................................................................................................ 21参考文献 ............................................................................................................................................ 22 附录 1 附录 2 原理图 ............................................................................................................................... 23 程序 ................................................................................................................................... 248 湖南工程职业技术学院毕业设计(论文)摘要本设计是基于 AT89C51 单片机的篮球计时计分器, 利用 7 段共阴 LED 作为显示器 件。在此设计中共接入了 2 个四位一体 7 段共阴 LED 显示器,中间两个数码管用来记 录赛程时间,高 2 位用于记录 A 的分数,低 2 位用于记录 B 的分数,中间两个数码管 用来计时,每个四位一体的数码管中间都有一个“-”将分数与计时的时间隔开,每队 2 个 LED 显示器显示范围可达到 0~99 分。赛程计时采用 24S 倒计时方式。 为了配合计时器和计分器校正调整时间和比分, 我们在本设计中设立了 3 个按键, 其中 2 个按键用于中断控制两组分数的加减,另一个按键用来切换加减比分,使两组 在计分时方便快捷的进行加分减分。 本系统具有赛程定时设置、赛程时间暂停、甲、乙双方的比分以及比赛中 24 秒暂 停。它具有价格低廉、性能稳定、操作方便且易携带等特点、广泛适合各类学校和小 团体作为赛程计时计分。 本设计可以实现:1、能记录整个赛程的比赛时间,并能修改比赛时间 2、能随时刷新甲、乙两队在整个过程中的比分 3、中场交换比赛场地时,能交换甲、乙两队比分的位置关键词:单片机,计时,显示器,按键1 湖南工程职业技术学院毕业设计(论文)绪论单片机又称单片机微控制器,是把一个计算机系统集成一个芯片上,概括的讲: 一块芯片就完成了一台计算机。它的优点是体积小、重量轻、抗干扰能力强、对环境 要求不高、价格低廉、可靠性高、灵活性好、开发较为容易;是靠程序实现功能,并 且可以修改,通过不同的程序实现不同的功能,它的应用具有高度实现意义以及极高 的可靠性、微型性和智能性,已成为工业控制领域中普遍采用的智能化控制工具,已 经深深地渗入到我们的日常生活当中。 单片机自 20 世纪 70 年代问世以来,以极其高的性价比受到人们的重视和关注, 所以应用很广,发展很快,美国 ATMEL 公司开发生产了新型的 8 位单片机 AT89 系列 单片机,不但具有 MCS-51 单片机的所有特性,而且还拥有一些独特的优点。 随着单片机在各个领域的广泛应用,许多用单片机做控制的球赛计时计分系统也 应运而生,如用单片机控制 LCD 液晶显示器计时计分器,用单片机控制 LED 七段数 码管显示器计时计分器等设计。根据此次课题要求,结合本人自身学习情况,我采用 的是单片机控制 LED 七段数码管显示器计时计分器。电路采用以单片机为核心元件, 利用 2 个四位一体的 7 段共阳极 LED 数码管作为显示器件。 高 2 位用于记录 A 的分数, 低 2 位用于记录 B 的分数,中间两个数码管用来计时,显示分数范围可达 0~99 分, 符合现实比赛的需要。比赛前,将时间设置为 24S 倒计时,比赛开始时启动计时。计 时范围达到 0~99 秒,能满足实际赛程计时的需要。 设计分为软件设计和仿真设计两部分。主控芯片采用 AT89C51,使用汇编语言编 写软件程序,主体分为显示模块、按键控制模块。利用 Keil 软件来进行程序编译,再 将生成的 HEX 文件加载到主控芯片 AT89C51 中,采用 Proteus 软件来仿真,检验功能 是否能够正常实现。2 湖南工程职业技术学院毕业设计(论文)第一章 单片机 AT89C51 的简介AT89C51 是一个低电压,高性能 CMOS 8 位单片机,片内含 4k bytes 的可反复擦 写的 Flash 只读程序存储器和 128 bytes 的随机存取数据存储器(RAM) ,器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准 MCS-51 指令系统,内置功 能强大的微型计算机的 AT89C51 提供了高性价比的解决方案。 AT89C51 具有 PDIP、PQFP/TQFP 及 PLCC 等三种封装形式,以适应不同产品的 需求。它是一个低功耗高性能单片机,40 个引脚,32 个外部双向输入/输出(I/O)端 口,同时内含 2 个外中断口,2 个 16 位可编程定时计数器,2 个全双工串行通信口, AT89C51 可以按照常规方法进行编程, 也可以在线编程。 其将通用的微处理器和 Flash 存储器结合在一起,特别是可反复擦写的 Flash 存储器可有效地降低开发成本。 如图 1.1 所示为 AT89C51 单片机基本构造,其基本性能介绍如下。图 1.1AT89C51 引脚图主要特性: ? ? ? ? ? ? 与 MSC-52 兼容 4K 字节可编程闪烁存储器 寿命:1000 写/擦除循环 数据保留时间:10 年 全静态工作:0HZ-24MHZ 三级程序存储器锁定3 湖南工程职业技术学院毕业设计(论文)? ? ? ? ? ? ?128X8 位内部 RAM 32 可编程 I/O 口 两个 16 位定时器/计数器 5 个中断源 可编程串行通道 片内振荡器和时钟电路 低功耗空闲和掉电模式AT89C51 的主要特性如下表 1.1 所示。下面介绍各个管脚: VCC:供电电压。 GND:接地。 P0 口:P0 口为一个 8 位漏极开路双向 I/O 口,每个引脚可吸收 8TTL 门电流。当 P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器, 它可以被定义为数据/地址的第八位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高。 P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输 出 4TTL 门电流。P1 口管脚写入 1 后,被内部上拉为高,可用作输入,P1 口被外部下 拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 FLASH 编程和校验时, P1 口作为第八位地址接收。 P2 口:P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并 因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。 P2 口用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的 高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进 行读写时,P2 口输出其特殊功能寄存器的内容,P2 口在 FLASH 编程和校验时接收高 八位地址信号和控制信号。 P3 口:P3 口管脚是 8 个带有内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入, 由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。 P3 口也可作为 AT89C51 的一些特殊功能口,如表 1.2 所示。 P3 口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时 间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位4 湖南工程职业技术学院毕业设计(论文)字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时, ALE 端以不变的频 率周期输出正脉冲信号, 此频率为振荡器频率的 1/6。 因此它可用作对外部输出的脉冲 或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉 冲。 如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。 此时, ALE 只有在执行 MOVX, MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行 状态 ALE 禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周 期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出 现。 /EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH) ,不 管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 保 持高电平时,此间内部程序存储器。在 FLASH 编程期间,此引脚也用于施加 12V 编 程电源(VPP) 。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 表 1.1 兼容 MCS―51 指令系统 32 个双向 I/O 口 两个 16 位可编程定时/计数器 1 个串行中断 两个外部中断源 可直接驱动 LED 低功耗空闲和掉电模式 AT89C51 主要功能描述 4k 可反复擦写(&1000 次)Flash ROM 可编程 UARL 通道 全静态操作 0-24MHz 128x8bit 内部 RAM 共 6 个中断源 3 级加密位 软件设置睡眠和唤醒功能表 1.2 端口引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7AT89C51 特殊功能表 第二功能 RXD(串行输入口) TXD(串行输出口) /INT0(外部中断 0) /INT1(外部中断 1) T0(记时器 0 外部输入) T1(记时器 1 外部输入) /WR(外部数据存储器写选通) /RD(外部数据存储器读选通)5 湖南工程职业技术学院毕业设计(论文)第二章2.1 本设计的基本功能介绍设计方案比赛之前,接通电源,系统自动复位,等待赛程开始,当裁判员吹响哨声时,此 时计时电路与计分电路中的数码管显示 00-24-00,这时计时电路开始工作,计时采用 倒计时方法,即从 24 减到 0,按键每按下一次表示加 1 分,由于加分减分我们采用中 断来完成,且加分减分的中断优先权小于计时电路的优先权,所以不会对计时电路造 成影响。若在比赛过程中,出现错误之后(比如多加分或者少加分) ,按下切换按键, 再对相的进行加减分即可。2.2 系统框图按键电路复位电路 AT89C51 单片机 时钟电路 数码管显示电路图 2.1 系统框图2.3 系统硬件组成电路本次毕业设计的过程中主要选取了一些器件:显示器件(7 段 LED 共阳数码管) 、 单片机(AT89C51)2.3.1 显示器及接口显示器是最常用的输出设备,其种类繁多,但在单片机系统设计中最常用的是 LCD 液晶显示器、LED 显示器。由于这与个人能力,本设计运用的是 LED 显示器, 下面介绍 LED 显示器的结构及工作原理。 1)LED 结构与原理: 两种显示结构简单,价格便宜、接口容易实现,因而得到广泛的应用,因为考虑到 本人所学的东西。6 湖南工程职业技术学院毕业设计(论文)图 2.27 段 LED 共阴数码管LED 显示器又称数码管,LED 显示器由 8 个发光二极管组成。其中七个长条形的 发光管排列成 “日”字形, 另一个点行的发光管在显示器的右下角作为显示小数点用, 它能显示各种数字及部分英文字母。LED 显示器由两种形式:一种是 8 个发光二极管 的阴极连在一起的,称之为共阴极 LED 显示器;另一种是 8 个发光二极管的阳极连在 一起的,称之为共阳极 LED 显示器。 2)共阴极与共阳极 LED 显示器显示数字、字母与显示代码之间的对应关系,如表 2.1 所示。 显示字符 0 1 2 3 4 5 6 7 表 2.1 代码对应表 共阴极段码 共阳极代码 显示字符 3FH CO 8 06H F9 9 5BH A4 A 4FH BO B 66H 99H C 6DH 92H D 7DH 82H E 07H F8 F 共阴极段码 共阳极代码 7FH 80H 6FH 90H 77H 88H 7CH 83H 39H C6H 5EH A1H 79H 86H 71H 8EH3)LED 显示器的显示方式: 点亮 LED 显示器有两种方式:一是静态显示;二是动态显示。在本次设计中,采 用的是动态显示。 ①所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的 I/O 接口,用 于笔划字形代码,这样单片机只要把显示的字形代码发送到接口电路就不用管它了, 直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中 CPU 开销 小。 这种电路的缺点是占用端口资源较多, 每位 LED 显示器需要单独占用 8 根端口线, 因此,在数据较多的时候,往往不采用这种设计,而采用动态设计。 ②所谓动态显示,就是将要显示的多位 LED 显示器采用一个 8 位的段选端口,然 后采用动态扫描一位一位地轮流亮各位显示器。由于所有的段选码连在一起,所以一 瞬间只能显示同一种字符,但如果要显示不同字符,则要由位选码来控制(如果 LED 为共阴极则 P2.0~P2.3 输出为高电平,如果 LED 为共阳极则 P2.0~P2.3 为低电平) 。7 湖南工程职业技术学院毕业设计(论文)2.3.2 单片机(AT89C51)AT89C51 是一个低电压, 高性能 CMOS 8 位单片机, 片内含 4k bytes 的可反复擦 写的 Flash 只读程序存储器和 128 bytes 的随机存取数据存储器(RAM) ,器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准 MCS-51 指令系统,内置功 能强大的微型计算机的 AT89C51 提供了高性价比的解决方案。2.3.2 按键电路图 2.3按键模块图该设计我们采用的是塔式按键的结构, 塔式按键最大的好处在于大大的节约了 I/O 口,常言道,有得必有失。塔式按键便是使程序在判断是哪个按键按下时,出现了一 定的难度性。该设计采用的塔式按键见上图 2.3 所示。2.3.3 复位电路复位电路就在 RST 端(9 脚)外接的电路,目的是使单片机上电开始工作时,内 部电路从初始状态开始工作,或者在工作中人为让单片机重新从初始状态开始工作。2.3.4 时钟电路单片机的 XTL1 和 XTL2 引脚外接石英晶体,就构成了自激振荡器并在单片机内 部产生时钟脉冲信号。 该电路由两个瓷片电容 (C1、 C2) 和一个石英晶体振荡器组成。8 湖南工程职业技术学院毕业设计(论文)第三章硬件电路设计单片机就是在一块硅片上集成了中央处理器(CPU)、存储器、输入/输出接口(并 行 I/O、串行通信口) 、振荡电路及计数器等电路的集成电路,这样的一块集成电路具 有一台计算机的基本功能,因而被称为单片机微型计算机,简称单片机。 该电路主要设计的电路有时钟电路、复位电路、显示电路、按键电路。3.1 最小系统设计通过上面对单片机的介绍,我们已经对单片的功能有了充分的了解。下面就以 AT89C51 单片机来设计该设计中的核心部分――最小系统。 单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工 作的系统。对 51 系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位 电路。下面给出一个 51 单片机的最小系统见下图 3.1 所示。图 3.1最小系统电路图9 湖南工程职业技术学院毕业设计(论文)3.1.1 晶振电路(时钟电路)在单片机内部有一振荡电路, 只要在单片机的 XTL1 和 XTL2 引脚外接石英晶体, 就构成了自激振荡器并在单片机内部产生时钟脉冲信号。 该电路由两个瓷片电容 (C1、 C2)和一个石英晶体振荡器组成。电容 C1、C2 的作用是稳定频率和快速起振,电容 值在 5~30pF,典型值为 30pF。晶振器的振荡频率范围在 1.2MHz~12MHz 间选择, 典型值为 12MHz 和 6HMz。我们该电路的振荡器所选用的是 12MHZ 的。见图 3.2 所 下。图 3.2晶振电路图3.1.2 复位电路单片机的的复位操作使单片机进入初始化状态。 初始化后, 程序计数器 PC=0000H, 所以程序从 0000H 地址单元开始执行。单片机启动后,片内 RAM 为随机值,运行中 的复位操作不改变片内 RAM 的内容。 复位电路就在 RST 端(9 脚)外接的电路,目的是使单片机上电开始工作时,内 部电路从初始状态开始工作,或者在工作中人为让单片机重新从初始状态开始工作。 在时钟工作的情况下, 单片机的 RST 引脚引入高电平并保持 2 个机器周期以上的时间, AT89C51 使能完成系统重置的各项动作,使得内部特殊功能寄存器的内容均被设置成 已知状态。 复位操作有两种基本的形式:一种是上电复位(见图 3.3),另一种是按键复位(见 图 3.4) 。 上电复位要求接通电源后,单片机自动实现复位操作。按键复位要求在电源接通 的条件下,在单片机运行期间,用按钮开关操作使单片机复位。10 湖南工程职业技术学院毕业设计(论文)图 3.3上电复位电路图 3.4 按键复位电路3.2EA/VPP(31 脚)的功能和接法AT89C51 单片机的 EA/VPP(31 脚) 是内部和外部程序存储器的选择管脚。当EA 保持高电平时,单片机访问内部程序存储器;当 EA 保持低电平时,则不管是否 有内部程序存储器,只访问外部存储器。对于现今的绝大部分单片机来说,其内部的 程序存储器(一般为 flash)容量都很大,因此基本上不需要外接程序存储器,而是直 接使用内部的存储器。在本实验套件中,EA 管脚接到了 VCC 上,只使用内部的程 序存储器。11 湖南工程职业技术学院毕业设计(论文)3.3P0 口外接上拉电阻AT89C51 单片机的 P0 端口为开漏输出,内部无上拉电阻(见图 3.5) 。所以在当做普通 I/O 输出数据时,由于 V2 截止,输出级是漏极开路电路,要使“1”信号(即 高电平)正常输出,必须外接上拉电阻。图 3.5 P0 端口的 1 位结构另外, 避免输入时读取数据出错, 也需外接上拉电阻。 在这里简要的说下其原因: 在输入状态下,从锁存器和从引脚上读来的信号一般是一致的,但也有例外。例如, 当从内部总线输出低电平后,锁存器 Q = 0, Q = 1,场效应管 V1 开通,端口线 呈低电平状态。此时无论端口线上外接的信号是低电平还是高电平,从引脚读入单片 机的信号都是低电平,因而不能正确地读入端口引脚上的信号。又如,当从内部总线 输出高电平后,锁存器 Q = 1, Q = 0,场效应管 V1 截止。如外接引脚信号为低电 平, 从引脚上读入的信号就与从锁存器读入的信号不同。所以当 P0 口作为通用 I/O 接口输入使用时, 在输入数据前, 应先向 P0 口写“1”, 此时锁存器的 Q 端为“0”, 使输出级的两个场效应管 V1、V2 均截止,引脚处于悬浮状态,才可作高阻输入。总 结来说:为了能使 P0 口在输出时能驱动 NMOS 电路和避免输入时读取数据出错,需 外接上拉电阻。在设计中采用的是外加一个 10K 排阻。此外,51 单片机在对端口 P0―P3 的输入操作上,为避免读错,应先向电路中的锁存器写入“1”,使场效应管 截止,以避免锁存器为“0”状态时对引脚读入的干扰。12 湖南工程职业技术学院毕业设计(论文)3.4显示电路通过两组 8 位数码管作为显示,从单片机 P0 口传输数据,P2 口作为两组数码管的片选,显示采用动态显示,利用人体视觉差造成 8 个数码管同时显示的现象,通过 反相器控制数码管片选口的电压高低。电路图见图 3.6 所示。图 3.6显示电路图3.5 按键电路本次采用 3 个按键来组成篮球计分器的控制模块,通过感应 P3.0~P3.2 电平的高 低,来分别控制计分器的加减,P3.0 为高电平时,P3.1~P3.2 两个按键控制左边方的 数字加减,当 P3.0 为低电平时,P3.1~P3.2 两个按键控制右边放的数字加减。电路图 见图 3.7 所示。13 湖南工程职业技术学院毕业设计(论文)图 3.7控制电路图14 湖南工程职业技术学院毕业设计(论文)第四章4.1 总流程图软件设计该程序由显示子程序、按键子程序、延时子程序、中断程序等部分组成。通过定时中断的方式,来提供中间 24 秒时间的计数。按键的切换是通过设置一 个标志位使用的方式来达到可以只通过两个按键控制双方数字的加减,当双方计数切 换标志为 0 时,两个按键控制右边计数的加减,当双方计数切换标志为 1 时,两个按 键控制左边计数的加减。通过两个按键来分别控制对计数的加减,判断加按键是否为 0,为 0 计数加 1,如不为 0 时,则判断减按键是否为 0,若为 0 计数减 1,否则不进 行操作。见下图 4.1 所示。图 4.1总流程图15 湖南工程职业技术学院毕业设计(论文)4.2 按键流程图4.2.1 按键切换通过设置一个标志位使用的方式来达到可以只通过两个按键控制双方数字的加减, 当双方计数切换标志为 0 时,两个按键控制右边计数的加减,当双方计数切换标志为 1 时,两个按键控制左边计数的加减。见下图 4.2 所示。图 4.2按键切换流程图16 湖南工程职业技术学院毕业设计(论文)4.2.2 按键加减通过两个按键来分别控制对计数的加减,判断加按键是否为 0,为 0 计数加 1,如 不为 0 则判断减按键是否为 0,若为 0 计数减 1,否则不进行操作。见下图 4.3 所示。图 4.3按键加减流程图17 湖南工程职业技术学院毕业设计(论文)4.3 中断流程图判断一个定时装置的计时是否够精确,就是看该装置的定时器是否准确。MCS-51 单片机内部带有两个 16 位定时计数器 T0 和 T1, 两者均可以作为定时器/计数器(一下 简称 T/C)使用。如果 T/C 工作于定时状态,则表示定时的时间到;若 T/C 工作于计数 状态,则表示计数回零。当 T/C 处于定时方式时,加 1 计数在每个机器周期加 1,因 此,也可以把它看作在累计机器周期。由于一个机器周期包含 12 个震荡周期,所以它 的计数速度是震荡周期的 1/12。 定时器工作方式寄存器 TMOD 设定: TMOD 是一个 8 位的寄存器,其中高四位控制 T1,低 4 位控制 T0。其中 T0 的低 两位控制着定时计数器的工作方式,第三位为定时/计数的选择位, “0”为定时, “1” 为计数。第四位 GATE 为门控制位,用于控制定时器的启动是否受外部中断的影响。 GATE=0 与外部中断无关,有 TCON 寄存器中的 TRx 位控制启动。在该设计中只用到 定时器 T0 定时器的工作方式 0,所以只需要对 TMOD 写入#00H 即可。 定时器/计数 器原理框图见图 4.4 所。图 4.4定时器/计数器原理框图在该设计中用的晶振是 12MHz,机器周期计算公式得到 Tp Tp=12/12MHz=0.000001s 该工作方式的最大计数时间为: Tp*212=0.008192s 为了便于计算,在该设计中我把定时时间设为 0.005 秒,通过计算得知,应该给 TH0、TL0 的值分别为#63H、18H。这样,如果要计时 1 秒,只需要让定时器进行 200 次定时,把 R0 赋值为 200,当定时到,就对 R0 减 1,当 R0 为 0 时,这个时间就是所 要计时 1 秒的时间。此时对时间进行调整并显示18 湖南工程职业技术学院毕业设计(论文)由于我们希望在比赛过程中能及时暂停和继续计时,在定时器中我们还可以通过控制 TRx 来实现该功能,需要继续计时给该位进行置位,需要暂停给该位清零。 MCS-51 的定时器 T0 有 4 种工作方式:方式 0,方式 1,方式 2,方式 3。 MCS-51 的定时器 T1 有 3 种工作方式:方式 0,方式 1,方式 2。 通过定时中断的方式,来提供中间 24 秒时间的计数。见下图 4.5 所示。图 4.5 中断流程图4.4 软件调试软件的编程调试首先要抓住计分和计时两大模块,在这两大模块成功的基础上再 进行其他细小模块的组装和完善。主要编程是所遇到的问题: 1)最先开始时实现计分错误时不能减分 2)按下按键数码管不停的加 3)刚开始数码管显示乱码19 湖南工程职业技术学院毕业设计(论文)总结2014 年 1 月,我开始了我的毕业论文,时至至今,论文基本完成,从最初的茫然 到慢慢的进入状态,再到对思路逐渐地清晰,整个写作过程难以用语言来表达,历经 几个月的奋战, 紧张而又充实的毕业设计终于落下帷幕, 回想这段日子的经历与感受, 我感概万千,在这次毕业设计过程中,我拥有了无数的难忘的回忆和收获。 在与我的组员交流选题确定之后,我组选的题目是:篮球计分器。在接下来的一 段时间里,我通过在网上查找一些相关的资料,对这个设计有了一定的了解之后,我 们开始了对该设计进行一步步的书写与调试,在对程序的书写过程中,我遇到了许多 的问题,但是在老师和同学的指导之下解决掉了这些问题,在论文的制作过程中我印 象最深的是“要自己学会思考,学会解决自己所遇到的问题,并知道怎样去选择设计 方案” 。 此外,在本次设计过程期间,我还学习了 WORD 文档的相关编辑知识,制作论文 的过程实际是一个学习的过程。 我不会忘记这难忘的几个月的时间,毕业设计的制作给了我很难忘的回忆,也让 我为以后的工作打下了奠定的基础,在我徜徉的书海与网上查找资料的日子里,最难 忘的是每次找到资料的激动与兴奋;每当看着自己一字一句打上去的时候心里已经没 有了疲倦,劳累与压力,而只有满满地的幸福味,这段旅程看似荆棘密布,实则温藏 着无尽的宝藏。我从资料的收集中,掌握了很多单片机、lED 显示器知识,再一次让 我对所学过的知识进一步的提升与巩固, 并且让我对当今的当单片机与 LED 显示的最 新发展技术有所了解,在整个过程中,我学习到了新的知识,在今后的日子里,我仍 然要不断的充实自己,争取在所学领域有所作为。20 湖南工程职业技术学院毕业设计(论文)致谢光阴荏苒,日月如梭,在湖南工程职业技术学院的三年时光即将过去,在漫长的 人生旅途中,三年的时间并不算长,但是对我而言,是磨砺青春、挥洒书生意气的三 年,也是承受恩师,增长才干、提高学识的三年,最后迎来了学习生涯中最后几个月 一个毕业设计论文的修改与答辩。 在此,首先感谢我的母校,在我即将步入社会之前给了我提供了一个良好的学习 平台,让我有了一个对三年所学知识的综合应用与动手操作的机会,也让我在这次毕 业设计中受益匪浅,让我深刻地了解并熟练地对单片机的程序进行编写,而且了解了 如何快速的编写程序的方法与思路,而且对这三年来所学的相关知识进一步进行巩固 和加深,同时也学到了许多新的知识和方法。更重要的是让我在学习和掌握这些知识 的同时也提高了我的思维能力,在分析问题解决问题的能力上也得到了培养和提高, 使我完善了知识结构、 拓宽了知识面,开阔了眼界、 提高了对各科知识综合应用的能力。 其次感谢易老师对我的耐心辅导,也感谢我的同学对我热情的帮助。使我能够顺 利地完成毕业论文。在我的学业和论文的研究工作中无不倾注着老师辛勤的汗水和心 血。老师严谨的治学态度、渊博的只是、无私的奉献精神使我深受启迪,从尊敬的老 师身上,我不仅学到了扎实、宽广的专业知识,也学到了做人的道理,在此,我要向 我的指导老师易老师致以最衷心的感谢和深深的敬意。对于一些疑难问题老师和同学 更是很有耐心、不厌其烦的给予解答,并且您能在百忙之中对我的论文进行了仔细的 审阅,提出了极为宝贵的修改意见和建议,保证了论文的质量。使我在毕业之际为学 校交上了一份满意的答卷。在此对老师表示衷心的感谢和崇高的敬意。李中心 2014 年 5 月 30 日21 湖南工程职业技术学院毕业设计(论文)参考文献[1] 康华光.电子技术基础(模拟部分) (第四版) 。高等教育出版社。北京:1999 年。 [2] [3] 康华光.电子技术基础 (数字部分) (第三版) 。 高等教育出版社。 北京: 1999 年。 赵保经.中国集成电路大全――CMOS 集成电路(第一版) 。北京:国防工业出版社出版。2004 [4] 彭介华.电子技术课程设计指。长沙:高等教育出版社。03 [6] 中国集成电路大全编写委员会编 中国集成电路大全――TTL 集成电路(第一版) 。 北京:国防工业出版社出版,1985 [7] 梁宗善.电子技术基础课程设计――中大规模集成电路应用(第一版) 。武汉:华 中理工大学出版社。1995 [8] 袁启昌.单片机原理及应用教程.科学出版社.] 林仲茂.8051 单片机彻底研究基础篇.人民邮电出版社。] 徐安.单片机原理与应用.北京希望电子出版社.] 张毅刚.MSC-51 单片机应用设计.哈尔滨工业大学出版社.] 余修武.单片机原理及应用.电子科技大学出版社.] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] 陈秋妹/黄静. 《微机原理及应用课程设计指导书》 李全力.《单片机原理及应用》 . 清华大学出版社,2001 赵晓安.《MCS-51 单片机原理及应用》.天津大学出版社,2001.3 李广第. 《单片机基础》 .北京航空航天大学出版社,1999 刘法治.常用电子器件及典型芯片应用技术:机械工业出版社,2007 胡宴如主编.模拟电子技术,第 2 版,高等教育出社,2003.12 杨志忠主编.数字电子技术,第 2 版,高等教育出社,2003.12 潘永雄主编.单片机原理与应用,第 2 版,电子工业出版社 2005.1 马忠梅等主编.单片机 C 应用程序设计,第 4 版,北京航空航天大学出版社, 谭浩强主编.C 程序设计,第 3 版,清华大学出版社,2005.7 谭浩强主编.C++程序设计,第 2 版,清华大学出版社,2007.7 李全利主编.单片机原理及应用技术,第 1 版,高等教育出版社,2001.7 龙安国等主编.protel99SE,第 1 版,中南大学出版社出版,2007.822曾祥富、张龙兴、童士宽.电子技术基础 (第一版) 。北京:高等教育出版社,2007.1 湖南工程职业技术学院毕业设计(论文)附录 1原理图23 湖南工程职业技术学院毕业设计(论文)附录 2aj1 x1 aj2 x2 qiehuan aj3 x3 anjianb anjiana weixuan Ashi Age z1 Ashijian Bshijian z2 Bshi Bge ljmp org ljmp start: mov mov mov mov mov mov mov mov mov mov mov mov mov mov mov weixuan,#07fh Ashi,#0c0h Age,#0c0h z1,#0bfh z2,#0bfh Bshi,#0c0h Bge,#0c0h Ashijian,#0a4h Bshijian,#99h r0,#31h r1,#0 40h,#0 41h,#0 42h,#0 43h,#024程序bitbit bit equ equbit 20h.0 bit 20h.1 bit 20h.2 bit 20h.3 20h.4 bit 20h.5 bit 20h.6 P3.0 P3.1 30h 31h equ equ 32h 33h 34h 35h equ 36h 37h equ 38h 00h;防抖标志位equ equ equ org start0bh zhongduan 湖南工程职业技术学院毕业设计(论文) mov mov mov setb setb setb call main: call call call call ljmp anjianqiehuan: jnb jnb clr ljmp panduan5: jb setb ljmp cc5: jb setb cpl out5: ret anjian1:clr ljmp panduan2: jb setb ljmp cc2: jb setb xianshi anjian1 anjian2 anjianqiehuan main aj3,panduan5 p3.2,cc5 x3 out5 p3.2,out5 x3 out5 x3,out3 x3 qiehuan 44h,#0 45h,#2 46h,#4 aj1 aj2 aj3 chushihuadptr,#tab aj2,panduan2 anjiana,cc2 x2 aj1 out3 anjiana,out3 aj2 out3 x2,out3 x225 湖南工程职业技术学院毕业设计(论文) mov mov setb jnb ljmp o1: dec mov movc mov mov cjne mov mov dec mov movc mov mov cjne mov mov ljmp c1: inc mov movc mov cjne mov mov inc mov movc mov cjne mov mov out3: ret anjian2:2645h,#2 46h,#4 tr0 qiehuan,o1 c1 43h a,43h a,@a+dptr 32h,a a,43h a,#255,out3 32h,#90h 43h,#9 44h a,44h a,@a+dptr 31h,a a,44h a,#255,out3 31h,#90h 44h,#9 out3 43h a,43h a,@a+dptr 32h,a a,#0ffh,out3 32h,#0c0h 43h,#0 44h a,44h a,@a+dptr 31h,a a,#0ffh,out2 31h,#0c0h 44h,#0 湖南工程职业技术学院毕业设计(论文)clr ljmp panduan: jb setb ljmp cc: jb setb mov mov setb jnb ljmp o2: dec mov movc mov mov cjne mov mov dec mov movc mov mov cjne mov mov ljmp c2: inc mov movc mov cjne 40h a,40h a,@a+dptr 38h,a a,#0ffh,out227dptr,#tab aj1,panduan anjianb,cc x1 aj1 out2 anjianb,out2 aj1 out2 x1,out2 x1 45h,#2 46h,#4 tr0 qiehuan,o2 c2 40h a,40h a,@a+dptr 38h,a a,40h a,#255,out2 38h,#90h 40h,#9 41h a,41h a,@a+dptr 37h,a a,41h a,#255,out2 37h,#90h 41h,#9 out2 湖南工程职业技术学院毕业设计(论文) mov mov inc mov movc mov cjne mov mov out2: ret xianshi: mov movc mov mov cjne mov dec hh: mov movc mov momov hh1: mov mov call mov mov rr mov inc P2,weixuan p0,@r0 yanshi p2,#0ffh a,weixuan a weixuan,a r02838h,#0c0h 40h,#0 41h a,41h a,@a+dptr 37h,a a,#0ffh,out2 37h,#0c0h 41h,#0a,46h a,@a+dptr bshijian,a a,46h a,#255,hh 46h,#9 45h a,45h a,@a+dptr ashijian,a a,45h a,#0,hh1 a,46h a,#0,hh1 tr0 45h,#2 46h,#4 湖南工程职业技术学院毕业设计(论文) cjne mov mov out: ret chushihua: mov mov mov mov mov setb setb ret zhongduan: mov mov mov inc cjne mov dec out4: reti yanshi: mov dd: mov djnz djnz ret tab: db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,0ffh end r7,#40 r7,$ r6,dd r0,#39h,out weixuan,#07fh r0,#31hie,#82h tmod,#01h dptr,# th0,dph tl0,dpl tr0 qiehuandptr,# th0,dph tl0,dpl r1 r1,#20,out4 r1,#0 46hr6,#3029

我要回帖

更多关于 单片机按键计数程序 的文章

 

随机推荐