- #include "sys.h"
- #include "delay.h"
- #include "usart.h"
- #include "led.h"
- #include "lcd.h"
- #include "key.h"
- #include "touch.h"
- #include "tanchishe.h"
-
- int main(void)
- {
-
- u8 d,key,t=0,result=0,time=0,a=4,chumo1,begin_sta=0,r=1;
- u8 jz;
- Stm32_Clock_Init(336,8,2,7);
- delay_init(168);
- uart_init(84,115200);
- LED_Init();
- KEY_Init();
- LCD_Init();
- //jiaozun
- jz=TP_Init();
- if(jz==0)
- {
- TP_Adjust();
- jz=1;
- }
-
-
- tanchishe_init();
- lab:
- while(1)
- {
-
- chumo1 = chumo_scan() ;
- //LCD_ShowNum(30+8*4,120,chumo1,5,16);
- if(chumo1==1)
- {
-
- if(begin_sta==1)
- {
-
- begin_sta =0;
- }
- else
- {
- begin_sta=1;
- }
-
- if((result!=0)&&(chumo1==1))
- {
- r=0;
- }
- else
- r=1;
- }
- if(begin_sta==1)
- {
- //a++;
- //LCD_ShowNum(30+8*4,240,a,5,16);
- LCD_Fill(107,421,140,449,RED);
- d = snake.d1;
- key = KEY_Scan(0);
- if(key == 1||key == 2||key == 3||key == 4)
- {
- if((key == 1&&d==3)||(key == 2&&d==4)||(key == 3&&d==1)||(key == 4&&d==2))continue;
- else
- {
- d=key;
- snake.d1=key;
- turn[t][0]=snake.x1;
- turn[t][1]=snake.y1;
- turn[t][2]=key;
- t++;
- }
-
- }
- result = panduan();
- if(result!=0)
- {
- LCD_Fill(107,421,140,449,GREEN);
- if(r==1)
- {
-
- //begin_sta =0;
- goto lab;
- }
- else
- {
-
- a=4;t=0,result=0,time=0,a=4,begin_sta=0,r=1;//ÖØÖÃ
- tanchishe_init();
- goto lab;
-
- }
- }
- if(time ==snake.time2)
- {
- show(d);
- disappear(turn);
- time=0;
- LCD_ShowString(24+4*8+3*8+80,440,5*8,16,16,"sudu:");
- LCD_ShowNum(30+8*4+3*8+5*8+80,440,420-snake.time2*20,3,16);
- if(snake.len ==a)
- {
- snake.time2--;
- a=snake.len +2;
- if(snake.time2 <2)snake.time2=2;//×î¿ì40ms
- }
- LED0 =! LED0;
- }
- time++;
- //delay_ms(20);
-
-
-
- }
- else
- {
- LCD_Fill(107,421,140,449,GREEN);
- goto lab;
- }
- //LCD_ShowString(24,410,18*8,16,16,"fail!zhuang qiang");
- LED1=!LED1;
- delay_ms(20);
- }
-
- }
复制代码
代码下载:
贪吃蛇DIY基于stm32(添加触键).7z
(160.78 KB, 下载次数: 4)
|