河北科技大学EDA课程设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
. . 河北科技大学 课程设计报告 学生姓名: 高志明 专业班级: 电子信息工程L121班 课程名称: EDA课程设计 学年学期:2014—2015学年第二学期 指导教师: 安国晨 负责部分: hit部分模块 2 01 5 年 7月 . . . . 课程设计成绩评定表 学生姓名 高志明 成绩 专业班级 电信L121 起止时间 2015年6月26日—7月2日 设计题目 打地鼠游戏设计 指 导 教 师 评 语 指导教师: 年 月 日 目录 设计题目及要求……………………………3 系统结构框图………………………………3 状态流程图…………………………………4 程序清单……………………………………6 调试及仿真波形……………………………8 设计分工 ………………………………10 心得与体会 ………………………………10 参考文献 ………………………………12 一、设计题目及要求 1、功能:由8只LED代表虫洞,8个按键代表打虫棒,虫子随机在8虫洞随机出现(LED亮)1s,1s内按相应的虫棒即算打中地虫,得一分,按错或1S内按过其他键或未按键即丢1分。间隔2S出现下一只虫子。10只虫算一关,打对十只算本关通过,重新从0积分,否则游戏结束。 2、要求:上电时数码管显示“STAr--00”并闪烁,按“开始”键,进入第一局; 打关时数码管显示 关数和分数; 过关时数码管显示“STAr--XX”并闪烁(XX为下一关数),按“开始”键,进入下一关;每过一关,虫子出现的时间为上一关的3/4,共设计8关。 8关全过时显示“--end --” 3、发挥:声效、过关音乐等。 二、系统结构框图 1.总系统框图 计分模块 计分模块 显 示 模 块 随机数发生模块 等级判断模块 分频模块 计数模块 键盘输入模块 比较模块 2. 各个模块的功能描述 分数判断模块 判断选手得分或失分主要是由一个比较器完成的,将系统传给LED灯的信号与选手输入的信号作比较,相同则加分,否则扣分,这两个信号分别传给计分模块,从而完成系统判定得分的工作。 2)系统时钟模块 将内部2MHz的时钟分频为1Hz、及游戏时钟,供以后程序适使用。 3)键盘电路 主要通过产生行扫描,来识别用户的按键,其提供给控制器按键的编码。 4)等级判断模块 判断等级,若游戏未开始时,将等级设为初始值,游戏开始后则判断每一等级是否按对次数是否大于按错次数,是责加分,否则相应减分。 并通过分数的正负进行等级的判断及变化。 5)随机数产生模块 为使得测试结果的公平性,需要L9-L16等灯亮灭具有随机性,因而需要随机数产生过程,在本课设中,采用伪随机数产生方法,即在ROM中存入随机表中的数据,游戏开始后采用一个计数器不断计数,并通过计数寻址,读出存储的随机数据,传送至灯进行显示。 6)显示模块 用来显示地虫的出现位置及各关、分数等 三、状态流程图 加分 加分 减分 分数=0? 是 否 等级升级 是否按对? 是 游戏结束 否 是 游戏开始 Reset=0? 否 初始状态 Start=1?stop=1? tsstopstopstop=1? 否 是 是hi 四、程序清单 library ieee; --蜂鸣器部分 use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity bell is port( clk1:in std_logic; --时钟信号输入 right,wrong:in std_logic; --正确、错误脉冲输入 bellout:out std_logic --时钟驱动输出 ); end bell; architecture func of bell is signal countr:integer range 0 to 7; --RIGHT时用于声音频率分频的计数器 signal countw:integer range 0 to 3; --WRONG时用于声音频率分频的计数器 signal counttime1,counttime2:integer range 0 t

文档评论(0)

hkfgmny + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档