|
貪吃蛇游戲機(jī),用的是洋桃家的板子
效果演示傳送門(mén):【零基礎(chǔ)項(xiàng)目】STM32貪吃蛇游戲機(jī)_嗶哩嗶哩_bilibili
單片機(jī)源程序如下:- /*********************************************************************************************
- 模板制作: 杜洋工作室/洋桃電子
- 出品:
- 程序名:
- 編寫(xiě)時(shí)間: 201年月日
- 硬件支持: STM32F103C8 外部晶振8MHz RCC函數(shù)設(shè)置主頻72MHz
- 修改日志:
- 1-
-
-
- 說(shuō)明:
- # 本模板加載了STM32F103內(nèi)部的RCC時(shí)鐘設(shè)置,并加入了利用滴答定時(shí)器的延時(shí)函數(shù)。
- # 可根據(jù)自己的需要增加或刪減。
- *********************************************************************************************/
- #include "stm32f10x.h" //STM32頭文件
- #include "sys.h"
- #include "delay.h"
- #include "led.h"
- #include "i2c.h"
- #include "oled0561.h"
- #include "rtc.h"
- #include "key.h"
- #include "lm75a.h"
- #include "touch_key.h"
- #include "snake.h"
- #include "food.h"
- #include "menu.h"
- int main (void){//主程序
- u8 buffer[3];
- delay_ms(100); //上電時(shí)等待其他器件就緒
- RCC_Configuration(); //時(shí)鐘設(shè)置
- LED_Init();//LED初始化
- RTC_Config(); //實(shí)時(shí)時(shí)鐘初始化
- I2C_Configuration();//I2C初始化
- KEY_Init();//按鍵初始化
- LM75A_GetTemp(buffer); //讀取LM75A的溫度數(shù)據(jù)
- OLED0561_Init(); //OLED初始化
- OLED_DISPLAY_LIT(100);//亮度設(shè)置
-
-
- while(1)
- {
- if(form==0)
- {
- UI();
- }
- if(form==1)
- {
- snake_body_move();
- snake_head_move();
- snake_die();
-
- food_creat();
- game_over();
- delay_ms(500);
- }
- if(form==2)
- {
- game_over();
- delay_s(2);
- form=0;
- health=1;
- OLED_DISPLAY_CLEAR();
- }
-
- }
- }
- //}
- /*
- 【變量定義】
- u32 a; //定義32位無(wú)符號(hào)變量a
- u16 a; //定義16位無(wú)符號(hào)變量a
- u8 a; //定義8位無(wú)符號(hào)變量a
- vu32 a; //定義易變的32位無(wú)符號(hào)變量a
- vu16 a; //定義易變的 16位無(wú)符號(hào)變量a
- vu8 a; //定義易變的 8位無(wú)符號(hào)變量a
- uc32 a; //定義只讀的32位無(wú)符號(hào)變量a
- uc16 a; //定義只讀 的16位無(wú)符號(hào)變量a
- uc8 a; //定義只讀 的8位無(wú)符號(hào)變量a
- #define ONE 1 //宏定義
- delay_us(1); //延時(shí)1微秒
- delay_ms(1); //延時(shí)1毫秒
- delay_s(1); //延時(shí)1秒
- */
復(fù)制代碼
程序下載:
基于STM32的貪吃蛇游戲機(jī).7z
(201.95 KB, 下載次數(shù): 35)
2021-5-31 00:34 上傳
點(diǎn)擊文件名下載附件
|
評(píng)分
-
查看全部評(píng)分
|