资源简介

半年前发过一个版本,有一些人看了后找我交流一些问题,从而使我再次看程序的时候发现以前的有很多毛病。 于是重写了代码,加了游戏地图选择,开机动画,加了protues仿真,弄了许多的优化。 这里面有我做51单片机+12864液晶的贪吃蛇游戏机的全部详细资料。 代码注释详尽,思路清晰。 仿真和实物都有做过,保证游戏没有重大BUG。 响应OPEN精神0资源分发出来。 主要包含 1. 带字库和不带字库12864液晶的基本操作以及动画显示。涉及到得资料和软件都放里面了。 2. 51单片机菜单的实现,贪吃蛇游戏的实现以及protues仿真。 最后,如果你看这个东西的时候发现有错误或者哪个地方有更好的实现方法,希望告诉我·· 湖北工业大学 08电气2班 何求知 QQ:381286393

资源截图

代码片段和文件信息

#include <12864.h>

void delay_ms(unsigned int z)
{
unsigned int ij;
for(i=z;i>0;i--)
for(j=110;j>0;j--);
}

void initial_lcd()

cs1=0; cs2=0;
write_lcd_com(0x3e);
write_lcd_com(0xb8);
write_lcd_com(0xc0);
write_lcd_com(0x40);
write_lcd_com(0x3f);
}

void clear_lcd()
{
unsigned char ij;
cs1=0;cs2=0;

for(i=0;i<8;i++)
{
set_lcd_xy(i0);
for(j=0;j<64;j++)
write_lcd_dat(0x00);
}
}

void write_lcd_com(unsigned char com)
{
unsigned char he;
do
{
he=check_lcd_busy();
}
while(he==0x80);

lcd_di=0;
lcd_rw=0;
P1=com;
lcd_en=1;
lcd_en=0;
}

void write_lcd_dat(unsigned char dat)
{
unsigned char he;
do
{
he=check_lcd_busy();
}
while(he==0x80);

lcd_di=1;
lcd_rw=0;
P1=dat;
lcd_en=1;
lcd_en=0;
}

unsigned char check_lcd_busy()
{
unsigned char he;
P1=0xff;
lcd_di=0;
lcd_rw=1;
lcd_en=1;
he=P1;
lcd_en=0;
he=he&(0x80);
// return(he);
return(0x00);
}

unsigned char read_lcd_dat() 
{
unsigned char save;
unsigned char he;
do
{
he=check_lcd_busy();
}
while(he==0x80);

lcd_di=1;
lcd_rw=1;
lcd_en=1;
save=P1;
lcd_en=0;
return(save);
}

void set_lcd_xy(unsigned char xunsigned char y)
{
write_lcd_com(0xb8+x);
write_lcd_com(0x40+y);
}

void draw_lcd_point(unsigned char xunsigned char yunsigned char dat)
{
unsigned char he;
set_lcd_xy(xy);
he=read_lcd_dat();
he=read_lcd_dat();
set_lcd_xy(xy);
write_lcd_dat(dat+he);
}

void write_lcd_hanzi(unsigned char xunsigned char yunsigned char code *dat)
{
unsigned char i=0j=0;
for(i=0;i<2;i++)
{
set_lcd_xy(x+iy);
for(j=0;j<16;j++) 
write_lcd_dat(dat[16*i+j]);
}
}

void write_lcd_shuzi(unsigned char xunsigned char yunsigned char code *dat)
{
unsigned char i=0j=0;
for(i=0;i<2;i++)
{
set_lcd_xy(x+iy);
for(j=0;j<8;j++) 
write_lcd_dat(dat[8*i+j]);
}
}

void draw_lcd_picture(unsigned char code *dat)
{
unsigned char ij;
for(i=0;i<8;i++)
{
cs1=0;
cs2=1;
set_lcd_xy(i0);
for(j=0;j<64;j++) 
write_lcd_dat(~dat[i*128+j]);

cs1=1;
cs2=0; 
set_lcd_xy(i0);
for(j=64;j<128;j++) 
write_lcd_dat(~dat[i*128+j]);
}
}

   

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      86974  2011-05-26 15:03  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\Last Loaded 贪吃蛇.DBK

     文件       2258  2011-06-08 07:43  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\12864.c

     文件        925  2011-05-26 09:25  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\12864.h

     文件       6366  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\12864.LST

     文件      10274  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\12864.OBJ

     文件        389  2011-04-19 22:29  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\elsfk_game.c

     文件         21  2011-04-19 22:23  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\elsfk_game.h

     文件       1660  2011-05-22 11:44  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\elsfk_game.LST

     文件       2747  2011-05-22 11:44  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\elsfk_game.OBJ

     文件         19  2011-06-08 07:49  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\ExtDll.iex

     文件       4915  2011-06-08 07:50  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\menu.c

     文件        180  2011-05-22 12:20  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\menu.h

     文件      13324  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\menu.LST

     文件      19492  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\menu.OBJ

     文件      12384  2011-05-22 16:55  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\resource.h

     文件       6376  2009-05-07 14:37  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\STARTUP.A51

     文件      14048  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\STARTUP.LST

     文件        749  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\STARTUP.OBJ

     文件      13305  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\tcs_game.c

     文件          0  2011-05-30 08:02  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\tcs_game.h

     文件      31667  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\tcs_game.LST

     文件      33624  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\tcs_game.OBJ

     文件      16299  2011-05-30 07:57  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\tcs_resource.h

     文件      52647  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\youxiji

     文件      28068  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\youxiji.hex

     文件         90  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\youxiji.lnp

     文件      53734  2011-06-08 07:47  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\youxiji.M51

     文件       1387  2011-06-08 07:50  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\youxiji.plg

     文件      61730  2011-06-08 07:50  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\youxiji.uvopt

     文件      13749  2011-05-25 08:00  51单片机+12864液晶贪吃蛇游戏机(完美版)\仿真(液晶用不带字库)\tanchishe\youxiji.uvproj

............此处省略261个文件信息

评论

共有 条评论