chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-07-23 08:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

編程邏輯器件FPGA以其開發(fā)周期短、成本低、功耗低、可靠性高等優(yōu)勢,廣泛應(yīng)用于通信、航空、醫(yī)療等領(lǐng)域,近年來在消費(fèi)電子領(lǐng)域中的應(yīng)用也日漸增加。為進(jìn)一步挖掘FPGA在家庭娛樂如游戲機(jī)開發(fā)與應(yīng)用中的巨大商機(jī),介紹了一款以Altera公司FPGA芯片為控制核心,附加少量外圍電路組成的乒乓球比賽游戲機(jī)。整個系統(tǒng)設(shè)計模塊劃分清晰:包括裁判端、選手端、控制端、顯示端及模擬乒乓球臺;功能齊全:包括發(fā)球權(quán)控制、犯規(guī)提示、局?jǐn)?shù)比分顯示等,模擬實際乒乓球比賽相似程度高。采用了VHDL語言編程實現(xiàn),在QuartusⅡ8.1集成環(huán)境下進(jìn)行了模擬仿真,結(jié)果表明在設(shè)定的比賽規(guī)則下,游戲機(jī)運(yùn)行正常,通過進(jìn)一步優(yōu)化可將其商品化,推入市場。

1 系統(tǒng)組成

乒乓球比賽游戲機(jī)的組成如圖1所示。比賽規(guī)則約定:五局三勝;11分一局;裁判發(fā)出比賽開始信號,觸發(fā)FPGA內(nèi)部隨機(jī)數(shù)發(fā)生器模塊產(chǎn)生首次發(fā)球權(quán)方;比賽進(jìn)行中,選手連續(xù)兩次獲得發(fā)球權(quán)后,發(fā)球權(quán)交予對方,如未獲發(fā)球權(quán)方發(fā)球,裁判端犯規(guī)音響電路鳴響;13個LED排列成行模擬乒乓球臺;點亮的LED模擬乒乓球,受FPGA控制從左到右或從右到左移動;比賽選手通過按鈕輸入模擬擊球信號,實現(xiàn)LED移位方向的控制;若發(fā)亮的LED運(yùn)動在球臺中點至對方終點之間時,對方未能及時按下?lián)羟虬粹o使其向相反方向移動,即失去一分。

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

2 功能模塊設(shè)計

圖1中,基于FPGA設(shè)計的控制端為整個系統(tǒng)的核心,其內(nèi)部主要由簡易隨機(jī)數(shù)發(fā)生器、發(fā)球權(quán)控制器、乒乓球位置控制器、甲乙方計分控制器、犯規(guī)音響控制器等模塊組成。整個控制端采用模塊化設(shè)計,先用VHDL語言編寫功能模塊,然后用頂層原理圖將各功能模塊連接起來。設(shè)計的難點在于協(xié)調(diào)各模塊工作,嚴(yán)格遵守各信號間時序關(guān)系。本系統(tǒng)采用1 kHz系統(tǒng)時鐘。

2.1 簡易隨機(jī)數(shù)發(fā)生器

比賽首次發(fā)球權(quán)由隨機(jī)數(shù)發(fā)生器產(chǎn)生的數(shù)據(jù)決定,其隨機(jī)性要求不嚴(yán),因此,采用非常簡單的模式產(chǎn)生,即一旦FPGA上電,系統(tǒng)時鐘百分頻產(chǎn)生一方波信號square,當(dāng)裁判閉合開始比賽開關(guān)產(chǎn)生start信號上升沿時,讀取此時square信號值作為隨機(jī)數(shù)發(fā)生器輸出randq。模塊仿真如圖2所示,結(jié)果滿足設(shè)計要求。此模塊設(shè)計時保證了square信號周期應(yīng)遠(yuǎn)大于start信號上升沿建立時間,保證隨機(jī)數(shù)據(jù)的正確讀取。

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

2.2 發(fā)球權(quán)控制器

發(fā)球權(quán)控制器的控制過程為:如果按下復(fù)位按鈕,發(fā)球權(quán)數(shù)碼管顯示8,否則,開始比賽開關(guān)閉合時,顯示隨機(jī)數(shù)發(fā)生器的值(0或1,0代表甲方、1代表乙方)。而在比賽中,為遵守發(fā)球權(quán)交換規(guī)則,設(shè)計甲乙雙方計分器總和信號sum_sc是不為0的偶數(shù)時(即計分總和最低位sum_sc0下降沿到來時),發(fā)球權(quán)數(shù)碼管顯示由0變?yōu)?或由1變?yōu)?。

