电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

北邮数电实验点阵赛车VIP免费

北邮数电实验点阵赛车_第1页
1/20
北邮数电实验点阵赛车_第2页
2/20
北邮数电实验点阵赛车_第3页
3/20
数字电路综合实验报告点阵赛车游戏学院:信息与通信工程学院班级:17班姓名:学号:班内序号:辅导老师:袁东明时间:2012年11月目录一、设计任务要求二、系统设计三、仿真波形及分析四、源程序五、功能说明六、元器件清单及资源利用情况七、故障及问题分析八、总结和结论一、设计任务要求1、基本要求:1.用8×8点阵进行5秒倒计时显示,如下图所示。2.当5秒倒计时结束后,点阵显示下图所示的赛道和赛车的初始位置,赛车游戏开始,并开始计时,用两个数码管显示时间。图中的红色表示赛道,黄色表示赛车的初始位置,箭头表示赛车行进的方向。3.用BTN1~BTN3三个按键分别控制赛车的左移、前进、右移,最终使赛车在不碰撞赛道的情况下走完全程(即图2中的绿色位置),游戏结束,点阵显示“V”图案,数码管显示走完全程所耗费的时间。4.当游戏时间超过59秒,或者赛车在行进过程中碰撞赛道,游戏失败,点阵显示“X”图案。5.通过按键BTN0进行复位,控制点阵返回到初始状态。2、提高要求:1.有多种游戏赛道可选,5秒倒计时显示后赛道随机出现。2.赛车的初始位置随机出现。3.在赛车行进过程中,赛道中随机出现障碍物(用8×8点阵中的一个LED表示),通过BTN1~BTN3三个按键的控制躲避障碍物,走完全程。若赛车碰到障碍物和赛道,则游戏失败。二、系统设计1、设计框图1、系统结构框图本系统主要由四个模块组成,其中控制器用于控制程序运行、储存当前状态并控制输出显示,点阵用于显示游戏界面,数码管用于显示当前分数。按钮输入用于输入控制信息。2、逻辑划分方框图3、系统流程图4、MDS图开始点阵5秒倒计时游戏开始,数码管显示时间,点阵显示小车与赛道赛道下移,小车不动小车位置移动否赛道与车是否相撞,是按键输入否是是是否到达终点否是点阵显示“V”图案,数码管显示走完全程所点阵显示“X”游戏结束Te=toend到达终点Cr=crash撞车Ot=overtimeCD=countdownKI=keyboardinput游戏运行状态的具体状态转移图键盘输入状态车移动赛道移动是否撞车,超-KI到达状态运行状态游戏成功游戏失败等待状态ResetResetResetOtorCrTeCD三、仿真波形及波形分析说明:为了得到仿真结果,仿真实验先将分频比降低再进行。说明:cat的波形说明,硬件运行过程中只选择5号和4号数码管,这两个数码管交替启动,分别显示时间秒数的个位和十位说明:游戏刚开始时,数码管显示00.对应的time_car序列为0111111说明:游戏运行一段时间后(5秒倒计时)计时模块开始计时。上图中,数码管显示01秒,0对应序列为0111111,1对应于0000110。下图是02秒的仿真图说明:点阵输出,列的输出为01111111,,⋯⋯,说明:列的输出为00000100,00000100,00111100⋯⋯对应于点阵图形5的输出。从第二行开始输出。四、源程序及注释(由于代码过长,此处只显示top-levelentity,其余代码详见附件)LIBRARYIEEE;USECARISPORT(CLK_CAR,CLEAR_CAR:INSTD_LOGIC;ROW_CAR,COL_CAR:OUTSTD_LOGIC_VECTOR(7DOWNTO0);KEY_CAR:INSTD_LOGIC_VECTOR(2DOWNTO0);TIME_CAR:OUTSTD_LOGIC_VECTOR(6DOWNTO0);CAT_CAR:OUTSTD_LOGIC_VECTOR(5DOWNTO0));ENDCAR;---------------------------------------------------------ARCHITECTUREGAMEOFCARISCOMPONENTDIV_NIS--分频模块PORT(CLK_IN:INSTD_LOGIC;---------时钟输入CLEAR:INSTD_LOGIC;---扫描,清零CLK:OUTSTD_LOGIC:='0';----1000HZ游戏控制及点阵扫描频率CLK1:OUTSTD_LOGIC:='0';----100HZ数码管扫描频率CLK2:OUTSTD_LOGIC:='0'-----10HZ计时频率);ENDCOMPONENT;COMPONENTANTI_SHAKINGIS--防抖模块PORT(CLK,KEY,CLK1:INSTD_LOGIC;--clk为游戏控制频率clk1为防抖频率100hzK_OUT:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTDISPLAYIS--显示模块PORT(CLK1,CLK,CLEAR:INSTD_LOGIC;COL,ROW:OUTSTD_LOGIC_VECTOR(7DOWNTO0);--点阵的输出行与列COL0_IN:INSTD_LOGIC_VECTOR(7DOWNTO0);--游戏控制模块传给显示模块的点阵的列的数据COL1_IN:INSTD_LOGIC_VECTOR(7DOWNTO0);--COL2_IN:INSTD_LOGIC_VECTOR(7DOWNTO0);--COL3_IN:INSTD_LOGIC_VECTOR(7DOWNTO0);--COL4_IN:INSTD_LOGIC_VECTOR(7DOWNTO0);COL5_IN:INSTD_LOG...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

北邮数电实验点阵赛车

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部