一.硬件方案
本设计采用STC89C52RC单片机作为系统的芯片,实现人机交互、娱乐等功能。选用LCD12864实现俄罗斯方块游戏界面、图形显示;选用独立按键实现游戏控制。本设计实现的基本功能是:用按键控制目标方块的变换与移动;消除一行并计分,方块堆满时结束游戏等俄罗斯方块的基本功能。硬件主要由51单片机+最小系统电路+按键电路+12864液晶显示电路设计而成。
二.设计功能
(1)主控芯片基于STC89C51/52(与AT89S51/52、AT89C51/52通用)单片机;
(2)采用LCD12864液晶显示屏;
(3)共有7个按键,除复位按键外,其余六个按键分别为:左移、右移、变形、下降、暂停、确定;
(4)设计有0~9个关卡,达到一定分数自动升级;
三.设计原理图
(1)原理图主要采用AD软件进行设计,如图:
(2)Protues仿真图如下:
四.软件设计
主程序源码
void main()
{LCD_initialize();LCD_clear();while(1){game_start_show();select_speed();game_initialize();//调用游戏初始化函数,初始化游戏所有变量以及在液晶屏上显示基本的信息Tetris_main();game_over_show(); }
}
//定时器0中断服务
void timer0() interrupt 1
{TH0=0x00;TL0=0x00;if(time0_reg<10){ time0_reg++;}else{time0_reg=0;if(pause_game_flag==0){game_execute();refurbish_display();}}
}
资料链接:https://pan.baidu.com/s/14YUHK_QJ7Vq1zE18MxBBOQ?pwd=lleb