此模塊設(shè)計中,發(fā)球權(quán)數(shù)碼管的信號控制受多個時鐘的控制,即開始比賽開關(guān)start和計分值sum_sc0信號,這在VHDL編程語言中無法用一個進(jìn)程實現(xiàn),必須將兩個信號組合成一個時鐘信號,并統(tǒng)一兩個時鐘的觸發(fā)沿。因此最佳時鐘觸發(fā)方式如圖3所示的fqq_en信號。為滿足這種時序要求,借助計分總和次低位sum_sc1信號設(shè)計entity sum_sc_mod2,由于start和sum_sc1的頻率都遠(yuǎn)低于系統(tǒng)時鐘信號clk頻率,則可借助clk高頻信號捕捉其邊沿產(chǎn)生新的時鐘信號fqq_en,并產(chǎn)生其計數(shù)值,仿真波形如圖4(a)所示。為保證發(fā)球權(quán)數(shù)碼管顯示正確,設(shè)計entitv led_fqq_ctl在fqq_en下降沿時,根據(jù)其計數(shù)值產(chǎn)生相應(yīng)的數(shù)碼管輸出信號led_fqq,仿真波形如圖4(b)所示。

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

發(fā)球權(quán)控制器的VHDL核心程序如下:

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

2.3 乒乓球位置控制、甲乙計分、犯規(guī)音響控制

乒乓球位置控制電路為FPGA控制端的核心,依據(jù)比賽規(guī)則,采用了Mealy型狀態(tài)機(jī)來實現(xiàn),大大降低了設(shè)計難度。狀態(tài)機(jī)共定義了7個狀態(tài),各狀態(tài)定義如表1所示,狀態(tài)轉(zhuǎn)換如圖5所示,轉(zhuǎn)換條件如表2所示,具體程序如下。

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

3 頂層模塊仿真測試

由于篇幅限制,本系統(tǒng)中的分頻器、譯碼器等常用模塊的設(shè)計就不再此贅述,最終頂層原理圖設(shè)計如圖6所示,仿真波形如圖7所示,分析波形可知,圖中開始比賽信號產(chǎn)生后,首次發(fā)球權(quán)方為乙方,甲方發(fā)球造成犯規(guī)音響電路鳴響,即speaker信號為高電平,然后乙方發(fā)球,乒乓球依次移位,甲方接球成功后乙方未接球成功,甲方得分,cnta信號為“0110000”,注意,此處輸出為驅(qū)動數(shù)碼管輸出信號,代表數(shù)字“1”。通過仿真可知,該系統(tǒng)設(shè)計滿足游戲機(jī)比賽規(guī)則要求。

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

基于VHDL語言和FPGA芯片實現(xiàn)乒乓球比賽游戲機(jī)的設(shè)計與仿真

4 結(jié)語

