乒乓球游戏机EDA课程设计报告版本

上传人:cn****1 文档编号:488330060 上传时间:2023-09-06 格式:DOC 页数:14 大小:73.50KB
返回 下载 相关 举报
乒乓球游戏机EDA课程设计报告版本_第1页
第1页 / 共14页
乒乓球游戏机EDA课程设计报告版本_第2页
第2页 / 共14页
乒乓球游戏机EDA课程设计报告版本_第3页
第3页 / 共14页
乒乓球游戏机EDA课程设计报告版本_第4页
第4页 / 共14页
乒乓球游戏机EDA课程设计报告版本_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《乒乓球游戏机EDA课程设计报告版本》由会员分享,可在线阅读,更多相关《乒乓球游戏机EDA课程设计报告版本(14页珍藏版)》请在金锄头文库上搜索。

1、-目 录1 设计目的12 设计要求和任务12.1设计任务12.2设计要求13 总体设计思路及原理描述14 分层次方案设计及代码描述2 4.1控制模块的设计24.1.1 cornal模块分析24.1.2 cornal模块VHDL程序描述34.2送数据模块的设计74.2.1 ch41a模块分析74.2.2 ch41a模块VHDL程序描述74.3产生数码管片选信号模块的设计84.3.1 sel模块分析84.3.2 sel模块VHDL程序描述94.4 七段译码器模块的设计104.4.1 disp模块分析104.4.2 disp模块VHDL程序描述104.5 顶层原理图设计115 各模块的时序仿真图12

2、6 总结147 参考文献14. z.-乒乓游戏机1 设计目的掌握熟悉的使用Quartus II 9.1软件的原理图绘制,程序的编写,编译以及仿真。体会使用EDA综合过程中电路设计方法和设计思路的不同。掌握使用EDA工具设计乒乓游戏机的的设计思路和设计方法。2 设计要求和任务2.1设计任务设计一个乒乓球游戏机,该机模拟乒乓球比赛的基本过程和规则,并能自动裁判和几分。2.2设计要求 (1)甲乙双方各在不同的位置发球或击球。 (2)乒乓球的位置和移动方向由灯亮及依次点亮的方向决定,球移动的速度为0.1-0.5秒移动一位。 (3)11分为一局,甲乙双方都应设置各自的几分牌,任何一方先记满11分,该方胜

3、出。当记分牌清零后,重新开始。3 总体设计思路及原理描述由乒乓游戏机功能,用原理图作为顶层模块,再将底层划分成四个小模块来实现: (1)cornal模块:整个程序的核心,它实现了整个系统的全部逻辑功能; (2)ch41a模块:在数码的片选信号时,送出相应的数据; (3)sel模块:产生数码管的片选信号; (4)disp模块:7段译码器。 . z.-图3.1 结构层次图4 分层次方案设计及代码描述4.1控制模块的设计4.1.1 cornal模块分析a发球一、在围 1、b没有接到球,a加1分,将灯光清零000 00 000 2、b接到了球,则灯光为0 &【7位】二、在b方出界了 1、如果b没有接到

4、球,则a加分 2、如果b接到了球,则灯光为0 &【7位】b发球一、在围 1、a没有接到球,b加1分,并将灯光清零000 00 000 2、a接到了球,则灯光计分为【7位】& 0二、在a方出界了 1、a没有接到球,则b加分 2、a接到了球,则灯光计分为【7位】& 0af,aj,bf,bj分别为a方发球键和接球键,b方发球键和接球键,shift表示球所在的位置。图4.1 conal模块原理图4.1.2 cornal模块VHDL程序描述Library ieee;Use ieee.std_logic_1164.all;Use ieee.std_logic_unsigned.all;Entity cor

5、nal isPort(clr,af,aj,bf,bj,clk:in std_logic;Shift:out std_logic_vector(7 downto 0);Ah,al,bh,bl:out std_logic_vector(3 downto 0);Awin,bwin:out std_logic);End cornal;Architecture bahave of cornal isSignal amark,bmark:integer;Begin Process(clr,clk)Variable a,b:std_logic;Variable she:std_logic_vector(7

6、downto 0);Begin If clr=0 t hena:=0;b:=0;she:=”00000000”amark=0;bmark8 then if bj=0 then -b方过网击球 amark=amark+1; -a方加一分 a:=0; b:=0; she:=”00000000”; else she:=0&she(7 downto 1); -b方没有击球 end if;elsif she=0 then -球从b方出界 amark=amark+1; -a方加一分 a:=0; b:=0;else if bj=0 then -b方正常击球a:=0;b:=1;else she:=0&she(

7、7 downto 1); -b方没有击球end if;end if;elsif a=0 and b=1then -b方发球 if she16 and she/=0 then if aj=0 then bmark=bmark+1; a:=0; b:=0; she:=”00000000”; else she:=she(6 downto 0)&0;end if;elsif she=0 thenbmark=bmark+1;a:=0;b:=0;elseif aj=0then a:=1; b:=0;else she:=she(6 downto 0)&0;end if;end if;end if;end i

8、f;shifttmp1 then if ala=”1001” thenala:=”0000”;aha:=aha+1;tmp1:=tmp1+1;else ala:=ala+1; tmp1:=tmp1+1;end if;elsif bmarktmp2 then if bla=”1001” thenbla:=”0000”;bha:=bha+1;tmp2:=tmp2+1;else bla:=bla+1; tmp2:=tmp2+1;end if;end if;end if;al=ala;bl=bla;ah=aha;bh=bha;awin=t1;bwinqqqq=d3;End case;End proce

9、ss;End behave;4.3产生数码管片选信号模块的设计4.3.1 sel模块分析图4.3 sel模块分析及原理图4.3.2 sel模块VHDL程序描述Library ieee;Use ieee.std_logic_1164.all;Use ieee.std_logic_unsigned.all;Entity sel is Port(clk:in std_logic;Sell:out std_logic_vector(2 downto 0);End sel;Architecture behave of sel isBegin Process(clk) Variable tmp:std_logic_vector(2 downto 0);Begin If clkevent and clk=1 then If tmp=”000” then Tmp:=”001”; Elsif tmp=”001” then Tmp:=”100”;Elsif Tmp=”100” then Tmp:=”101”;Elsif tmp=”101” then Tmp:=”000”;End if;End if;Sell=tmp;End process;End behave;4.4 七段译码器模块的设计4.4.1 disp模块分析图4.4 dis

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号