资源简介
半年前发过一个版本,有一些人看了后找我交流一些问题,从而使我再次看程序的时候发现以前的有很多毛病。
于是重写了代码,加了游戏地图选择,开机动画,加了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个文件信息
相关资源
- 51单片机音乐播放器的设计,在LCD12
- 基于51单片机串口温湿度采集和传输仿
- 汇编语言指令大全(详解版).pdf
- 51单片机门禁上位机,下位机全部工程
- 基于51单片机接入阿里云物联网.pdf
- 51单片机自学笔记
- 基于51单片机的智能窗户设计
- 普中科技51单片机开发板的实验程序资
- 基于51单片机的水箱、水塔水位检测系
- 基于51单片机的数字电压表.rar
- 汇编程序测控51单片机超声波测距16
- 多波形发生器设计
- 51单片机课程设计及报告
- LED点阵广告牌课程设计C51单片机含报
- 基于qt实现的贪吃蛇游戏
- COMP51编译器
- 安卓贪吃蛇小游戏
- 基于51单片机的指南针
- 51单片机太阳追踪系统
- 多功能小车 51单片机控制 超声测距
- AT89C51单片机程序以及原理图
- 基于ARM STM32F429的红外遥控贪吃蛇游戏
- 51单片机初级实验篇
- 智能寻路贪吃蛇 AI
- 51单片机时钟电路LCD1602显示完整源码
- 基于51单片机的光控模块 含原理图、
- qt贪吃蛇源代码
- HOT51单片机开发板详尽资料
- 基于AT89C51单片机的水位检测计的设计
- 51单片机应用从零开始[课件]
评论
共有 条评论