面向卓越計(jì)劃的彈球碰撞游戲開(kāi)發(fā)_第1頁(yè)
面向卓越計(jì)劃的彈球碰撞游戲開(kāi)發(fā)_第2頁(yè)
面向卓越計(jì)劃的彈球碰撞游戲開(kāi)發(fā)_第3頁(yè)
面向卓越計(jì)劃的彈球碰撞游戲開(kāi)發(fā)_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

面向卓越計(jì)劃的彈球碰撞游戲開(kāi)發(fā)

1基于eda-sopc的設(shè)置源動(dòng)物實(shí)驗(yàn)設(shè)計(jì)近年來(lái),南通大學(xué)城率先對(duì)“優(yōu)秀工程人才培養(yǎng)計(jì)劃”(以下簡(jiǎn)稱(chēng)“優(yōu)秀計(jì)劃”)進(jìn)行了評(píng)估,并購(gòu)買(mǎi)了大量先進(jìn)的實(shí)驗(yàn)設(shè)備。其中,北京達(dá)盛EL-SOPC4000實(shí)驗(yàn)箱外圍擴(kuò)展資源豐富,集EDA和SOPC開(kāi)發(fā)為一體,實(shí)驗(yàn)開(kāi)發(fā)具有極高靈活性和開(kāi)放性。鑒于“卓越計(jì)劃”人才培養(yǎng)目標(biāo),考慮到我國(guó)適用的軟件工程技術(shù)人才總量短缺情況,結(jié)合教育部在《關(guān)于加強(qiáng)高等學(xué)校本科教學(xué)工作提高教學(xué)質(zhì)量的若干意見(jiàn)》中提出的“開(kāi)出一批新的綜合性、設(shè)計(jì)性實(shí)驗(yàn)”的要求,本人基于EL-SOPC4000實(shí)驗(yàn)箱開(kāi)發(fā)了適合本科生創(chuàng)新型實(shí)驗(yàn)項(xiàng)目——基于EDA/SOPC的“彈球碰撞游戲”,并編制了完善的實(shí)驗(yàn)指導(dǎo)與操作規(guī)程。該實(shí)驗(yàn)項(xiàng)目選自日常生活中的趣味游戲,涵蓋電子技術(shù)中七段數(shù)碼管顯示、CRT彩色顯示器圖形顯示、按鍵防抖動(dòng)、液晶顯示等實(shí)驗(yàn)原理,采用開(kāi)放式的教學(xué)模式和實(shí)驗(yàn)方法引發(fā)學(xué)生學(xué)習(xí)興趣、培養(yǎng)學(xué)生獨(dú)立工作能力、協(xié)作精神、職業(yè)素質(zhì)和創(chuàng)新意識(shí)。結(jié)果表明,此類(lèi)實(shí)驗(yàn)的開(kāi)設(shè)不僅大大增強(qiáng)科研設(shè)備的利用率,而且對(duì)創(chuàng)新本科實(shí)驗(yàn)教學(xué)、提高學(xué)生專(zhuān)業(yè)技能有很大幫助。2創(chuàng)新實(shí)驗(yàn)項(xiàng)目的設(shè)計(jì)2.1游戲中的圖形《游戲開(kāi)始時(shí),玩家可設(shè)定游戲初始難度。隨后,在CRT彩色顯示器上顯示相應(yīng)難度圖形(自行設(shè)計(jì)),同時(shí)出現(xiàn)一個(gè)速度均勻但方向隨機(jī)的小球(顏色自定義)。玩家可通過(guò)控制彈板左、右移動(dòng)以接住小球,若彈板未能接到小球,當(dāng)小球落到下邊界時(shí)游戲結(jié)束;若彈板接住小球,小球則反射出去,若小球在移動(dòng)過(guò)程中與圖形相碰撞,則碰撞區(qū)域圖形消失并賦予玩家相應(yīng)得分。當(dāng)整個(gè)圖形完全被“消滅”后,游戲難度增加一級(jí)。游戲過(guò)程中,彈板長(zhǎng)度及小球速度能直接影響玩家接球的準(zhǔn)確率,因此,可考慮設(shè)計(jì)相應(yīng)游戲規(guī)則(彈板加長(zhǎng)、縮短和小球增速、減速等)提高游戲難度,增加游戲的趣味性。2.2游戲操作時(shí)的提示音(1)注重視覺(jué)效果,建議圖形為彩色顯示,要求能從圖形復(fù)雜度區(qū)分游戲難度;(2)注重聲音效果,例如小球碰撞時(shí)有碰撞聲、玩家游戲升級(jí)時(shí)有慶?;蚬恼埔粜А⑼婕沂r(shí)有“再玩一次”等提示音;(3)應(yīng)具有相應(yīng)功能按鍵(開(kāi)機(jī)、復(fù)位、暫停等)和玩家游戲按鍵(設(shè)定初始難度、彈板向左移動(dòng)、彈板向右移動(dòng)等);(4)游戲時(shí)玩家設(shè)定的難度、接球次數(shù)及成績(jī)要求能直觀(guān)顯示。2.3中小型crt彩色顯示器顯示原理學(xué)生通過(guò)本實(shí)驗(yàn)項(xiàng)目達(dá)到以下要求:(1)了解EDA技術(shù)自頂向下的設(shè)計(jì)方法,熟練掌握QuartusII6.0軟件使用和調(diào)試方法;(2)了解普通CRT彩色顯示器顯示原理、LCM驅(qū)動(dòng)及顯示原理、數(shù)碼管動(dòng)態(tài)掃描原理,掌握FPGA驅(qū)動(dòng)VGA接口顯示圖像、FPGA驅(qū)動(dòng)LCM液晶顯示、按鍵防抖動(dòng)等方法;(3)基于FPGA實(shí)現(xiàn)彈球碰撞游戲開(kāi)發(fā),并設(shè)置一定的難度和玩法,以極富趣味性的課題鍛煉學(xué)生軟件編程能力。2.4電電子實(shí)驗(yàn)平臺(tái)總時(shí)間安排為1周,計(jì)學(xué)時(shí)為30學(xué)時(shí)。實(shí)驗(yàn)平臺(tái)搭建在“電工電子實(shí)驗(yàn)中心EDA實(shí)驗(yàn)室”。各實(shí)驗(yàn)項(xiàng)目還包括了很多個(gè)小項(xiàng),具體實(shí)驗(yàn)項(xiàng)目見(jiàn)表1。3系統(tǒng)程序設(shè)計(jì)基于EDA/SOPC的“彈球碰撞游戲”由外圍硬件和內(nèi)置程序構(gòu)成,其中外圍硬件包括游戲手柄、CRT彩色顯示器、晶振、液晶顯示模塊、電源模塊、蜂鳴器、數(shù)碼管(其中,晶振、液晶顯示模塊、電源模塊、蜂鳴器、數(shù)碼管由實(shí)驗(yàn)箱提供)。內(nèi)置程序通過(guò)硬件描述語(yǔ)言(VHDL,Verilog)規(guī)范化設(shè)計(jì),實(shí)現(xiàn)游戲界面設(shè)計(jì)、畫(huà)面更新、聲音播放、彈板控制等功能,包括VGA接口驅(qū)動(dòng)、分頻模塊、彈球控制模塊、語(yǔ)音控制模塊、防抖動(dòng)模塊、數(shù)據(jù)顯示模塊,由QuartusII6.0軟件編譯通過(guò)。系統(tǒng)結(jié)構(gòu)圖如圖1所示。學(xué)生可按照分頻模塊、游戲手柄及防抖動(dòng)程序模塊、屏幕顯示模塊、彈球控制模塊、聲音控制模塊、數(shù)據(jù)顯示模塊依次進(jìn)行開(kāi)發(fā)設(shè)計(jì)。3.1分頻長(zhǎng)度的確定實(shí)驗(yàn)箱提供50MHz頻率,為使計(jì)數(shù)模塊、LCM驅(qū)動(dòng)模塊等正常工作,需要根據(jù)所需頻率進(jìn)行分頻,分頻長(zhǎng)度由公式d(28)50MHz/fxu計(jì)算得到,其中d為分頻長(zhǎng)度,fxu為所需頻率)。分頻程序打包后的模塊如圖2所示,圖3是4分頻后的仿真波形。3.2游戲中防動(dòng)力程序設(shè)置兩個(gè)功能按鍵(復(fù)位、暫停)及兩個(gè)游戲按鍵(擋板左移、右移),四個(gè)按鍵均采用1K電阻將5V電壓分壓后接至實(shí)驗(yàn)箱FPGA芯片的I/O口,命名分別為RESTAR(復(fù)位)、PAUSE(暫停)、LOUT(擋板左移)、ROUT(擋板右移),游戲手柄電路如圖4所示。游戲中,為使彈板在按鍵按下后能穩(wěn)定地移動(dòng),需要設(shè)計(jì)防抖動(dòng)程序,即用一個(gè)較大的寄存器寄存按鍵的狀態(tài),根據(jù)按位取反來(lái)觀(guān)察狀態(tài)是否發(fā)生變化,程序中用up、down、state三個(gè)變量分別表示“彈起”、“按下”、“持續(xù)按鍵”。在彈板移動(dòng)防抖動(dòng)設(shè)計(jì)中,彈板移動(dòng)頻率設(shè)定為468Hz,分頻長(zhǎng)度變量為MHz106666468/50(28)。3.3fpga控制crt閱讀器接口設(shè)計(jì)CRT彩色顯示器具有可視角度大、色彩還原度高、響應(yīng)時(shí)間短,價(jià)格較LCD顯示器便宜等優(yōu)點(diǎn),本實(shí)驗(yàn)選取CRT純平顯示屏作為游戲圖形顯示。根據(jù)CRT顯示屏從上至下、從左至右一行一行的圖形顯示原理,需要以合適的間隔產(chǎn)生一個(gè)短脈沖,產(chǎn)生水平掃描同步信號(hào)HS和垂直掃描同步信號(hào)VS。對(duì)于標(biāo)準(zhǔn)的800×600VGA視頻信號(hào),VS頻率為60HZ(每秒60個(gè)脈沖),HS同步頻率為31.5KHZ(每秒31500個(gè)脈沖)。因現(xiàn)在大部分的VGA監(jiān)視器基于多同步,可支持非標(biāo)準(zhǔn)的同步頻率,不必產(chǎn)生精確的60HZ和31.5KHZ頻率。具體程序如下:其中CounterX從0計(jì)到767,CounterY從0計(jì)到511。通過(guò)使用D觸發(fā)器來(lái)產(chǎn)生HS和VS信號(hào),從而避免輸出毛刺信號(hào)。為使顯示器檢測(cè)到HS和VS信號(hào),脈沖必須足夠?qū)?。本?shí)驗(yàn)HS脈沖寬度為16個(gè)時(shí)鐘周期(0.64uf06dS),VS脈沖寬度為768個(gè)時(shí)鐘周期(30uf06dS)。為了顯示特定圖形,可在顯示器相應(yīng)位置驅(qū)動(dòng)R、G、B信號(hào)即可,位置信息由X、Y計(jì)數(shù)器定義。FPGA控制CRT顯示器顯示圖形必須用到VGA接口驅(qū)動(dòng),接口示意圖如圖7所示。圖7中,VGA接口中引腳1、2、3分別為為紅(R),綠(G),藍(lán)(B)三色輸入信號(hào),由于R、G、B3個(gè)引腳正常工作電壓為0.7V,而FPGA接口電壓為3.3V,因此FPGA的I/O口與VGA的R、G、B引腳連接時(shí)需分別串聯(lián)1個(gè)270uf057電阻分壓,電阻分壓后在R、G、B端電壓為3.3*75/(270+75)=0.72V。引腳13、14分別為HS和VS,與FPGA的HS和VS兩個(gè)數(shù)字信號(hào)連接。6,7,8,10這4個(gè)引腳均接地。3.4碰撞時(shí)的操作碰撞判定:取小球四個(gè)邊框的中點(diǎn),分別由X1、X2、Y1、Y2表示。如果在重畫(huà)物體(邊框或擋板)的時(shí)候畫(huà)到了這4個(gè)關(guān)鍵點(diǎn)中任意一點(diǎn),就判定有碰撞發(fā)生。當(dāng)碰撞發(fā)生時(shí),關(guān)鍵點(diǎn)被賦值為1,根據(jù)碰撞位置在所畫(huà)到的點(diǎn)那一側(cè)判斷出小球的移動(dòng)方向。速度控制:(1)可以通過(guò)手動(dòng)控制按鍵加減速;(2)程序控制,既在同一輪游戲中連續(xù)接到10個(gè)球后小球自動(dòng)加速,來(lái)增加游戲的難度和趣味性。3.5alwell@蝦國(guó)為增加游戲的音效,在小球發(fā)生碰撞時(shí),通過(guò)控制蜂鳴器激勵(lì)信號(hào)的頻率和持續(xù)時(shí)間實(shí)現(xiàn)聲音的產(chǎn)生。程序中,speaker表示蜂鳴器激勵(lì)信號(hào),碰撞發(fā)生時(shí)刻令speaker=1,碰撞結(jié)束后立刻令speaker=0,采用語(yǔ)句“always@(posedgeclk)kaiguan1<={kaiguan1[1:0],kaiguan}”來(lái)實(shí)現(xiàn)。移位暫存語(yǔ)句控制開(kāi)關(guān)的狀態(tài),用(kaiguan1^kaiguan1)來(lái)確定碰撞的到來(lái)和結(jié)束2個(gè)狀態(tài),令speaker發(fā)生翻轉(zhuǎn),從而控制聲音的產(chǎn)生,聲音控制模塊仿真波形圖如8所示。游戲升級(jí)時(shí)有慶?;蚬恼埔粜?、玩家失敗時(shí)有“再玩一次”等提示音可采用語(yǔ)音芯片實(shí)現(xiàn)。3.6并行傳輸方式選擇小球當(dāng)前速度和玩家游戲得分采用實(shí)驗(yàn)箱自帶的中文液晶顯示模塊C12832-19B分兩行顯示,控制芯片選用中文字型矩陣LCD控制/驅(qū)動(dòng)器ST7920。令PSB腳接高電平,再由指令位(DLFLAG)選擇8-BIT接口,選擇操作模式為8位并行傳輸方式,主控制系統(tǒng)將配合(RS,RW,E,DB0..DB7)來(lái)完成傳輸動(dòng)作;RS(CS)并行時(shí)為寄存器選擇,0:指令寄存器;1:數(shù)據(jù)寄存器;R/W(SID):并行時(shí)為讀寫(xiě)控制,0:寫(xiě);1讀;E(SCLK):并行時(shí)為讀寫(xiě)數(shù)據(jù)起始。實(shí)驗(yàn)時(shí),將實(shí)驗(yàn)箱上E-PLAY-CPU部分8位撥碼開(kāi)關(guān)K7全部打到ON狀進(jìn)入并行傳輸方式。E、R/W、RS、PSB分別與底板的IO5--IO8,用導(dǎo)線(xiàn)相連。游戲當(dāng)前難度等級(jí)可采用數(shù)碼管顯示,為節(jié)省功耗、節(jié)省FPGAI/O口數(shù)量,將多位數(shù)碼管數(shù)據(jù)線(xiàn)(s~g

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論