赵巧妮
基于Proteus 的俄罗斯方块电路的设计和仿真
赵巧妮
基于AT89S52单片机实现俄罗斯方块游戏的设计,使用keilC集成环境进行软件的编程和调试,通过Proteus绘制仿真电路图,结合keil与Proteus来进行联合调试仿真,结果表明能实现游戏的正常运行。
AT89S52;俄罗斯方块;Proteus;仿真
俄罗斯方块是一款风靡全球的经典掌上游戏,最初于1984年6月由俄罗斯人阿列克谢·帕基特诺夫发明。它看似简单但却变化无穷,令人上瘾。本文拟用单片机结合Proteus仿真软件来设计一款俄罗斯方块游戏。
依据电路系统的键来控制方块的变换与移动,控制方块或下、或左、或右移动;达到消除一行或者多行的目的;消除一行并计分;消除多行额外奖励记分,方块堆满时结束游戏。
依据游戏功能说明,绘制出系统的框图,如图1所示:

图1 系统框图
包括单片机系统、按键电路、显示电路。
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口;……