該設(shè)計其實是一款經(jīng)典打磚塊游戲(小球反彈游戲),其中有涉及到有關(guān)小球滾動方面的設(shè)計,希望能給2017年全國電子大賽的朋友參考。該小球反彈游戲控制系統(tǒng)由主控邏輯、運動控制、VGA、Transfer、Brick等模塊以及多個Rom存儲模塊組成。小球運動控制模塊接受主控模塊提供的小球位置信息,判斷小球是否與上、左、右壁發(fā)生碰撞,或者與下面的擋板發(fā)生碰撞。綜合從Brick模塊傳入的碰撞信息,使得dx,dy中的一個或者兩個反向(與擋板的非鏡面反射除外),實現(xiàn)了球的反彈。在小球沒有碰撞到任何物體時,小球按照一定的步頻與步幅進行運動,步頻與步幅可以進行調(diào)節(jié),保證了小球運動方向與速度的可變性。具體有關(guān)FPAG控制小球運動介紹,詳見附件內(nèi)容設(shè)計說明。FPGA控制小球運動及VGA顯示系統(tǒng)設(shè)計框圖:
本設(shè)計由3人合作完成,用VHDL語言實現(xiàn),內(nèi)含實驗報告和源代碼。 游戲特點有: 不同難度級別、 計分功能、 生命值、 絢麗結(jié)束畫面、 磚塊形轉(zhuǎn)方便修改、 隨機發(fā)射速度、 擋板不同位置反射角不同、 小球速度、擋板寬度可變 通過FPGA實驗板和VGA測試。
FPGA控制小球運動及VGA顯示源碼截圖: