聚豐項目 > 基于STM32的打地鼠游戲設(shè)計
本作品是在stm32開發(fā)板上開發(fā)了我們常見得一款游戲——打地鼠,用了一塊7寸的電容觸摸屏作為顯示和操作界面,用STM32作為主控平臺,并在游戲中加入了各種音效,可以作為非常有趣味的一個學(xué)習(xí)項目。
1413909
1413909
團隊成員
薛海瑞 學(xué)生
本作品主要包括的硬件主要有STM32開發(fā)板,MP3音頻播放模塊,7寸帶觸摸功能的液晶屏,分別負責(zé)任務(wù)調(diào)度及控制,音頻解碼及播放,界面顯示及人機交互。下面分別進行介紹:
1.STM32主控板
主控版采用的芯片型號為STM32F401,使用高性能的ARM? Cortex?-M3 32位的RISC內(nèi)核,工作頻率為72MHz,內(nèi)置高速存儲器(高達128K字節(jié)的閃存和20K字節(jié)的SRAM),豐富的增強I/O端口和聯(lián)接到兩條APB總線的外設(shè)。所有型號的器件都包含2個12位的ADC、3個通用16位定時器和1個PWM定時器,還包含標(biāo)準(zhǔn)和先進的通信接口:多達2個I2C接口和SPI接口、3個USART接口、一個USB接口和一個CAN接口。
這里我們用到了stm32的spi接口與音頻模塊進行通信,單片機先讀取SD卡中的mp3音頻文件,然后通過 SPI 口向 VS1053音頻模塊不停的輸入音頻數(shù)據(jù), 它就會自動幫我們解碼了,然后從輸出通道輸出游戲的背景音樂。
主控芯片原理圖如下:
2.音頻解碼模塊
解碼芯片用的是VS1053,VS1053 是繼 VS1003 后荷蘭 VLSI 公司出品的又一款高性能解碼芯片。該芯片可以實現(xiàn)MP3/OGG/WMA/FLAC/WAV/AAC/MIDI 等音頻格式的解碼,同時還可以支持 ADPCM/OGG 等 格式的編碼,性能相對以往的 VS1003 提升不少。VS1053 擁有一個高性能的 DSP 處理器核 VS_DSP,16K 的指令 RAM,0.5K 的數(shù)據(jù) RAM,通過 SPI 控制,具有 8 個可用的通用 IO 口和 一個串口,芯片內(nèi)部還帶了一個可變采樣率的立體聲 ADC(支持咪頭/咪頭+線路/2 線路)、一 個高性能立體聲 DAC 及音頻耳機放大器。
VS1053 通過 SPI 接口來接受輸入的音頻數(shù)據(jù)流,它可以是一個系統(tǒng)的從機,也可以作為獨 立的主機。這里我們只把它當(dāng)成從機使用。
電路原理圖如下:
3.7寸液晶串口屏
本作品的顯示界面用了一塊7寸的HMI串口液晶屏,這種串口屏具有界面設(shè)計簡單,交互性好,使用方便的特點,且它使用usart進行與主控版進行通信,便于控制部分與顯示部分獨立進行調(diào)試,也便于通信協(xié)議的制定,本作品便是利用這一優(yōu)點進行了設(shè)計。
界面設(shè)計如下圖所示:
本作品的軟件部分主要分兩部分,一部分即為主控這邊的音頻文件讀取與播放并且與串口屏的通信,另一部分即為串口屏圖形界面的設(shè)計,所以下面分兩部分進行介紹。
1.stm32主控程序說明
stm32先初始化相應(yīng)的系統(tǒng)時鐘,spi通信端口及usart通信口,然后根據(jù)串口屏發(fā)來的命令播放相應(yīng)的背景音樂,串口屏依據(jù)不同的情況發(fā)送不同的命令到單片機,使其切換不同的音效。
流程圖如下:
2.串口屏界面設(shè)計
界面設(shè)計時主要結(jié)合了串口屏的特點,充分利用了串口屏實現(xiàn)各種控件的便利性,再結(jié)合屏幕要實現(xiàn)的人機交互的具體功能,比如游戲中背景圖片的切換,游戲效果的展現(xiàn)等,按如下流程設(shè)計了一套游戲界面。
luckypp: jzsdvjssandfjf
回復(fù)
lml9910: 怎樣聯(lián)系您呢?想進一步咨詢合作
回復(fù)
mjin545: 游戲里面用的什么開發(fā)語言?
回復(fù)
電子一小時: 厲害
回復(fù)
snollp: 不錯,厲害
回復(fù)
鑫朗動漫: 我做兒童游戲機的,請聯(lián)系我QQ765078860.英雄有用武之地。
回復(fù)
歐陽佳展: 哈哈,這個用的不是正點原子的開發(fā)板嗎
回復(fù)
zts329547875: HMI串口液晶屏,貴不貴呀
回復(fù)
蘇眉12: 可以看一下程序嗎
回復(fù)
微風(fēng)涼: 怎么聯(lián)系你呢?
回復(fù)
末等先生: 你好 可以聯(lián)系嘛
回復(fù)