新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于SOPC的乒乓球游戲設計

基于SOPC的乒乓球游戲設計

作者: 時間:2012-02-07 來源:網(wǎng)絡 收藏

摘要:在FPGA芯片內(nèi)部產(chǎn)生一個占空比可調(diào)的方波發(fā)生器,通過內(nèi)置對占空比進行控制。輸出兩路方波波形通過低通濾波器,得到幅度可控的直流信號用于控制示波器上X軸和Y軸的位置。預設小球軌跡從而對小球的拋射軌跡進行
關鍵詞:;占空比;FPGA;單片機

0 引言
FPGA(Field Programmable Gate Array),現(xiàn)場可編程門陣列。它是繼PAL、GAL、CPLD等可編程器件的基礎上進一步發(fā)展的成果。它作為專用集成電路(ASIC)領域中的一種半定制電路,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。作為一種可編程器件,F(xiàn)PGA與傳統(tǒng)的數(shù)字電路和門電路相比,它采用邏輯單元陣列的模式,內(nèi)部包含有可配置邏輯模塊、輸出輸入模塊和內(nèi)部連線三個部分。通過硬件描述語言(如VHDL語言)完成的電路,可以通過綜合與布局,快速燒錄至FPGA芯片上進行測試。
(System On Programmable Chip),可編程片上系統(tǒng)。它是用可編程邏輯技術把整個系統(tǒng)放到一塊硅片上,用于從事嵌入式系統(tǒng)的系統(tǒng)研究和電子測量處理等領域。SOPC是一種特殊的嵌入式系統(tǒng),它既是片上系統(tǒng)(SOC),即由單個芯片完成整個系統(tǒng)的主要邏輯功能,但它又不是簡單的SOC,也是可編程系統(tǒng),具有靈活的方式,可裁剪、可擴充、可升級,并具備軟硬件在系統(tǒng)可編程的功能。

1 玩法介紹
將雙通道示波器作為顯示屏。將兩路信號輸入示波器中,讓示波器工作在X/Y模式。
單片機實驗板上的兩個按鈕作為控制鍵分別用于左擊球和右擊球,當小球接近屏幕左邊時按下左擊球可將球擊回右側(cè),右側(cè)擊球亦然。小球可以按照一定的拋物線軌跡自動在屏幕上左右運動,連續(xù)按下兩次擊球鍵能夠擊出高拋球,使球飛行距離增高。當球接觸到屏幕邊沿而未按下?lián)羟蜴I則被判定為輸球。

2 實驗器件
Cyclone III(EP3C10E144C8)FPGA實驗板,單片機P89V51實驗板(含按鍵顯示屏等),電阻導線若干。
Altera公司生產(chǎn)的Cyclone III FPGA芯片具有低功耗、低成本和高性能等特點。其體系結(jié)構(gòu)包括高達120K的垂直排列邏輯單元(LE)、以9-Kbit(M9K)模塊構(gòu)成的4Mbits嵌入式存儲器、200個18x18的嵌入式乘法器。利用TSMC的65nm低功耗(LP)工藝,CycloneⅢFPGA芯片提供豐富的邏輯、存儲器和DSP功能,功耗更低。在可編程邏輯發(fā)展歷史中,Cyclone III FPGA比其他低成本FPGA系列能夠支持實現(xiàn)更多的應用。

3 實驗原理及模塊詳解
用方波發(fā)生器生成兩個占空比可變的方波,方波經(jīng)過低通濾波器生成兩個通道的直流信號用于控制小球在X軸和Y軸的位置。通過改變方波占空比從而改變直流信號的值。用SOPC與單片機通訊實現(xiàn)按鍵對小球運動的控制。
3.1 方波發(fā)生器生成原理

本文引用地址:http://2s4d.com/article/172167.htm

a.jpg

VHDL語言編寫的方波產(chǎn)生tennis模塊代碼的關鍵部分:
b.jpg
代碼分析:
每當輸入時鐘clk_in變化時進程被觸發(fā)。在進程中,每一個時鐘上升沿計數(shù)器變量c0dutytmp加一,在一個周期內(nèi),計數(shù)器小于預設值時輸出低電平,大于預設值時輸出高電平。在設計中,我選用的預設值為8位,所以在0到255之間給定任意一個數(shù)作為輸入就可以設置它的占空比。占空比c.jpg。而通過SOPC builder生成的SOPC控制c0duty便可以間接控制其占空比。以上代碼完成了一條通道的控制,另一個數(shù)據(jù)通道方法類似。


上一頁 1 2 3 下一頁

評論


相關推薦

技術專區(qū)

關閉