资源简介
用单片机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
相关资源
- 单片机仿真软件proteus6.7免安装绿色版
- 基于SPCE061A单片机的图形液晶模块的驱
- 基于SPCE061A单片机汇编语实现的流水灯
- 基于SPCE061A单片机的图形液晶模块的驱
- STM32+TMC5160代码电路图.rar
- 物联网家居系统中基于单片机的多路
- 基于IAP15F2K61S2单片机的多路温度巡检
- 如何用单片机控制舵机及程序详细
- 单片机控制舵机电路图
- 基于MSP430单片机的实时多任务操作系
- 基于STM32F103C8单片机的晶联讯电子JL
- 广联达6.0写锁包,2020年11月最新
- 基于51单片机的交通信号灯程序
- 14284969_《STM32单片机应用与全案例实践
- GSM监控系统51单片机设计
- 精选单片机设计与制作30例
- 中颖单片机入门与实战
- 51单片机定时器/计数器的结构和原理
- MCS-51单片机定时器和计数器区别的理
- 基于32位单片机MC68HC376的高可靠性系统
- MC68HC08单片机程序设计速成
- PIC单片机人机接口模块4×4行列式
- PIC单片机人机接口模块4×4行列式
- AT89C51+ADC0808 PROTEUS仿真
- 基于51单片机的多通道数据采集范围控
- ADC0832ADC0809DAC0832三种芯片程序,c程序
- 数据采集系统——ADC0808的应用
- 基于51单片机的直流电机转速控制及显
- 单片机控制步进电机PMW的驱动与放大
- 单片机驱动4相步进电机proteus仿真
评论
共有 条评论