基于VHDL的贪吃蛇游戏设计MK5_第1页
基于VHDL的贪吃蛇游戏设计MK5_第2页
基于VHDL的贪吃蛇游戏设计MK5_第3页
基于VHDL的贪吃蛇游戏设计MK5_第4页
基于VHDL的贪吃蛇游戏设计MK5_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于VHDL的贪吃蛇游戏设计基于VHDL的贪吃蛇游戏设计基于VHDL的贪吃蛇游戏设计基于VHDL的贪吃蛇游戏设计II蛇撞墙并重新开始第六章全文总结6.1研究成果在刚刚开始做实验时,对VHDL语言感到特别的陌生,在不太了解情况下选了贪吃蛇这个题目,回来才听说这个题目很难,本来觉得有些后悔,但是现在我感到很值得,因为通过实验我基本上学会了VHDL语言的用法和思想,熟悉了VHDL语言的编写、VHDL的程序设计,增强了做实验的耐心和自信。学习并熟悉了VHDL语言的编写、VHDL程序设计。VHDL程序设计,不用拘泥用某种具体器件的选择和使用,使设计者能专注于工程各部分所需要完成的功能,逻辑感强,可读性强、可移植性好。因为很喜欢做游戏类的编程,所以没有犹豫就选择了贪吃蛇,虽然听到这个程序很容易超出宏单元,并且编程过程中也不是很容易实现。但既然喜欢我觉得就能做的更好。在实验的第二周我就很快的将程序写了一个完整的,但是在接下来的调试过程中波形一直不能正常运行。对程序进行了很多次大的调整才达到了可以运行的程度,期间因为一定想要自己做出贪吃蛇的程序,用了好多的时间来更改代码和思考程序编写上的逻辑问题。贪吃蛇的波形图也是比较不容易观察的,在本次实验中我收获到了很多的东西,选择做贪吃蛇是很值得的。在实验中我还学到对逻辑器件的编程中,尽量少用IFELSE以及算术运算的语句,因为这些语句在程序编译后会占用大量的宏单元,所以应该尽量使用whencase以及逻辑运算的语句进行编写。在有限的资源内实现自己的目标,不仅要求我们从思想出发实现功能,更要求我们从实际出发优化编程,使资源得到合理的利用。在贪吃蛇实验的完成中我还浏览了电路中心论坛,受到了同学用方向随机性控制鼠的随机放置功能。在与同班一起做贪吃蛇同学的交流中也学到了一些知识,在程序下载问题很大的时候同学的一些意见也给了我极大的帮助。6.2实验中遇到的问题1.在分频选择上尝试了很多倍数,考虑到操纵控制上的难度最后选择了将时钟设为CLK的1024倍。2.在方向控制最初的算法设计时,蛇在向右运动的时若按向左键蛇会向左运动,后来加了不能向相对方向运动的语句才防止了这一错误的发生。3.显示模块中老鼠和墙开始放在同一个计数状态下,这时共显示了10个亮点。这时因为同一时间点阵扫描会接通赋值的行和列坐标,将老鼠的扫描和墙的扫描设定在不同的时间段内,此问题得到解决。4.在采用按钮时,蛇的方向不易保留和控制,加上防抖之后又超过了128个宏单元。5.模块划分不合理,在最初编程时采用分频、蛇游戏运行、数码管和点阵显示三个部分,这时进程内容安排较规整,但是RESET控制一直不能正常工作,尝试了很多种放置位置,最后只能将RESET设置在TMP(10)时钟外面的进程里面,这时就带来了新的问题,RESET需要控制DEATH值,却不能在很多时钟下同时定义DEATH值,只能将DEATH的所有赋值都加入RESET的进程。而当RESET进程独立出来后又超过了宏单元使用,只能将其并入分频进程,这时程序的模块划分显得比较混乱,在以后编程中应防止此类问题。6.在鼠的随机坐标赋值时,为了防止鼠的TX坐标与墙重合,定义每当鼠坐标与墙坐标在一列的同时行数自动加1。6.3进一步展望这个游戏的设计还不够完善,如果有机会我还希望能在目前的基础上给游戏增加更多的内涵。具体来说就是增加游戏的难度和趣味性以及优化游戏的显示效果,希望以后有机会能够实现这些构想。XXXVII基于VHDL的贪吃蛇游戏

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论