当前位置:首页 > 单片机学习笔记 > 正文

单片机12864液晶屏显示俄罗斯方块七种形状思路方法

        俄罗斯方块地图大小为10*20个点,每个方块占用4*4大小的点,在液晶屏上如何显示原始的七种形状呢,首先要创建一个10*20大小的缓存区,每个字节可以代表八个点,一行10个点使用两个字节表示,20行就是40个字节。首先把4*4大小的方块数据写进缓存区,然后在写一个屏幕显示函数,逐位判断缓存区中的数据,如果某一位为1然后就显示出来,为0就不显示。

       如果在12864上显示,一个点看起来会很小,要自己写一个,一点转四点的算法,就是一个点放大四倍成为四个点,具体实现思路每个人都会有不同,这里不说了,以方块J为例,4*4=16个点用两个字节表示,由低到高。如图:

俄罗斯方块形状1

以下是七种形状及其旋转顺序

俄罗斯方块七种形状

 

下面是取过模的代码

//7种方块形状的点阵数据,4*4大小,每种4个形态,两个字节代表一种方块形态。

uchar code Tetris[56]= {

      0x20,0x62,0x40,0x07,0x30,0x22,0x00,0x17,//J形

      0x20,0x32,0x00,0x47,0x60,0x22,0x10,0x07,//L形

      0x40,0x26,0x30,0x06,0x40,0x26,0x30,0x06,//S形  

      0x60,0x03,0x20,0x46,0x60,0x03,0x20,0x46,//Z形

      0x70,0x02,0x20,0x26,0x20,0x07,0x20,0x23,//T形

      0x22,0x22,0xf0,0x00,0x22,0x22,0xf0,0x00,//I形

      0x60,0x06,0x60,0x06,0x60,0x06,0x60,0x06,//O形

};

标签:
上一篇:

报歉!评论已关闭。