采用VHDL語言編程,基于FPGA成功設(shè)計了一款乒乓球比賽游戲機(jī),通過仿真驗證可知,結(jié)果滿足設(shè)計需求,系統(tǒng)具有發(fā)球權(quán)控制、自動計分、犯規(guī)提示等多種功能,能有效模擬實際乒乓球比賽。該系統(tǒng)進(jìn)一步改進(jìn)思路為:改用人體感應(yīng)傳感器來采集擊球信號,采用FPGA產(chǎn)生視頻信號傳送到電視機(jī)或監(jiān)視器,更直觀地展示乒乓球運(yùn)動軌跡,從而真正實現(xiàn)人機(jī)互動,優(yōu)化虛擬效果。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22050

    瀏覽量

    618589
  • 控制器
    +關(guān)注

    關(guān)注

    114

    文章

    17113

    瀏覽量

    184349
  • 電視機(jī)
    +關(guān)注

    關(guān)注

    7

    文章

    400

    瀏覽量

    44908
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    FPGA設(shè)計實例】用FPGA控制乒乓球比賽

    FPGA控制乒乓球比賽本次試驗實例將講解如何用FPGA控制乒乓球比賽,也就是如何
    發(fā)表于 03-09 09:32

    基于FPGA乒乓球比賽游戲機(jī)”的設(shè)計

    基于FPGA乒乓球比賽游戲機(jī)”的設(shè)計
    發(fā)表于 08-17 11:45

    有誰做過這個FPGA課程設(shè)計的?基于 FPGA乒乓球比賽游戲機(jī)

    設(shè)計要求:(1) 設(shè)計一個由甲、乙雙方參賽,有裁判的3人乒乓球游戲機(jī)。 (2) 用8個(或更多個)LED排成一條直線,以中點為界,兩邊各代表參賽雙方的位置,其中一只點亮的LED指示的當(dāng)前位置,點亮
    發(fā)表于 12-30 21:35

    【求助】FPGA乒乓球游戲機(jī)的設(shè)計

    1、使用乒乓球的雙方在不同位置發(fā)球或擊球;2、乒乓球的位置和移動方向由燈亮和依次亮的方向決定使用者根據(jù)的位置發(fā)出相應(yīng)動作;3、比賽用21分一局進(jìn)行。一方記滿21分獲勝。重新開局。;4
    發(fā)表于 12-25 12:28

    如何采用VHDLFPGA設(shè)計一款乒乓球比賽游戲機(jī)?

    采用VHDL語言編程,基于FPGA成功設(shè)計了一款乒乓球比賽游戲機(jī),通過
    發(fā)表于 05-06 07:08

    如何利用單片機(jī)實現(xiàn)乒乓球游戲的設(shè)計

    求代碼兄弟們一、任務(wù)利用單片機(jī)、LED、按鍵、數(shù)碼管等設(shè)計制作簡單的乒乓球游戲。用8 個LED表示,用兩個按鈕分別表示甲乙兩個球員的球拍。一方發(fā)球后,
    發(fā)表于 01-07 07:10

    模擬乒乓球比賽設(shè)計

    用EasyFPGA030開發(fā)套件,游戲電路是模擬乒乓球比賽,可供兩人游戲。甲乙各持一按鍵作為球拍,實驗板上一行16只發(fā)光二極管為
    發(fā)表于 11-02 17:02 ?112次下載

    基于FPGA乒乓游戲機(jī)設(shè)計

    本文使用FPGA芯片來模擬實際的乒乓球游戲。本設(shè)計是基于Altera公司的FPGA Cyclone II
    發(fā)表于 02-24 14:51 ?88次下載

    基于EasyFPGA030的模擬乒乓比賽設(shè)計

    用EasyFPGA030開發(fā)套件,游戲電路是模擬乒乓球比賽,可供兩人游戲。甲乙各持一按鍵作為球拍,實驗板上一行16只發(fā)光二極管為
    發(fā)表于 03-11 15:32 ?27次下載

    基于FPGA乒乓游戲機(jī)設(shè)計

    本文使用FPGA芯片來模擬實際的乒乓球游戲。本設(shè)計是基于Altera公司的FPGA Cyclone II
    發(fā)表于 07-17 18:08 ?56次下載

    乒乓球游戲機(jī)VHDL程序

    乒乓球游戲機(jī)VHDL程序,感興趣的小伙伴們可以瞧一瞧。
    發(fā)表于 11-11 15:51 ?13次下載

    使用STM32單片機(jī)實現(xiàn)乒乓球游戲的C語言和工程文件免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用STM32單片機(jī)實現(xiàn)乒乓球游戲的C語言和工程文件免費(fèi)下載。
    發(fā)表于 12-16 08:00 ?8次下載
    使用STM32單片<b class='flag-5'>機(jī)</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>乒乓球</b><b class='flag-5'>游戲</b>的C<b class='flag-5'>語言和</b>工程文件免費(fèi)下載

    使用FPGA實現(xiàn)乒乓球游戲的論文說明

     ball 是模擬乒乓球行進(jìn)路徑的發(fā)光管亮燈控制模塊,在游戲中,以一排發(fā)光管交替發(fā)光指示乒乓球的行進(jìn)路徑,其行進(jìn)的速度可由輸入的時鐘信號clk控制; board 是乒乓板接球控制模塊,
    發(fā)表于 11-18 17:18 ?17次下載
    使用<b class='flag-5'>FPGA</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>乒乓球</b><b class='flag-5'>游戲</b>的論文說明

    乒乓球游戲機(jī)Proteus仿真

    乒乓球游戲機(jī)Proteus仿真資料分享
    發(fā)表于 10-31 16:32 ?2次下載

    基于FPGA乒乓球比賽游戲機(jī)的設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于FPGA乒乓球比賽游戲機(jī)的設(shè)計.pdf》資料免費(fèi)下載
    發(fā)表于 10-20 10:31 ?2次下載
    基于<b class='flag-5'>FPGA</b><b class='flag-5'>乒乓球</b><b class='flag-5'>比賽</b><b class='flag-5'>游戲機(jī)</b>的設(shè)計