209
高等教育
一、基本功能
游戏控制:通过左右两个按键控制方块的左右移动,使用上下两个键分别控制方块的顺时针和逆时针旋转,运行仿真后按任意一个开始游戏。
游戏机制:不同形状的方块从屏幕上方随机自由下落,通过使用上下左右四个键调整方块的位置和形状,使它们在屏幕底端拼出完整的一条或多条方块。这些完整的方块会消除掉并得到分数奖励,每次得分蜂鸣器发出持续0.5秒的声响。一次性消灭一层得1分、二层得4分、三层得9分以此类推。没有被消掉的方块会堆积起来,一旦堆积到液晶屏的顶端,则游戏结束。
游戏显示:由LCD12864液晶显示屏显示游戏主页面,由四位数码管实时显示分数。
二、总体设计
本设计是以AT89C52单片机为核心,通过按键电路控制游戏,由LCD12864液晶显示屏显示游戏界面,每次得分蜂鸣器发出声响。原理结构框图,如下:
图1
:原理结构框图
三、模块设计
该游戏模块由单片机最小系统、LCD12864液晶显示电路、数码管显示电路、按键电路和蜂鸣器电路五部分组成,具体设计如下:
(一)单片机最小系统
本系统设计的单片机最小系统包括:AT89C52单片机、晶振电路和复位电路。
设计采用的是AT89C52型号的单片机,性能好,易于操作。在keil 里将程序调试完毕,将编译生成的HEX 文件,添加到Proteus 中单片机的program file 里面,并且每次编译,不用重复添加HEX 文件,
非常易于设计。
晶振电路:AT89C52单片机使用晶体振荡器作为振荡源,由于内部自己带有振荡电路,所以外部只需要接一个晶振和两个电容。晶振的两端分别链接单片机XTAL1和XTAL2引脚。晶振是为单片机提供时钟信号,电容的作用是保证晶振
摘要:本文介绍了一种基于Proteus 仿真软件,以51单片机为核心,利用C 语言编程的俄罗斯方块小游戏仿真设计。通过按键控制方块移动,每次消除层数就会得分,由数码管显示分数,由LCD12864液晶显示屏显示游戏界面。主要通过Proteus 对游戏的硬件电路部分进行设计介绍。
关键词:俄罗斯方块;Proteus;51单片机;仿真
基于Proteus 的俄罗斯方块小游戏仿真设计
何自豪c语言编程小游戏
(河北大学物理科学与技术学院)
输出的震荡频率稳定。
复位电路:复位电路是在单片机的RST 复位引脚上外接电容和电阻,就是实现了上电复位。
(二)LCD12864液晶显示电路
设计采用的是型号为AMPIRE128X64的液晶显示屏,有20个引脚,可以显示字母还可以显示字符和图形等各种信息。其中液晶显示屏的CS2、CS1左右半屏片选接口分别接单片机的P2.2、P2.1引脚;液晶屏数据/命令选择端口RS 连接单片机P2.4引脚;液晶屏读/写选择端口R/W 连接单片机P2.7引脚;液晶屏数据线DB0-DB7分别连接单片机P3.0-P3.7引脚;液晶屏使能信号E 接单片机P2.6引脚;液晶屏复位端RET,低电平有效,接单片机P2.3引脚。
(三)数码管显示电路
采用的是四位位共阳数码管,八位段选接口低电平有效,与单片机P0口通过总线方式连接。
四个位选接口,低电平有效,分别和P1.4、P1.5、P1.6和P1.7相连。(四)独立按键电路
四个独立按键分别代表上下左右,一端分别与单片机P1.0-P1.3引脚相连,另一端接地。当按键被按下时,则P1口会检测到低电平信号。因此,通过检测P1口相应端口是否为低电平,来判断按键是否被按下。
(五)蜂鸣器电路
蜂鸣器接单片机P2.5引脚,由于的工作电流较大,导致单片机的无法直接驱动蜂鸣器,因此利用放大电路来驱动蜂鸣器,即加一个三极管来驱动电流。
四、结论
本文主要设计了俄罗斯方块小游戏硬件电路部分,是基于proteus 仿真设计的,具有一定的实用价值,将来可以将系统移植到实际的硬件电路当中,还可以根据需要适当添加其他元素如音乐、图画等,会有更好的体验效果。
参考文献:
[1]郭璨,杨旭辉,张志昂.基于单片机的俄罗斯方块设计[J].时代农机,2018(9):227-228.
[2]马巧梅,张丽娜.基于C 语言的俄罗斯方块游戏的设计[J].微型电脑应用,2017,33(12):7-9.
[3]赵巧妮.基于Proteus 的俄罗斯方块电路的设计和仿真[J].微型电脑应用,2016,32(8):59-60.
[4]赵莉,薛彪,黄叶胜.基于ARM9的俄罗斯方块设计与实现[J].陇东学院学报,2017,28(3):11-14.
作者简介:
何自豪(2000年—),男,汉族,河北省邯郸市人,本科,就读于河北大学物理科学
与技术学院,所学专业:电子信息科学与技术。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论