//戏,上传代码拥有全部的设计思路以及大部分函数主体
//=================================================================
// 宏定义按键
//=================================================================
#define Key_Up 1
#define Key_Down 4
#define Key_Left 2
#define Key_Right 3
#define uchar unsigned char
//=================================================================
// 使用结构体定义变量使程序的名称更加的清楚
//=================================================================
struct
{
uchar X;
uchar Y;
uchar Yes;
}Food; //食物结构体
#define SNAKE_Max_Long 20 //最大长度
struct
{
uchar X[SNAKE_Max_Long];
uchar Y[SNAKE_Max_Long];
uchar Long;
uchar Life;
uchar Score; //蛇的分数
uchar Level; //蛇的等级
}Snake; //蛇结构体
uchar Key_V_temp=0; //取出上次按键值
uchar Key_Value=0;
static int l=0;
static uint16 KEY_Init[3]={0,0,0};
static uint16 KEY_BASE[3]={0,0,0};
score[20]={"0","10","20","30","40","50","60","70","80","90","100","110","120","130","140","150","160","170","180","190"};
int level[20]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};
static const byte Channels[] = {13,14,15}; /* Contents for the device control register */
static word MMA_7260_OutV[3];
static byte SumChan;
static byte OutFlg;
void MMA_7260_Init_3(void)
{
OutFlg = FALSE; /* No measured value */
/* ATD0CTL4: SMP2=0,SMP1=0,SMP0=0,PRS4=0,PRS3=0,PRS2=1,PRS1=0,PRS0=1 */
ATD0CTL4 = 5; /* Set sample time and prescaler */
/* ATD0CTL3: DJM=0,S8C=0,S4C=0,S2C=0,S1C=1,FIFO=0,FRZ1=0,FRZ0=0 */
ATD0CTL3 = 8; /* Set ATD control register 3 */
/* ATD0CTL0: ??=0,??=0,??=0,??=0,WRAP3=1,WRAP2=1,WRAP1=1,WRAP0=1 */
ATD0CTL0 = 15; /* Set wrap around */
/* ATD0CTL1: ETRIGSEL=0,SRES1=1,SRES0=0,SMP_DIS=1,ETRIGCH3=1,ETRIGCH2=1,ETRIGCH1=1,ETRIGCH0=1 */
ATD0CTL1 = 95; /* Set resolution and discharge */
/* ATD0CTL2: ??=0,AFFC=1,ICLKSTP=0,ETRIGLE=0,ETRIGP=0,ETRIGE=0,ASCIE=0,ACMPIE=0 */
ATD0CTL2 = 64; /* Set ATD control register 2 */
}
//-----------------------------------------------------
static void MMA_7260_Measur
基于Freescale、三轴加速度传感器、LCD的贪食蛇游戏设计 来自淘豆网www.taodocs.com转载请标明出处.