- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于NiosII和LED点阵的贪吃蛇游戏设计
目 录
一、摘要……………………………………………………… 2
二、设计目的………………………………………………… 2
三、贪吃蛇设计预期目标…………………………………… 2
四、方案整体设计…………………………………………… 2
五、硬件系统的设计及实现………………………………… 3
六、软件系统的设计及实现………………………………… 11
七、心得体会………………………………………………… 14
八、参考文献………………………………………………… 15
九、附录……………………………………………………… 15
一 、摘要
基于NiosII软核处理器和LED点阵显示屏的贪吃蛇游戏内容是:一条蛇在封闭的围墙里,围墙里随机出现一个食物。玩家通过4个按键控制蛇上下左右移动,且蛇只能沿着头运动的轨迹移动。蛇头撞到食物,则食物被吃掉,蛇身体增长一节,同时记1分,又出现食物,等待蛇来吃,如果蛇头在移动中出界或咬到自己的身体则游戏结束。
关键字: 贪吃蛇 Nios II LED点阵 SOPC
二、设计目的
1、掌握按键扫描电路的设计
2、掌握用VHDL语言设计按键扫描电路的方法
3、掌握16*16 LED点阵的控制原理和用VHDL语言设计LED点阵扫描电路的方法;
4、掌握SOPC Builder的设计流程;
5、掌握在Nios II中进行编程的方法;
三、贪吃蛇设计预期目标
1、 基本功能
(1)、完成按键扫描电路的设计;
(2)、完成 16*16 LED 点阵的扫描电路设计;
(3)、完成SOPC Builder 中的系统设计;
(4)、完成单色贪吃蛇游戏的基本设计(蛇移动方向的改变,吃到果子后蛇身变长,咬到自己或者出界时的失败处理等);
(5)、完成游戏图形信息提示(游戏目前所处的等级等)。
2、 提高功能
(1)、能进行汉字动态显示(显示内容自动更新,形式自定,如百叶窗等);
(2)、蛇头颜色与蛇身区别显示,并与果实颜色区别显示;
(3)、游戏过程中加入声音提示和表情提示;
(4)、所得分数在数码管上显示;
(5)、能进行游戏难度的切换(不同难度下,蛇吃到相应数量的果子后升级)。
四、方案整体设计
为了实现游戏的控制、显示、设置等功能,系统需要具有控制模块,动态扫描显示模块,按键识别模块。本设计中采用Nios II软核CPU作为游戏的主控制单元,按键识别模块中的每个按键通过产生中断的方式,在中断处理函数中完成按键的标识,并在在软件程序的主体部分完成按键的识别。动态扫描显示模块又分为LED点阵屏动态扫描显示和LED数码管显示扫描两部分,两部分均采用VHDL语言设计相应的硬件扫描模块来实现。
五、硬件系统的设计及实现
整个硬件系统的设计包括Nios II片上系统的设计和外设驱动电路的设计。
硬件整体框架
2、Nios II片上系统的设计
片上系统的设计核心是Nios II嵌入式CPU软核的定制。根据游戏的功能要求和实现的方案,片上系统应当包括:Nios II嵌入式CPU软核、一组PIO输入\输出口、定时器、SRAM、JTAG UART、EPCS_FLASH_CONTROLLER。
Nios II系统的结构如下:
(1)、Nios II嵌入式CPU软核
Nios II嵌入式CPU软核作为整个系统的主控制单元,完成对按键信息的接收、识别、处理;此外还要输出相关的控制信息,实现对外设的控制。
(2)、PIO输入\输出口
在定制的一组PIO输入\输出口中,PIO输入口用于接收按键信号,PIO输出口用于输出对DPRAM写数据操作的控制和数据信号以及LED数码管的数据信号;
(3)、定时器
在系统中定制定时器,主要是为了通过定时器的计数产生周期性的中断,通过中断处理函数实现贪吃蛇的移动显示效果。由于定时器中具有几个软件可操作的寄存器,通过对这些寄存器的操作可以很方便地实现定时器的启停、定时时间设置、中断产生控制等操作。只要更改定时器产生中断的周期就可以实现贪吃蛇运动速度的控制,从而进行游戏等级的控制。
(4)、SRAM和EPCS_FLASH_CONTROLLER
SRAM在系统中起到了相当于计算机中内存的作用,主要用于存放正在运行的软件程序。它的特点主要是速度快。
EPCS_FLASH_CONTROLLER 作为EPCS_FLASH的控制器。整个系统的硬件设计都下载固化在EPCS_FLASH上,当程序烧写到了EPCS_FLASH上的时候,就可以实现脱机运行了。
3、 外设驱动电路的设计
外设驱动电路的设计包括:双口DPRAM的定制、DPRAM读数据控制电路的设计、LED点阵屏扫描电路的设计、七段数码管动态扫描电路的设计、整个系统中所用到的时钟信号产生电路以及按键去抖电路。
(1)、
您可能关注的文档
- 毕业设计(论文)-基于ARM嵌入式系统的指纹设计.doc
- 毕业设计(论文)-基于ASN.1_BER规约的编解码系统设计.doc
- 毕业设计(论文)-基于AT89C51单片机的大型电力机车自动停车器的设计.doc
- 毕业设计(论文)-基于AT89C51单片机的电烤箱温度控制系统.doc
- 毕业设计(论文)-基于AT89C51单片机的篮球赛计时计分器设计.doc
- 毕业设计(论文)-基于AT89C51单片机的温度采集控制系统以.doc
- 毕业设计(论文)-基于AT89C52单片机数字时钟设计.doc
- 毕业设计(论文)-基于AT89S51单片机的超声波测距系统设计.doc
- 毕业设计(论文)-基于AT89S51单片机的易电子琴设计.doc
- 毕业设计(论文)-基于AT89S52单片机的八路抢答器.doc
最近下载
- 统编版六年级语文上册习作《多彩的活动》精品课件(共84张PPT).pptx VIP
- 电厂2×600MW机组扩建工程建筑及安装工程土建专业主要技术施工方案.docx VIP
- 电厂2×600MW扩建(脱硫土建、安装)工程土建专业主要施工技术方案.docx VIP
- 电厂2×600MW机组扩建工程建筑及安装锅炉专业施工技术方案.docx VIP
- 煤电公司2×600MW机组工程汽机专业主要施工技术方案.pdf VIP
- 2X660MW超超临界燃煤机组工程qtz2500型塔式起重机安装的施工方案.doc VIP
- 2X660MW超超临界燃煤机组工程#2锅炉平台楼梯安装方案全案(终版).doc VIP
- 2X660MW超超临界燃煤机组工程#2锅炉平台楼梯安装的方案.doc VIP
- 电厂(2×660MW超超临界机组)机组安装工程锅炉专业施工方案.docx VIP
- 电厂(2×660MW超超临界机组)机组安装工程汽机专业施工方案.docx VIP
文档评论(0)