APP下载

基于Proteus 的俄罗斯方块电路的设计和仿真

2016-12-21赵巧妮

微型电脑应用 2016年8期
关键词:方块流程图液晶

赵巧妮

基于Proteus 的俄罗斯方块电路的设计和仿真

赵巧妮

基于AT89S52单片机实现俄罗斯方块游戏的设计,使用keilC集成环境进行软件的编程和调试,通过Proteus绘制仿真电路图,结合keil与Proteus来进行联合调试仿真,结果表明能实现游戏的正常运行。

AT89S52;俄罗斯方块;Proteus;仿真

0 引言

俄罗斯方块是一款风靡全球的经典掌上游戏,最初于1984年6月由俄罗斯人阿列克谢·帕基特诺夫发明。它看似简单但却变化无穷,令人上瘾。本文拟用单片机结合Proteus仿真软件来设计一款俄罗斯方块游戏。

1 功能说明

依据电路系统的键来控制方块的变换与移动,控制方块或下、或左、或右移动;达到消除一行或者多行的目的;消除一行并计分;消除多行额外奖励记分,方块堆满时结束游戏。

2 系统框图

依据游戏功能说明,绘制出系统的框图,如图1所示:

图1 系统框图

包括单片机系统、按键电路、显示电路。

3 硬件电路绘制

3.1 最小系统电路

单片机最小保证系统能正常工作的最小电路,包括复位电路和时钟电路[1]。如图2所示:

图2 最小系统电路

复位电路由R1、C4和按键1构成,按键1为手动复位,R1与C4构成自动复位,复位信号为高电平有效。

3.2 液晶电路

液晶电路用于显示方块的运动状况,包括HD61202液晶显示控制驱动器和JM12864J液晶显示器,HD61202液晶显示控制驱动器是一种带有驱动输出的图形液晶显示控制器[2,3]。如图3所示:

图3 液晶电路

液晶显示器的数据、指令选择信号RS端接单片机P3.2口;读写选择信号R/W端接单片机P3.1口;DB0~DB7分别接单片机的P2.0~P2.7口;芯片1、芯片2的片选分别接单片机的P3.4、P3.3口;复位端RST、背光正电源LEDA接+5V;液晶驱动电压VEE、背光负电源LEDK接地。

3.3 按键电路

采用了4个按键,分别与单片机的 P1.0、P3.5、P3.6、P3.7口相连,分别对应旋转、左移、下、右移,如图4所示:

图4 按键电路

旋转按键用于控制形状逆时针旋转;左移键用于控制方块左移动一格;右移键用于控制方块右移动一格;下降键用于控制方块快速下降。

4 软件设计

软件采用KEIL C51集成环境来编写程序程,程序的编写流程图包括绘图工作流程图、按键按下的流程图、主流程图等。绘图流程图如图5所示:

图5 绘图工作流程图

5 系统仿真

5.1 Proteus软件介绍

Proteus软件是来自英国Labcenter electronics公司的EDA工具软件。电路仿真是交互互动的,针对微处理器的应用,可以直接在基于原理图的虚拟原型上编程,实现软件源码级的实时调试[4,5]。

5.2 Proteus与Keil联调

1.用Proteus软件,根据俄罗斯方块电路原理图,画出仿真图。

2.用Keil编写程序并调试完毕无误后,准备将Proteus仿真电路图与Keil联调。

3.单击Keil软件的“Project菜单/Options for Target”选项或者点击工具栏的“option for target”按钮,弹出窗口,点击“Debug”按钮,页面[6-7]如图6所示:

图6 Target窗口

在出现的对话框里在右栏上部的下拉菜单里选中“Proteus VSM Monitor一51 Driver”。并且还要点击一下“Use”前面表明选中的小圆点。

再点击“Setting”按钮,设置通信接口,在“Host”后面添上“127.0.0.1”,在“Port”后面添加“8000”。设置好的情形如图5(b)所示,点击“OK”按钮即可。最后将工程编译,进入调试状态,并运行。

4.Proteus的设置

打开“尝试”文件,鼠标左键点击菜单“Debug”,选中“use romotedebuger monitor”,如图7所示:

图7 Debug窗口

此后,便可实现KeilC与Proteus连接调试。

5.3 仿真结果

经Proteus仿真结果如图8所示:

图8 仿真结果

可见液晶屏幕上可显示方块的下降速度、游戏得分情况以及下一次要出现的方块形状,可以表明此俄罗斯方块游戏能正常运行。

6 总结

利用单片机AT89S52来设计俄罗斯方块游戏,结合proteus仿真软件,实现了俄罗斯方块游戏系统的预期功能,有一定的趣味性和学习性。

[1] 王瑾.虚拟仿真技术在单片机课程教学中的应用电子设计工程[J],2016.1:45-47.

[2] 吴文通. 基于Keil及Proteus的继电控制系统功能仿真与检测. 电力系统保护与控制[J]2015.3:150-154.

[3] 张玲. 基于Proteus的数字电压表的设计与仿真, 自动化与仪器仪表[J]. 2016.2:221-222.

[4] 陈建林.基于Proteus的数字密码锁的仿真设计[J]. 2009.80:44-49.

[5] 钟蔚. 点阵式LED滚动汉字显示屏的Proteus仿真设计[J] .2008.24:106-107.

[6] 汪宁.Proteus软件的单片机仿真方法[J], 山东轻工业学院学报. 2007.3:24-25.

[7] 魏鲁原. 基于Proteus的单片机虚拟实验室的构建[J].电子世界,2016.2:187-189.

Design and Simulation of Tetris Circuit Based on Proteus

Zhao Qiaoni
(1.South West Jiaotong University, Chengdu 610031, China; 2.Hunan Railway Professional Technology College, Zhuzhou 412001, China)

The tetris is designed by AT89S52,which uses keil C integrated environment for software programming and debugging. Draw circuit simulation by Proteus. It combines keil with Proteus to simulate for joint commissioning. The results shows that the game can be realized.

AT89S52; Tetris; Proteus Simulation

TP319

A

1007-757X(2016)08-0059-02

2016.04.26)

赵巧妮(1982-),女,西南交通大学四川成都,湖南铁道职业技术学院,讲师,硕士,研究方向:电路设计,株洲,412001

猜你喜欢

方块流程图液晶
有多少个方块
不可压液晶方程组的Serrin解
不一样的方块桥
《液晶与显示》征稿简则
谜题方块
专利申请审批流程图
液晶与显示2015年第30卷第1期 目录
宁海县村级权力清单36条
液晶与显示2014年第29卷第2期 目录
《天津医药》稿件处理流程图