单片机俄罗斯方块游戏的设计
单片机俄罗斯方块游戏的设计[20200128193717]
摘要
本设计是通过AT89S52单片机来实现俄罗斯方块游戏的设计,使用C语言进行编程,并通过Proteus软件仿真。
本设计实现的基本功能:通过按键来控制方块的变换与移动;消除一行并计分;消除多行额外奖励计分;方块堆满结束时游戏等俄罗斯方块的基本功能。为了解决外部电路图,必须充分了解所用液晶的显示方法和单片机的外部接口功能跟所需要处理的逻辑关系,还需要理解LCD液晶的控制原理,通过数据端口和控制端口来实现画面在液晶上面的显示。
程序则要求在对外部电路了解的情况下完成自己所需要的功能,并将所要完成的功能用编辑语言的形式来实现和通过Proteus仿真实现通过外部按键来控制各种不同图形的方块来玩游戏,并且实现记录分数和通过过关数来实现跟改变方块下降的速度。本设计可以实现基本的游戏功能,达到预期的目的。
*查看完整论文请+Q: 351916072
关键字:】AT89S52、C语言、Proteus仿真、LCD液晶
引言 1
一、整体设计方案 1
(一)系统的核心部分——单片机 1
1.单片机的定义 1
2.单片机的选择 1
3.单片机的发展及应用 1
4.AT89S52引脚功能描述 3
5.晶振特性 5
(二)液晶显示模块 5
1.液晶显示控制驱动器HD61202的特点 5
2.液晶显示控制驱动器HD61202的引脚功能 6
3.液晶显示控制驱动器HD61202的指令系统 6
4.HD61202的软件介绍 7
5.键盘电路 10
二、系统程序的设计 11
(一)俄罗斯方块主流程图 11
(二)俄罗斯方块驱动流程图 12
(三)俄罗斯方块中按下键的流程图 13
三、软件仿真 13
(一) Proteus软件介绍 13
(二)俄罗斯方块系统PROTUES仿真 14
结论 16
参考资料 17
致 谢 18
附录Ⅰ:总电路图 19
附录Ⅱ:PCB原理图 20
附录Ⅲ:C语言程序 21
引言
游戏是人们活动中一项非常重要的内容,有人认为如果哪一天人类对所有的游戏都失去兴趣,恐怕世界的末日就要到了。电脑对游戏的贡献有目共睹,现在摸过电脑的人很少有没玩过电脑游戏的,喜欢游戏的人也很少有不玩电脑的。俄罗斯方块游戏是一款风靡全球的电视游戏机和掌上游戏机游戏,它曾经造成的轰动与造成的经济价值可以说是游戏史上的一件大事。俄罗斯方块游戏最初是苏联人制作的,它看似简单但却变化无穷。究其历史,俄罗斯方块最早还是出现在PC机上,而我国的用户都是通过红白机了解、喜欢上它的。现在将重新掀起这股让人沉迷的俄罗斯方块风潮。对一般用户来说,它的规则简单,容易上手,游戏过程变化无穷,现在腾讯QQ游戏中有两人跟团队在线对战两种模式,用户可任选一种进行游戏。网络模式还增加了积分制,让用户能感受到游戏中的乐趣,又能给用户提供了一个展现自己高超技艺的场所。俄罗斯方块游戏是随着随计算机的发展而发展,并不断推出各种类似游戏,深受广大玩家的喜爱。这个游戏有的简单,有的复杂,但其根本原理是一样的都是对运动的方块进行组合。
本课题是通过AT89S52单片机结合液晶显示器来实现俄罗斯方块游戏的设计,使用C语言进行编程,并通过Proteus来进行仿真。并且利用按键来实现俄罗斯方块游戏。功能主要包括移动、变化、消除,减一行加分,减除多行加分并奖励分,堆满屏幕自动结束游戏。
一、整体设计方案
(一)系统的核心部分——单片机
1.单片机的定义
单片机就是单片微型计算机是制作在一块集成电路芯片上的计算机。它包括中央处理器、用RAM构成的数据存储器、用ROM构成的程序存储器、定时器/计数器、各种输入/输出(I/O)接口和时钟电路,可独立地进行工作。并且现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器和嵌入式控制器。
2.单片机的选择
单片机微型计算机简称单片机,特别适合用于控制领域,又被称为微控制器。单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
通常,单片机由单块集成电路芯片构成,内部包含了计算机的基本功能部件:存储器、中央处理器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
3.单片机的发展及应用
目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义在于它从本质上改变了传统的控制系统设计思想和设计方法。用单片机通过软件方法来实现了由模拟电路或数字电路实现的大部分功能。本课题是通过AT89S52单片机结合液晶显示器来实现俄罗斯方块游戏的设计,使用C语言进行编程,并通过Proteus来进行仿真。并且利用按键来实现俄罗斯方块游戏。功能主要包括移动、变化、消除,减一行加分,减除多行加分并奖励分,堆满屏幕自动结束游戏。
纵观单片机的发展过程,正朝着多功能、高性能、低电压、低功耗、低价格、大储存容量、强I/O功能及较好的结构兼容性方向发展。其发展趋势不外乎以下几个方面:
1)多功能
单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使单片机可以实现更多的功能。比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器)、高速I/O口及计数器的捕获/比较逻辑等。
2)高效率和高性能
为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。使用高级语言可以降低开发难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。
3)低电压和低功耗
单片机的嵌入式应用决定了低电压和低功耗的特性十分重要。由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(1.2V或0.9V),功耗已经降低到UA级。这些特性使得单片机系统可以在更小电源的支持下工作更长的时间。
4)低价格
单片机应用面广,使用数量大,带来的直接好处就是成本的降低。目前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低其产品的价格。 在此,我们采用型号为AT89S52的单片机。AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K的内存可编程Flash的存储器。片上Flash允许程序存储器在系统可编程,也适合常规编程器。在单芯片上,拥有系统可编程Flash和灵巧的8位CPU。
4.AT89S52引脚功能描述
1)AT89S52单片机的引脚分配见图1-1所示:
图1-1 DIP封装 AT89S52单片机引脚结构图
单片机的引脚定义:
VCC:供电电压
GND:接地
P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每个都能带动8个TTL逻辑电平。给P0端口信号“1”时,引脚做高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8 位地址/数据复用。在这种工作模式下,P0拥有内部上拉电阻。在做Flash程序时,P0端口用来接收指令字节;在检验程序时,输出指令字节。在校验程序时,就需要外部上拉电阻。
P1口:P1口是一个拥有内部上拉电阻的8位双向I/O端口,P1输出缓冲器能驱动4个逻辑电平。当给P1端口信号“1”时,内部上拉电阻把端口抬高,可以把P1端口作为输入口使用。
P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TT逻辑电平。对P2端口输入信号“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。当作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。在访问
表1-1 P1口部分管脚的第二功能
引脚号 第二功能
P1.0 T2(定时器/计数器 T2 的外部计数输入),时钟输出
P1.1 T2EX(定时器/计数器 T2 的捕捉/重载触发信号和方向控制)
P1.5 MOSI(在系统编程用)
P1.6 MISO(在系统编程用)
P1.7 SCK(在系统编程用)
外部程序存储器或用16位地址读取外部数据存储器(如执行MOVX @DPTR)时,P2口送出高8位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在Flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
摘要
本设计是通过AT89S52单片机来实现俄罗斯方块游戏的设计,使用C语言进行编程,并通过Proteus软件仿真。
本设计实现的基本功能:通过按键来控制方块的变换与移动;消除一行并计分;消除多行额外奖励计分;方块堆满结束时游戏等俄罗斯方块的基本功能。为了解决外部电路图,必须充分了解所用液晶的显示方法和单片机的外部接口功能跟所需要处理的逻辑关系,还需要理解LCD液晶的控制原理,通过数据端口和控制端口来实现画面在液晶上面的显示。
程序则要求在对外部电路了解的情况下完成自己所需要的功能,并将所要完成的功能用编辑语言的形式来实现和通过Proteus仿真实现通过外部按键来控制各种不同图形的方块来玩游戏,并且实现记录分数和通过过关数来实现跟改变方块下降的速度。本设计可以实现基本的游戏功能,达到预期的目的。
*查看完整论文请+Q: 351916072
关键字:】AT89S52、C语言、Proteus仿真、LCD液晶
引言 1
一、整体设计方案 1
(一)系统的核心部分——单片机 1
1.单片机的定义 1
2.单片机的选择 1
3.单片机的发展及应用 1
4.AT89S52引脚功能描述 3
5.晶振特性 5
(二)液晶显示模块 5
1.液晶显示控制驱动器HD61202的特点 5
2.液晶显示控制驱动器HD61202的引脚功能 6
3.液晶显示控制驱动器HD61202的指令系统 6
4.HD61202的软件介绍 7
5.键盘电路 10
二、系统程序的设计 11
(一)俄罗斯方块主流程图 11
(二)俄罗斯方块驱动流程图 12
(三)俄罗斯方块中按下键的流程图 13
三、软件仿真 13
(一) Proteus软件介绍 13
(二)俄罗斯方块系统PROTUES仿真 14
结论 16
参考资料 17
致 谢 18
附录Ⅰ:总电路图 19
附录Ⅱ:PCB原理图 20
附录Ⅲ:C语言程序 21
引言
游戏是人们活动中一项非常重要的内容,有人认为如果哪一天人类对所有的游戏都失去兴趣,恐怕世界的末日就要到了。电脑对游戏的贡献有目共睹,现在摸过电脑的人很少有没玩过电脑游戏的,喜欢游戏的人也很少有不玩电脑的。俄罗斯方块游戏是一款风靡全球的电视游戏机和掌上游戏机游戏,它曾经造成的轰动与造成的经济价值可以说是游戏史上的一件大事。俄罗斯方块游戏最初是苏联人制作的,它看似简单但却变化无穷。究其历史,俄罗斯方块最早还是出现在PC机上,而我国的用户都是通过红白机了解、喜欢上它的。现在将重新掀起这股让人沉迷的俄罗斯方块风潮。对一般用户来说,它的规则简单,容易上手,游戏过程变化无穷,现在腾讯QQ游戏中有两人跟团队在线对战两种模式,用户可任选一种进行游戏。网络模式还增加了积分制,让用户能感受到游戏中的乐趣,又能给用户提供了一个展现自己高超技艺的场所。俄罗斯方块游戏是随着随计算机的发展而发展,并不断推出各种类似游戏,深受广大玩家的喜爱。这个游戏有的简单,有的复杂,但其根本原理是一样的都是对运动的方块进行组合。
本课题是通过AT89S52单片机结合液晶显示器来实现俄罗斯方块游戏的设计,使用C语言进行编程,并通过Proteus来进行仿真。并且利用按键来实现俄罗斯方块游戏。功能主要包括移动、变化、消除,减一行加分,减除多行加分并奖励分,堆满屏幕自动结束游戏。
一、整体设计方案
(一)系统的核心部分——单片机
1.单片机的定义
单片机就是单片微型计算机是制作在一块集成电路芯片上的计算机。它包括中央处理器、用RAM构成的数据存储器、用ROM构成的程序存储器、定时器/计数器、各种输入/输出(I/O)接口和时钟电路,可独立地进行工作。并且现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器和嵌入式控制器。
2.单片机的选择
单片机微型计算机简称单片机,特别适合用于控制领域,又被称为微控制器。单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
通常,单片机由单块集成电路芯片构成,内部包含了计算机的基本功能部件:存储器、中央处理器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
3.单片机的发展及应用
目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义在于它从本质上改变了传统的控制系统设计思想和设计方法。用单片机通过软件方法来实现了由模拟电路或数字电路实现的大部分功能。本课题是通过AT89S52单片机结合液晶显示器来实现俄罗斯方块游戏的设计,使用C语言进行编程,并通过Proteus来进行仿真。并且利用按键来实现俄罗斯方块游戏。功能主要包括移动、变化、消除,减一行加分,减除多行加分并奖励分,堆满屏幕自动结束游戏。
纵观单片机的发展过程,正朝着多功能、高性能、低电压、低功耗、低价格、大储存容量、强I/O功能及较好的结构兼容性方向发展。其发展趋势不外乎以下几个方面:
1)多功能
单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使单片机可以实现更多的功能。比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器)、高速I/O口及计数器的捕获/比较逻辑等。
2)高效率和高性能
为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。使用高级语言可以降低开发难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。
3)低电压和低功耗
单片机的嵌入式应用决定了低电压和低功耗的特性十分重要。由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(1.2V或0.9V),功耗已经降低到UA级。这些特性使得单片机系统可以在更小电源的支持下工作更长的时间。
4)低价格
单片机应用面广,使用数量大,带来的直接好处就是成本的降低。目前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低其产品的价格。 在此,我们采用型号为AT89S52的单片机。AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K的内存可编程Flash的存储器。片上Flash允许程序存储器在系统可编程,也适合常规编程器。在单芯片上,拥有系统可编程Flash和灵巧的8位CPU。
4.AT89S52引脚功能描述
1)AT89S52单片机的引脚分配见图1-1所示:
图1-1 DIP封装 AT89S52单片机引脚结构图
单片机的引脚定义:
VCC:供电电压
GND:接地
P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每个都能带动8个TTL逻辑电平。给P0端口信号“1”时,引脚做高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8 位地址/数据复用。在这种工作模式下,P0拥有内部上拉电阻。在做Flash程序时,P0端口用来接收指令字节;在检验程序时,输出指令字节。在校验程序时,就需要外部上拉电阻。
P1口:P1口是一个拥有内部上拉电阻的8位双向I/O端口,P1输出缓冲器能驱动4个逻辑电平。当给P1端口信号“1”时,内部上拉电阻把端口抬高,可以把P1端口作为输入口使用。
P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TT逻辑电平。对P2端口输入信号“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。当作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。在访问
表1-1 P1口部分管脚的第二功能
引脚号 第二功能
P1.0 T2(定时器/计数器 T2 的外部计数输入),时钟输出
P1.1 T2EX(定时器/计数器 T2 的捕捉/重载触发信号和方向控制)
P1.5 MOSI(在系统编程用)
P1.6 MISO(在系统编程用)
P1.7 SCK(在系统编程用)
外部程序存储器或用16位地址读取外部数据存储器(如执行MOVX @DPTR)时,P2口送出高8位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在Flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/4573.html