欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载
     

    《EDA技术及应用》课程设计-乒乓球游戏机.doc

    • 资源ID:5091378       资源大小:165.50KB        全文页数:18页
    • 资源格式: DOC        下载积分:4
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要4
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《EDA技术及应用》课程设计-乒乓球游戏机.doc

    EDA技术及应用课程设计(实习)报告题目 乒乓游戏机 姓 名:学 号:专 业:班 级:指导教师:职 称:电子工程学院目录1 引言62 设计的目的63 乒乓游戏机的功能63.1 乒乓游戏机设计思路73.2 乒乓球各模块的设计73.3.1 控制模块的设计73.3.2 送数据模块的设计133.3.3 产生数码管片选信号模块的设计143.3.4 7段译码器模块的设计154 系统的波形仿真175 乒乓游戏机顶层电路图186 硬件测试及引脚锁定187 设计心得与体会18参考文献20乒乓游戏机1 引言乒乓球运动是一项受大众非常喜爱的运动,它是一项集健身性,竞技性和娱乐性为一体的运动。乒乓球是一项非常受大众喜欢的运动,几十年来,乒乓球运动在中国迅速兴起,很重要的原因就是对客观条件要求不高,随时随处就能玩起来。乒乓球运动越来越多地被作为增强智力、提高工作效率以及保健、医疗和康复的极佳手段而引起各方面的重视。如今,人们生活太忙碌,很多的人只能通过网络来玩乒乓球游戏,而乒乓球游戏机正好解决了人们的困扰。它简单易行,只要简简单单几个手指的操作就能达到同样娱乐跟锻炼的效果。2 设计的目的这次的设计主要是学习使用EDA集成设计软件MxplussII,电路描述,综合,模拟过程。掌握使用EDA工具设计乒乓游戏机的的设计思路和设计方法。体会使用EDA综合过程中电路设计方法和设计思路的不同。3 乒乓游戏机的功能两人乒乓游戏机能够模拟乒乓球比赛的基本过程和规则,并能自动裁判和记分。乒乓游戏机是用8个发光二极管代表乒乓球台,中间两个发光二极管兼做乒乓球网,用点亮的发光二极管按一定的方向移动来表示球的运动。在游戏机的两侧各设置两个开关,一个是发球开关(s1a,s1b),另一个是击球开关(s2a,s2b)。甲乙两人按乒乓球比赛的规则来操作开关。当甲方按动发球开关s1a时,靠近甲方的第一盏灯亮,然后二极管由甲向乙依次点亮,代表乒乓球在移动。当球过网后,按设计者规定的球位乙方就可以击球。若乙方提前击球或者没有击着球,则判乙方失分,甲方记分牌自动加分。然后重新发球,比赛继续进行。比赛一直进行到一方记分到11分,该局结束,记分牌清零,可以开始新的一局比赛。具体功能如下:(1)使用乒乓游戏机的甲乙双方各在不同的位置发球或击球。(2)乒乓球的位置和移动方向由灯亮及依次点燃的方向决定,球移动的速度为0.10.5s移动一位。游戏者根据球的位置发出相应的动作,提前击球或者出界均判失分。(3)比赛用11分为一局来进行,甲乙双方都应设置各自的记分牌,任何一方先记满11分,该方就算胜了此局。记分牌清零后,又可开始新的一局比赛3.1 乒乓游戏机设计思路根据乒乓游戏机功能要求,可以分成四个模块来实现,其中corna模块为整个程序的核心,它实现了整个系统的全部逻辑功能;模块ch41a在数码的片选信号时,送出相应的数据;模块sel产生数码管的片选信号;模块disp是7段译码器。3.2 乒乓球各模块的设计3.3.1 控制模块的设计 模块corna 分两个进程,第一个进程实现逻辑功能,第二个进程将整数的记分转换为十进制数,便于译码显示。Af,aj,bf,bj分别为a方发球键和接球键,b方发球键和接球键,shift表示球所在的位置。其vhdl程序描述如下:Library ieee;Use ieee.std_logic_1164.all;Use ieee.std_logic_unsigned.all;Entity cornal 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 downto 0);Begin If clr=0 t hena:=0;b:=0;she:=”00000000”amark<=0;bmark<=0;elsif clkevent and clk=1 then if a=0 and b=0 and af=0 then -a方发球 a:=1; she;=”10000000”;elsif a=0 and b=0 then bf=0 then -b方发球 b:=1;she:=”00000001”;elsif a=1 and b=0 then -a方发球后 if she>8 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 downto 1); -b方没有击球end if;end if;elsif a=0 and b=1then -b方发球 if she<16 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 if;shift<=she;end process;process(clk,clr,amark,bmark)variable aha,ala,bha,bla:std_logic_vector(3 downto 0);variable tmp1,tmp2:integer;variable t1,t2:std_logic;begin if clr=0then -清零 aha:=”0000”; ala:=”0000”; bha:=”0000”; bla:=”0000”; tmp1:=0; tmp2:=0; t1:=0; t2:=0;elsif clkevent and clk=1 then if aha=”0001” and ala=”0001” then -a方得分达到11分,则保持 aha:=”0001”; ala:=”0001”; t1:=1;elsif bha=”0001”and bla=”0001” then -b方得分达到11分,则保持 bha:=”0001”; bla:=”0001”; t2:=1;elsif amark>tmp1 then if ala=”1001” thenala:=”0000”;aha:=aha+1;tmp1:=tmp1+1;else ala:=ala+1; tmp1:=tmp1+1;end if;elsif bmark>tmp2 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;bwin<=t2;end process;end behave;3.3.2 送数据模块的设计送数据模块ch41a的vhdl程序描述如下:Library IEEE;Use IEEE.std_logic_1164.all;Entity ch41a is Port(sel:in std_logic_vector(2 downto 0);D0,d1,d2,d3:in std_logic_vector(3 downto 0);Q:out std_logic_vector(3 downto 0);End ch41;Architecture behave of ch41a is Begin Process(sel) BeginCase sel is When”100”=>q<=d0; When”101”=>q<=d1; When”000”=>q<=d2; When others=>q<=d3;End case;End process;End behave;3.3.3 产生数码管片选信号模块的设计产生数码管片选信号模块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;3.3.4 7段译码器模块的设计7段译码器模块disp的vhdl的程序描述如下:Library ieee;Use ieee.std_logic_1164.all;Entity disp is Port(d:in std_logic_vector(3 downto 0);Q:out std_logic_vector(6 downto 0);End disp;Architecture behave of disp isBegin Process(d) Begin Case d isWhen”0000”=>q<=”0111111”;When”0001”=>q<=”0000110”;When”0010”=>q<=”1011011”;When”0011”=>q<=”1001111”;When”0100”=>q<=”1100110”;When”0101”=>q<=”1101101”;When”0110”=>q<=”1111101”;When”0111”=>q<=”0100111”;When”1000”=>q<=”1111111”;When others=>q<=”1101111”;End case;End process;End behave;4 系统的波形仿真 图1所示为A方发球,在恰当的时候B方接到球,当球回到A方时,A方又接到球,但B方再也没有接到球的仿真波形。图1 乒乓球仿真波形一图2所示为A方两次发球,B方没有接到球,A方得到2分的仿真波形图图2乒乓球仿真波形二图3所示为A方发球,B方提前击球的情况,此时,A方得一分。图中还显示了A方发球,B方在规定的时刻没有接到球的情况,此时,A方又得一分。图3乒乓球仿真波形三图4所示为A方得分增加到11分的情况,此时awin输出高电平,输出分数保持不变。当清零信号按下时,得分清为零,awin输出恢复低电平,又可以开始新的一局比赛。图4乒乓球仿真波形四5 乒乓游戏机顶层电路图图5乒乓游戏机顶层电路图6 硬件测试及引脚锁定 在这次的硬件测试中,采用六号模式。其中的clr,af,aj,bf,bj均为输入信号,并且只有高电平和低电平之分,所以,在锁定的时候af,aj分别接入16,11,在硬件器件上分别接在键8和键7,同理bf,bj锁定在18,19号的引脚上,分别对应的键4和键5,异步清零信号clr则接在键3, clk,sclk为时钟脉冲信号分别接在42,43号。输出信号为q6q0,shift0shift7,q输出为A,B两方的分数,它的接出了七段数码管,shift代表乒乓球的移动,它的接出为发光二极管。其中q6-78,q5-73,q4-72,q3-71,q2- 70,q1-67,q0-66;shift7-38, shift6-37, shift5-36, shift4-35, shift3-30, shift2-29, shift1-28, shift0-27.引脚锁定如下图所示: 图六 引脚锁定图7 设计心得与体会这次EDA课程设计历时两个星期,在整整两个星期的日子里,可以说是苦多于甜,但是可以学的到很多很多的东西,同时不仅可以巩固以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次设计,进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。特别是当每一个子模块编写调试成功时,心里特别的开心。但是在编写顶层文件的程序时,遇到了不少问题,特别是各元件之间的连接,以及信号的定义,总是有错误,在细心的检查下,终于找出了错误和警告,排除困难后,程序编译就通过了,心里终于舒了一口气。在波形仿真时,也能仿真正确了。最难的是引脚锁定与测试这一块,由于,我选的乒乓球游戏机的引脚很多,而且也比较复杂,其中老是将引脚弄错,终于锁定完了,编译也没有出错,当在硬件上测试的时候,发现结果并不像设定的那么好,比如在发球的时候,根本没有设置首先从哪边开始,然后在接发球的过程中很难接到,不过也有接到的时候,基本上达到了实验的要求。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。参考文献1阎石 主编,数字电子技术基础(第五版),高等教育出版社,20062朱正伟主编,EDA技术及应用,清华大学出版社,20053廖裕评等主编,CPLD数字电路设计使用MAX+plus入门篇,清华大学出版社,20044张亦华等主编,数字逻辑设计实验技术与EDA工具,北京邮电大学出版社,20035谭会生等主编,EDA技术及应用,西安电子科技大学出版社,20016黄智伟等主编,FPGA系统设计与实践,电子工业出版社,2004

    注意事项

    本文(《EDA技术及应用》课程设计-乒乓球游戏机.doc)为本站会员(椰子壳)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开