关键词与网站标题,用wordpress设计html5,手机网站注意哪些问题吗,个人网页设计作品集摘要
乒乓球游戏电路是一个对输入信号、输入时机正确与否的8个LED表示乒乓球球台和乒乓球#xff0c;用数码管模拟显示器#xff0c;显示比赛局数比分和每局玩家得分的电路。电路并不复杂#xff0c;整体分为两个模块#xff1a;一#xff0c;游戏主模块#xff1b;二用数码管模拟显示器显示比赛局数比分和每局玩家得分的电路。电路并不复杂整体分为两个模块一游戏主模块二计分显示模块。主模块完成用LED表示球和球台并对玩家是否击球做出判断并且将两位玩家的游戏得分进行输出。计分显示模块完成对游戏玩家的得分显示。选用STC系列型号的单片机芯片实现。在此过程中建立仿真测试完成了功能和时序仿真从而保证了设计的功能与时序的正确性。
关键词单片机数码管乒乓球游戏 1 绪论
1.1 课题的研究背景
1.1 本设计的研究背景和研究目的
乒乓球中华人民共和国国球是一种世界流行的球类体育项目。它的英语官方名称是“table tennis”即“网上桌球”。乒乓球的名字起源于1990年。乒乓球的比赛赛制是以11分为一局采用五局三胜团体或七局四胜制单项。比赛分团体、单项男单、女单、男双、女双、混双。
在中国到处可见打乒乓球的人以学生居多。因为随着人们现代化节奏的加快工作压力的增大传统打乒乓球的方式受到运动设施、场地、环境的因素的影响让人们对乒乓球运动减少了很多兴趣。随着科学技术的发展人类进入信息化社会信息社会的发展离不开电子产品的进步。现代电子产品发展的越来越快于是人们将乒乓球与电子产品结合在一起形成了乒乓游戏机。通过使用按键模拟球拍发光二极管模拟乒乓球进行乒乓球游戏的操作。
乒乓游戏机的出现解决了人类的很大难题。因为该产品不受运动设施、空间、场地、环境等因素的影响在家即可进行操作。操作的同时让操作者仿佛在真正的打乒乓球。而且该设计属于一种益智类设计让人既可以锻炼身体也可以锻炼智力。
1.2 国内外研究现状
第二次世界大战以后电子计算机技术得到了突飞猛进的发展。电子计算机一代一代的更新的同时软件设计也迅速发展。于是1971年世界上第一台电子游戏机出现了。随着电子技术的迅猛发展电子游戏机进入了次世代主要有三大游戏机厂商。分别为SONY、微软和任天堂。
如今大部分益智类游戏机属于电子游戏机乒乓游戏机就属于电子游戏机。随着电子技术的突破电子游戏机开始朝着“便携式”和“家庭化”方向发展彩色电视的普及使大型游戏机的显像管和扫描版部分完全可以被彩色电视取代使得微处理机部分与现实屏幕实现了分离。现在制成的游戏机只相当于一个信号发生器。如今乒乓游戏机已出现3D类体感类等等类型。
乒乓游戏机不仅可以实现人们对乒乓球的热爱又可以让人们在玩耍的同时进行身体锻炼和智力提高具有明朗的前景。 2 乒乓游戏机设计方案
目前有两种方案来设计乒乓游戏机设计。方案一是基于单片机的乒乓游戏机设计。方案二是基于FPGA的乒乓游戏机设计。
2.1 基于单片机的乒乓游戏机设计
方案一是基于单片机的乒乓游戏机设计结果用数码管显示。软件方面使用Keil uVision4进行编程。硬件设计包含单片机电路、led模拟球台电路、按键电路、显示电路等电路的设计。软件设计包括主程序、按键组程序球拍模拟和暂停/开始子程序、发球程序回球程序、数码管显示程序。
系统的组成结构如下 2.2 基于FPGA的乒乓游戏机设计
方案二是基于FPGA的乒乓游戏机设计。因为学校具备专门的实验箱如果采用方案二只需编程便可实现。通过对各部分编写VHDL程序然后进行编译、仿真、逻辑综合、逻辑适配最后进行编程下载并通过程序验证结果。用16个发光二极管代表乒乓球在游戏机的两侧各设置两个开关一个是发球开关一个是击球开关。甲方按动发球开关时靠近甲方的第一盏灯亮然后发光二极管由甲向乙依次点亮代表乒乓球在移动。当球过网后按设计者规定的球位乙方就可以击球。若乙方提前击球或没有击到球则判乙方失分甲方自动加分重新发球比赛继续进行到一方记分到11分该局结束记分牌清零可以开始新的一局比赛。其系统框图如2.2所示。、 一、硬件方案
硬件构成单片机最小系统数码管显示模块蜂鸣器模块LED指示灯模块按键模块 二、设计功能
单片机型号STC89C52/51、AT89C52/51、AT89S52/51 都可通用
乒乓球比赛是由甲乙双方参赛乒乓球比赛模拟机是一种用发光二极管模拟乒乓球运动的电子游戏机。 1. 采用8个LED排成一条直线以中点为界两边各代表参赛双方的位置。其中一只点亮的LED指示球的当前位置。点亮的LED依次从左到右或从右到左移动其移动速度可以进行调节。
2. 当球点亮的那只LED运动到某方的最后一位时参赛者应能果断地按下位于自己一方的按钮开关即表示启动球拍击球若击中则使球向相反方向移动若未击中则对方得一分。
3. 一方得分时电路自动响铃3s这期间发球无效等铃声停止后方能继续比赛。
4. 设置自动计分电路。甲乙双方各用两位数码管进行计分显示每记满11分为1局。最好考虑双方各10分之后领先2分者为胜。
5. 甲乙双方各设置一个发光二极管表示拥有发球权每得2分自动交换发球权拥有发球权的一方发球才能有效。 三、实物图 3.2主控模块设计
单片微型计算机是随着微型计算机的发展而产生和发展的。自从1975 年美国德克萨斯仪器公司的第一台单片微型计算机 简称单片机TMS-1000 问世以来迄今为止单片机技术已成为计算机技术的一个独特分支单片机的应用领域也越来越广泛特别是在工业控制中经常遇到对某些物理量进行定时采样与控制的问题在仪器仪表智能化中也扮演着极其重要的角色。
如果将8位单片机的推出作为起点那么单片机的发展历史大致可以分为以下几个阶段
第一阶段1976—1978单片机的探索阶段。以Intel公司的MCS-48为代表。MCS-48的推出是在工控领域的探索参与这一探索的公司还有Motorola、Zilog等。都取得了满意的效果。这就是SCM的诞生年代“单片机”一词即由此而来。
第二阶段1978—1982单片机的完善阶段。Intel公司在MCS-48基础上推出了完善的、典型的单片机系列MCS-51。它在以下几个方面奠定了典型的通用总线型单片机体系结构。
1完善的外部总线。MCS-51设置了经典的8位单片机的总线结构包括8位数据总线、16位地址总线、控制总线及具有多机通信功能的串行通信接口。
2CPU外围功能单元的集中管理模式。
3体现工控特性的地址空间及位操作方式。
4指令系统趋于丰富和完善并且增加了许多突出控制功能的指令。
第三阶段1982—19908位单片机的巩固发展及16位单片机的推出阶段也是单片机向微控制器发展的阶段。Intel公司推出的MCS-96系列单片机将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中体现了单片机的微控制器特征。
第四阶段1990—微控制器的全面发展阶段。随着单片机在各个领域全面、深入地发展和应用出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机以及小型廉价的专用型单片机。
单片机是在集成电路芯片上集成了各种元件的微型计算机这些元件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时/计数器、中断系统、时钟部件的集成和I/O接口电路。由于单片机具有体积小、价格低、可靠性高、开发应用方便等特点因此在现代电子技术和工业领域应用较为广泛在智能仪表中单片机是应用最多、最活跃的领域之一。在控制领域中,现如今人们更注意计算机的底成本、小体积、运行的可靠性和控制的灵活性。在各类仪器、仪表中引入单片机使仪器仪表智能化提高测试的自动化程度和精度提高计算机的运算速度简化仪器仪表的硬件结构提高其性能价格比。
单片机引脚介绍
单片机主要特点
1有优异的性能价格比。
2集成度高、体积小、有很高的可靠性。单片机把各功能部件集成在一块芯片上内部采用总线结构减少了各芯片之间的连线大大提高了单片机的可靠性和抗干扰能力。另外其体积小对于强磁场环境易于采取屏蔽措施适合在恶劣环境下工作。
3控制功能强。为了满足工业控制的要求一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机。
4低功耗、低电压便于生产便携式产品。
5外部总线增加了I2CInter-Integrated Circuit及SPI(Serial Peripheral Interface)等串行总线方式进一步缩小了体积简化了结构。
6单片机的系统扩展和系统配置较典型、规范容易构成各种规模的应用系统。
优异的性能价格比。
1集成度高、体积小、有很高的可靠性。
单片机把各功能部件集成在一块芯片上内部采用总线结构减少了各芯片之间的连线大大提高了单片机的可靠性与抗干扰能力。另外其体积小对于强磁场环境易于采取屏蔽措施适合于在恶劣环境下工作。
此外程序多采取固化形式也可以提高可靠性。
2控制功能强。
为了满足工业控制要求一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机。
单片机的系统扩展、系统配置较典型、规范容易构成各种规模的应用系统。 VCCSTC89C52电源正端输入接5V。
GND电源地端。
XTAL1: 单芯片系统时钟的反相放大器输入端。
XTAL2 系统时钟的反相放大器输出端一般在设计上只要在 XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动作了此外可以在两引脚与地之间加入一 20PF 的小电容可以使系统更稳定避免噪声干扰而死机。
RESETSTC89C52的重置引脚高电平动作当要对晶片重置时只要对此引脚电平提升至高电平并保持两个机器周期以上的时间AT89S51便能完成系统重置的各项动作使得内部特殊功能寄存器之内容均被设成已知状态并且至地址0000H处开始读入程序代码而执行程序。
EA/VppEA为英文External Access的缩写表示存取外部程序代码之意低电平动作也就是说当此引脚接低电平后系统会取用外部的程序代码存于外部EPROM中来执行程序。因此在8031及8032中EA引脚必须接低电平因为其内部无程序存储器空间。如果是使用 8751 内部程序空间时此引脚要接成高电平。此外在将程序代码烧录至8751内部EPROM时可以利用此引脚来输入21V的烧录高压Vpp。
ALE/PROGALE是英文Address Latch Enable的缩写表示地址锁存器启用信号。STC89C52可以利用这支引脚来触发外部的8位锁存器如74LS373将端口0的地址总线A0A7锁进锁存器中因为STC89C52是以多工的方式送出地址及数据。平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6因此可以用来驱动其他周边晶片的时基输入。此外在烧录8751程序代码时此引脚会被当成程序规划的特殊功能来使用。
PSEN此为Program Store Enable的缩写其意为程序储存启用当8051被设成为读取外部程序代码工作模式时EA0会送出此信号以便取得程序代码通常这支脚是接到EPROM的OE脚。STC89C52可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM使得数据存储器与程序存储器可以合并在一起而共用64K的定址范围。
PORT0P0.0P0.7端口0是一个8位宽的开路汲极Open Drain双向输出入端口共有8个位P0.0表示位0P0.1表示位1依此类推。其他三个I/O端口P1、P2、P3则不具有此电路组态而是内部有一提升电路P0在当做I/O用时可以推动8个LS的TTL负载。
PORT2P2.0P2.7端口2是具有内部提升电路的双向I/O端口每一个引脚可以推动4个LS的TTL负载若将端口2的输出设为高电平时此端口便能当成输入端口来使用。P2除了当做一般I/O端口使用外若是在STC89C52扩充外接程序存储器或数据存储器时也提供地址总线的高字节A8A15这个时候P2便不能当做I/O来使用了。
PORT1P1.0P1.7端口1也是具有内部提升电路的双向I/O端口其输出缓冲器可以推动4个LS TTL负载同样地若将端口1的输出设为高电平便是由此端口来输入数据。如果是使用8052或是8032的话P1.0又当做定时器2的外部脉冲输入脚而P1.1可以有T2EX功能可以做外部中断输入的触发脚位。
PORT3P3.0P3.7端口3也具有内部提升电路的双向I/O端口其输出缓冲器可以推动4个TTL负载同时还多工具有其他的额外特殊功能包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。
其引脚分配如下
P3.0RXD串行通信输入。
P3.1TXD串行通信输出。
P3.2INT0外部中断0输入。
P3.3INT1外部中断1输入。
P3.4T0计时计数器0输入。
P3.5T1计时计数器1输入。
P3.6WR外部数据存储器的写入信号。
P3.7RD外部数据存储器的读取信号。
RST复位输入。当振荡器复位器件时要保持RST脚两个机器周期的高电平时间。
ALE/PROG当访问外部存储器时地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间此引脚用于输入编程脉冲。在平时ALE端以不变的频率周期输出正脉冲信号此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是每当用作外部数据存储器时将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时 ALE只有在执行MOVXMOVC指令是ALE才起作用。另外该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止置位无效。
PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间每个机器周期两次/PSEN有效。但在访问外部数据存储器时这两次有效的/PSEN信号将不出现。
EA/VPP当/EA保持低电平时则在此期间外部程序存储器0000H-FFFFH不管是否有内部程序存储器。注意加密方式1时/EA将内部锁定为RESET当/EA端保持高电平时此间内部程序存储器。
单片机最小系统
单片机芯片内还有一项主要内容就是并行I/O口。STC89C51共有4个8位的并行I/O口分别记作P0、P1、P2、P3。每个口都包含一个锁存器、一个输出驱动器和输入缓冲器。实际上它们已被归入专用寄存器之列并且具有字节寻址和位寻址功能。在访问片外扩展存储器时低8位地址和数据由P0口分时传送高8位地址由P2口传送。在无片外扩展存储器的系统中这4个口的每一位均可作为双向的I/O端口使用。
单片机的4个I/O口都是8位双向口这些口在结构和特性上是基本相同的但又各具特点。
STC89C51单片机的时钟信号通常有两种方式产生一是内部时钟方式二是外部时钟方式。在单片机内部有一振荡电路只要在单片机的XTAL1和XTAL2引脚外接石英晶体简称晶振就构成了自激振荡器并在单片机内部产生时钟脉冲信号。图中电容C1和C2的作用是稳定频率和快速起振电容值在5-30pF典型值为30pF。晶振CYS的振荡频率范围在1.2-12MHz间选择典型值为12MHz和11.0592MHz。
当在STC89C51单片机的RST引脚引入高电平并保持2个机器周期时单片机内部就执行复位操作若该引脚持续保持高电平单片机就处于循环复位状态。
复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。时钟频率用6MHZ时C取22uF,R取1KΩ。除了上电复位外有时还需要按键手动复位。本设计就是用的按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端经过电阻与电源Vcc接通而实现的。 四、原理图
在本设计做的过程中硬件和软件方面都遇到了许多问题但是相比于软件在硬件方面还是比较快解决的方面因为硬件是比较容易检查出来错误的软件比较晦涩难懂还是有一定难度。 在硬件调试问题上首先焊接好了元器件实物板后先用万用表测量这个工业板子的电源方面电源方面是最重要的问题应该是特别需要检查的地方以防止电源的短路和正负极的错误。然后在仔细检查电路的连接是否有问题或者有没有虚焊或者没有焊接到的地方然后核对一下元器件的安装是否有问题安装上去是否符合规定由于已经是大学四年都是做过了很多实训过来了对于这些还是游刃有余的但是在上机调试后还是发现了很多的问题。 五、PCB图
在本设计做的过程中硬件和软件方面都遇到了许多问题但是相比于软件在硬件方面还是比较快解决的方面因为硬件是比较容易检查出来错误的软件比较晦涩难懂还是有一定难度。 在硬件调试问题上首先焊接好了元器件实物板后先用万用表测量这个工业板子的电源方面电源方面是最重要的问题应该是特别需要检查的地方以防止电源的短路和正负极的错误。然后在仔细检查电路的连接是否有问题或者有没有虚焊或者没有焊接到的地方然后核对一下元器件的安装是否有问题安装上去是否符合规定由于已经是大学四年都是做过了很多实训过来了对于这些还是游刃有余的但是在上机调试后还是发现了很多的问题。 六、Proteus仿真 七、程序源码
Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统与汇编相比C语言在功能上、结构性、可读性、可维护性上有明显的优势因而易学易用。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案通过一个集成开发环境μVision将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程那么Keil几乎就是你的不二之选即使不使用C语言而仅用汇编语言编程其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。 资料包括 需要完整的资料可以加入我的纷传圈子里面有资源压缩包的百度网盘下载地址及提取码。
纷传点击用微信打开即可过程有点繁琐请见谅。