基于VHDL的乒乓球设计

基于VHDL的乒乓球设计

ID:46894695

大小:713.00 KB

页数:19页

时间:2019-11-29

基于VHDL的乒乓球设计_第1页
基于VHDL的乒乓球设计_第2页
基于VHDL的乒乓球设计_第3页
基于VHDL的乒乓球设计_第4页
基于VHDL的乒乓球设计_第5页
资源描述:

《基于VHDL的乒乓球设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、课程报告设计课题:乒乓球游戏的FPGA实现姓名:黄琳吴胜辉许晓明专业:电子信息工程学号:111510801811151060471115106052日期2013年11月25日——2013年12月1日指导教师:傅文渊华侨大学信息科学与工程学院电子工程系18目录1项目名称、内容与要求………………………………………02页1.1项目名称…………………………………………………02页1.2设计内容…………………………………………………02页1.3具体要求…………………………………………………02页2系统整体架构……………………

2、……………………………02页2.1设计原理…………………………………………………02页2.2设计思路…………………………………………………03页3系统设计………………………………………………………03页3.1乒乓球游戏机实体的设计………………………………03页3.2状态机编程实现………………………………………04页3.3构造体的设计……………………………………………07页3.4发挥部分………………………………………………08页3.5最后的整体模块和管脚锁定……………………………10页3.6编译和波形仿真………………

3、…………………………10页3.7分工说明…………………………………………………15页4结束语…………………………………………………………15页参考书目…………………………………………………………16页18一、项目名称、内容与要求1.1项目名称乒乓球游戏的FPGA实现1.2设计内容设计一个由甲乙双方参赛,二人乒乓球游戏机。用8个LED排成一条直线,以中点为界,两边各代表参赛双方的位置,其中一只点亮的LED指示球的当前位置,点亮的LED依次从左到右,或从右到左。当“球”(点亮的那只LED)运动到某方的最后一位时,参赛者

4、应能果断地按下位于自己一方的按钮开关,即表示启动球拍击球,若击中,则球向相反方向运动,则对方得一分,同时蜂鸣器自动响起。设置自动记分电路,甲乙双方各用一位数码管进行记分显示,每计满11分为1局。1.3具体要求(1)使用乒乓球游戏机的双方在不同位置发球或击球。(2)乒乓球的位置和移动方向由灯亮和依次亮的方向决定。使用者根据球的位置发出相应的动作。(3)比赛用11分为一局来进行,双方设置各自的记分牌,任意一方先记满11分就获胜此局。当记分牌清零后,开始新的一局比赛。(4)(发挥部分)完善以上设计,使之更加符合乒乓球运动

5、的各项规则。二、系统整体架构2.1设计原理两人乒乓球游戏机是用8个发光二极管代表乒乓球台,中间两个发光二极管兼做乒乓球网,用点亮的发光二极管按一定方向移动来表示球的运动。在游戏机的两侧各设置发球和击球开关,甲乙双方按乒乓球比赛规则来操作开关。当甲方按动发球开关时,靠近甲方的第一个发光二极管亮,然后发光二极管由甲方向乙方依次点亮,代表乒乓球的移动。当球过网后按照设计者规定的球位乙方就可以击球。若乙方提前击球或者未击到球,则甲方得分。然后重新发球进行比赛,知道一方记分达到11分为止,记分清零,重新开始新一局比赛。182

6、.2设计思路根据系统设计的要求,乒乓球比赛游戏机的电路原理框图如下:三、系统设计3.1乒乓球游戏机实体的设计设计该乒乓球游戏机的输入/输出端口。首先考虑输入端口,一般都应该设置一个异步置位端口reset,用于在系统不正常时回到初始状态;一个发球输入端serve,逻辑‘1’代表开始发球的指令;两个击球输入端hit1和hit2,逻辑‘1’分别表示甲击球和乙击球;一个开始游戏按钮startbutton,处于逻辑‘1’表示可以游戏;还得有一个时钟输入端口clk。其次考虑输出端口,芯片应该有8个输出端口来控制8个发光二极管,

7、输出逻辑‘1’即输出一个高电平,可以使发光二极管点亮;另外,要直观地表示双方的得分,就得用到数码管,每方用到1个,可以表示0~11的数字。另外,在发挥的部分,我们还设计了一个模块来显示双方的局数以及最后的赢家。实体的设计如下:libraryieee;18useieee.std_logic_1164.all;useieee.std_logic_arith.all;useieee.std_logic_unsigned.all;--引用必要的库函数和包集合entitycompeteisport(reset:instd_l

8、ogic;clk_1:instd_logic;startbutton:instd_logic;--开始游戏输入端口serve:instd_logic_vector(1downto0);--发球输入端口hit1,hit2:instd_logic;--甲和乙的击球输入端口light:outstd_logic_vector(1to8);--控制8个发光二极管的输出

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。