该设计其实是一款经典打砖块游戏(小球反弹游戏),其中有涉及到有关小球滚动方面的设计,希望能给2017年全国电子大赛的朋友参考。该小球反弹游戏控制系统由主控逻辑、运动控制、VGA、Transfer、Brick等模块以及多个Rom存储模块组成。小球运动控制模块接受主控模块提供的小球位置信息,判断小球是否与上、左、右壁发生碰撞,或者与下面的挡板发生碰撞。综合从Brick模块传入的碰撞信息,使得dx,dy中的一个或者两个反向(与挡板的非镜面反射除外),实现了球的反弹。在小球没有碰撞到任何物体时,小球按照一定的步频与步幅进行运动,步频与步幅可以进行调节,保证了小球运动方向与速度的可变性。具体有关FPAG控制小球运动介绍,详见附件内容设计说明。FPGA控制小球运动及VGA显示系统设计框图:
本设计由3人合作完成,用VHDL语言实现,内含实验报告和源代码。 游戏特点有: 不同难度级别、 计分功能、 生命值、 绚丽结束画面、 砖块形转方便修改、 随机发射速度、 挡板不同位置反射角不同、 小球速度、挡板宽度可变 通过FPGA实验板和VGA测试。
FPGA控制小球运动及VGA显示源码截图: