资源简介

使用TI的msp430f149单片机在LCD12864上实现了贪吃蛇的游戏

资源截图

代码片段和文件信息


#include “msp430x14x.h“
#include   //包含随机数


//液晶引脚定义
#define E_1 P4OUT|=BIT2
#define E_0 P4OUT&=~BIT2

#define RW_1 P4OUT|=BIT1
#define RW_0 P4OUT&=~BIT1

#define RS_1 P4OUT|=BIT0
#define RS_0 P4OUT&=~BIT0

#define uchar unsigned char 
#define uint unsigned int

//按键引脚定义
#define key_state_0 0
#define key_state_1 1
#define key_state_2 2
unsigned char key_state[4]={00};

uchar zi[]={0xd30xce0xcf0xb70xbd0xe10xca0xf8};//游戏结束
uchar fen[]={0xb50xc30xb70xd6};//得分
void init_Keyboard(void);

//液晶初始化
void check_BF();
void lcdinit();
void img_init();
void write_cmd(uchar cmd);
void check_BF();
void write_data(uchar dat);
void img_Off(void);
void img_On(void);
void Clear_img(void);
void displaychn(uchar Xuchar puchar q);



//一个点的显示清楚和读取按键
void Dispoint(unsigned char Yunsigned char X);
void Clrpoint(unsigned char Yunsigned char X);
unsigned char check_point(unsigned char Yunsigned char X);


void delay_us(uint a);
void delay_ms(uint a);
uchar read_key(uchar auchar key);



//蛇的方向
#define TO_RIGHT 0X00
#define TO_DOWN 0X01
#define TO_LEFT 0X02
#define TO_UP 0x03

//记录蛇的数组
typedef struct
{
  uchar direction;//方向
  uchar cnt;//此方向前进的的点数
}node;

node aa[20];//蛇的节数

struct SNAKE
{
  uchar Head_X;//舌头坐标
  uchar Head_Y;
  uchar Tail_X;//蛇尾的坐标
  uchar Tail_Y;
  uchar Direction;//移动方向
  uint Dot_Cnt;//蛇身长度
  
  uchar tail_direction;//一定方向
  uint tail_length;//蛇的长度
  
  uchar Next_X;//目标点
  uchar Next_Y;
}Snake_Data;

uchar i_head=0;
uchar i_tail=0;
uchar popo=0;

//蛇相关函数
void Snake_Init(uchar xuchar y);
void move(void );
void point_move(uchar direction);








void main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;
  uchar i=0jm=0n=1;
  delay_ms(20);
  lcdinit();
  Clear_img();
  init_Keyboard();
  img_init();
  img_On();
  j=5;
  while(j)
  {
    if(read_key(0P3IN&0x02))
    {
      n++;
      m++;
      n=n%2;
      m=m%2;
      write_cmd(0x30);
      displaychn(0x920xa10xf0+m);
      displaychn(0x8a0xa10xf0+n);
    }
    else if(read_key(1P3IN&0x08))
    {
      if(m==1)
      {
        j=0;
      }
      if(m==0)
      {
        int p=5;
        lcdinit();
        displaychn(0x80zi[0]zi[1]);//游
        displaychn(0x81zi[2]zi[3]);//戏
        displaychn(0x820xa10xc3);//:
        displaychn(0x830xcc0xb0);//贪
        displaychn(0x840xb30xd4);//吃
        displaychn(0x850xc90xdf);//蛇
        
        displaychn(0x900xd70xf7);//作
        displaychn(0x910xd50xdf);//者
        displaychn(0x920xa10xc3);//:
        displaychn(0x930xd70xd3);//子
        displaychn(0x940xd20xb9);//夜
        
        displaychn(0x9d0xa10xf1);
        displaychn(0x9e0xcd0xcb);//退
        displaychn(0x9f0xb30xf6);//出
        
        while(p)
        {
          if(read_key(1P3IN&0x08))
          {
            p=0;
            lcdin

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

     文件      32517  2012-01-04 09:29  贪吃蛇游戏(msp430单片机12864液晶)\Debug\Exe\贪吃蛇.d43

     文件       9404  2011-11-24 22:08  贪吃蛇游戏(msp430单片机12864液晶)\Debug\Exe\贪吃蛇.txt

     文件      90659  2011-11-24 22:08  贪吃蛇游戏(msp430单片机12864液晶)\Debug\Obj\main.r43

     文件        155  2012-01-04 09:28  贪吃蛇游戏(msp430单片机12864液晶)\Debug\Obj\贪吃蛇.pbd

     文件      11498  2011-11-24 22:08  贪吃蛇游戏(msp430单片机12864液晶)\main.c

     文件       2115  2012-01-04 09:31  贪吃蛇游戏(msp430单片机12864液晶)\settings\贪吃蛇.cspy.bat

     文件       5208  2012-01-04 09:31  贪吃蛇游戏(msp430单片机12864液晶)\settings\贪吃蛇.dbgdt

     文件       1251  2012-01-04 09:31  贪吃蛇游戏(msp430单片机12864液晶)\settings\贪吃蛇.dni

     文件       2782  2012-01-04 09:31  贪吃蛇游戏(msp430单片机12864液晶)\settings\贪吃蛇.wsdt

     文件       2888  2012-01-04 09:31  贪吃蛇游戏(msp430单片机12864液晶)\贪吃蛇.dep

     文件      17879  2012-01-04 09:29  贪吃蛇游戏(msp430单片机12864液晶)\贪吃蛇.ewd

     文件      47704  2012-01-04 09:29  贪吃蛇游戏(msp430单片机12864液晶)\贪吃蛇.ewp

     文件        178  2011-11-23 09:08  贪吃蛇游戏(msp430单片机12864液晶)\贪吃蛇.eww

     目录          0  2012-05-14 16:15  贪吃蛇游戏(msp430单片机12864液晶)\Debug\Exe

     目录          0  2011-11-23 09:03  贪吃蛇游戏(msp430单片机12864液晶)\Debug\List

     目录          0  2012-05-14 16:15  贪吃蛇游戏(msp430单片机12864液晶)\Debug\Obj

     目录          0  2012-05-14 16:15  贪吃蛇游戏(msp430单片机12864液晶)\Debug

     目录          0  2012-05-14 16:15  贪吃蛇游戏(msp430单片机12864液晶)\settings

     目录          0  2012-05-14 16:15  贪吃蛇游戏(msp430单片机12864液晶)

----------- ---------  ---------- -----  ----

               224238                    19


评论

共有 条评论