资源简介
用单片机c51编写的坦克大战,在proteus仿真通过,有坦克大战游戏的基本功能,只有一关的游戏地图,可以另行绘制其他关的地图。程序大约24KB左右,需要外部扩展程序区才能实现。但是程序编写时考虑到移植性的问题,所以方便移植到其他嵌入式系统中,像ARM中。

代码片段和文件信息
#include “reg51.h“
#include“lcd12864.h“
#include
sbit P1_row1 = P1 ^ 0;
sbit P1_row2 = P1 ^ 1;
sbit P1_col1 = P1 ^ 2;
sbit P1_col2 = P1 ^ 3;
sbit P2_row1 = P1 ^ 4;
sbit P2_row2 = P1 ^ 5;
sbit P2_col1 = P1 ^ 6;
sbit P2_col2 = P1 ^ 7;
#define Up 1 //定义上下左右方向
#define Right 2
#define Down 3
#define Left 4
#define Up_Left 1 //定义炮弹炸毁效果4个方向(但是由于炮弹的非对称性导致比如“上左“与“左上“坐标计算有区别)
#define Up_Right 2
#define Down_Left 3
#define Down_Right 4
#define Left_Up 5
#define Left_Down 6
#define Right_Up 7
#define Right_Down 8
#define Steel 1 //定义障碍物属性
#define Brick 2
#define Prefect 1 //定义基地状态
#define Destroy 2
#define Tank_Count 2 //坦克数量
#define Barrier_Count 8 //障碍物数量
#define Computer 1 //坦克的阵营
#define Human 2
uint8 code Human_Tank1_Up[8] ={0xFF0xFF0x7C0x7F0x7F0x7C0xFF0xFF}; //玩家模型1的上下左右的贴图
uint8 code Human_Tank1_Right[8] ={0xC30xFF0xFF0xFF0xFF0xFF0xDB0xDB};
uint8 code Human_Tank1_Down[8] ={0xFF0xFF0x3E0xFE0xFE0x3E0xFF0xFF};
uint8 code Human_Tank1_Left[8] ={0xDB0xDB0xFF0xFF0xFF0xFF0xFF0xC3};
uint8 code Human_Tank2_Up[8] ={0xFF0xCC0x780x3F0x3F0x780xCC0xFF}; //玩家模型2的上下左右的贴图
uint8 code Human_Tank2_Right[8] ={0xC30xE70xBD0xBD0xFF0xDB0x990x99};
uint8 code Human_Tank2_Down[8] ={0xFF0x330x1E0xFC0xFC0x1E0x330xFF};
uint8 code Human_Tank2_Left[8] ={0x990x990xDB0xFF0xBD0xBD0xE70xC3};
uint8 code Human_Tank3_Up[8] ={0xFF0xFC0x700x7F0x7F0x700xFC0xFF}; //玩家模型3的上下左右的贴图
uint8 code Human_Tank3_Right[8] ={0xC30xFF0xFF0xFF0xDB0xDB0x990x99};
uint8 code Human_Tank3_Down[8] ={0xFF0x3F0x0E0xFE0xFE0x0E0x3F0xFF};
uint8 code Human_Tank3_Left[8] ={0x990x990xDB0xDB0xFF0xFF0xFF0xC3};
uint8 code Computer_Tank1_Up[8] ={0xFF0xFC0xF80x430x430xF80xFC0xFF}; //电脑模型1的上下左右的贴图
uint8 code Computer_Tank1_Right[8] ={0xE70xFF0xE70xE70xE70xC30x990x99};
uint8 code Computer_Tank1_Down[8] ={0xFF0x3F0x1F0xC20xC20x1F0x3F0xFF};
uint8 code Computer_Tank1_Left[8] ={0x990x990xC30xE70xE70xE70xFF0xE7};
uint8 code Computer_Tank2_Up[8] ={0xFF0x620x300xDF0xDF0x300x620xFF}; //电脑模型2的上下左右的贴图
uint8 code Computer_Tank2_Right[8] ={0x990xDB0xE70xBD0x990x990xDB0x99};
uint8 code Computer_Tank2_Down[8] ={0xFF0x460x0C0xFB0xFB0x0C0x460xFF};
uint8 code Computer_Tank2_Left[8] ={0x990xDB0x990x990xBD0xE70xDB0x99};
uint8 code Computer_Tank3_Up[8] ={0xE70x3C0xC60xF30xF30xC60x3C0xE7}; //电脑模型3的上下左右的贴图
uint8 code Computer_Tank3_Right[8] ={0xBD0xBD0xDB0x5A0x420xE70xBD0x99};
uint8 code Computer_Tank3_Down[8] ={0xE70x3C0x630xCF0xCF0x630x3C0xE7};
uint8 code Computer_Tank3_Left[8] ={0x990xBD0xE70x420x5A0xDB0xBD0xBD};
uint8 code Prefect_Home[8]={0xE70xFF0x990x810xC30x660x3C0x18}; //正常基地的
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 158073 2009-07-30 12:19 坦克大战\Last Loaded Phone Game P87C51RD.DBK
文件 175124 2009-10-02 14:21 坦克大战\Last Loaded tank.DBK
文件 2036 2009-09-25 13:52 坦克大战\lcd12864.h
文件 131129 2009-10-02 15:10 坦克大战\main.c
文件 303473 2009-10-02 15:45 坦克大战\main.LST
文件 101522 2009-10-02 15:45 坦克大战\main.OBJ
文件 1028 2009-09-19 12:41 坦克大战\Phone Game P87C51RD.PWI
文件 5115 2002-04-16 15:32 坦克大战\STARTUP.A51
文件 11665 2009-10-02 15:45 坦克大战\STARTUP.LST
文件 749 2009-10-02 15:45 坦克大战\STARTUP.OBJ
文件 15744 2009-09-22 11:28 坦克大战\t2
文件 38 2009-09-22 11:28 坦克大战\t2.lnp
文件 40145 2009-09-22 11:28 坦克大战\t2.M51
文件 1622 2009-10-02 14:39 坦克大战\t2.Opt
文件 869 2009-09-22 11:29 坦克大战\t2.plg
文件 2040 2009-10-02 14:21 坦克大战\t2.Uv2
文件 1620 2009-10-02 14:21 坦克大战\t2_Opt.Bak
文件 2041 2009-10-02 11:28 坦克大战\t2_Uv2.Bak
文件 55537 2009-10-02 15:45 坦克大战\tank
文件 175124 2009-10-02 16:04 坦克大战\tank.DSN
文件 69060 2009-10-02 15:45 坦克大战\tank.hex
文件 56 2009-10-02 15:45 坦克大战\tank.lnp
文件 148507 2009-10-02 15:45 坦克大战\tank.M51
文件 583 2009-10-02 16:04 坦克大战\tank.plg
文件 1364 2009-10-02 16:04 坦克大战\tank.PWI
目录 0 2009-10-02 16:20 坦克大战
----------- --------- ---------- ----- ----
1404264 26
相关资源
- STC8951系列单片机中方指南
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 51单片机PWM程序,占空比、周期可调整
- 单片机和adc0809数字电压表
- PIC单片机完成的电子密码锁
- 单片机、ADC0808809设计简易数字电压表
- 51单片机多功能自行车测速仪
- 单片机做的6位时分秒数字钟
- 单片机电子时钟 闹钟 日历
- proteus仿真 AT89C51输出各种波形
- 音乐代码转换软件 单片机编程时用
- 单片机课程设计 篮球计分器
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 单片机与温度传感器DS18B20的程序设计
- 51单片机基于protues的几个仿真实例
- 基于52单片机的直流电压测量
- 38k单片机红外发送代码、keil
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51单片机控制舵机程序
- 武汉理工大学 单片机课程设计 16*16点
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- 浙江工业大学2005-2006学年单片机习题
- 单片机与PC机串口通讯仿真
- 毕业设计 单片机 对讲机 protues仿真
评论
共有 条评论