1 / 54
文档名称:

数字电路与逻辑设计实验报告.docx

格式:docx   大小:1,584KB   页数:54页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数字电路与逻辑设计实验报告.docx

上传人:buhuixin1314 2020/3/15 文件大小:1.55 MB

下载得到文件列表

数字电路与逻辑设计实验报告.docx

文档介绍

文档介绍:数字电路与逻辑设计实验报告数字电路与逻辑设计实验报告题目:简易钢琴游戏学班姓学院:级:名:号:班内序号:数字电路与逻辑设计实验报告【实验任务及要求】:1.、用8×8点阵进行游戏显示。2、BTN1~BTN7七个按键模拟钢琴演奏时的“1234567”七个音符。点阵的第一列对应音符“1”,第二列对应音符“2”,依此类推,低中高音自定。3、光点在点阵第一行随机出现,逐点下落,,如图1所示。在光点下落到点阵最后一行之前的过程中,如果按下与该列点阵相应的音符键,该光点消失,蜂鸣器演奏相应的音符声音,计分器加1。如果在光点下落到最后一行依然没有进行相应的按键操作,该光点消失,计分器不加分。计分器由数码管显示。每隔1秒在点阵的不同列的第一行出现一个光点,如图2所示。二、提高要求:光点在点阵某行随机出现,然后逐点下落。下落速度随机变化。光点按照存储的乐曲顺序和速度的出现。自拟其它功能。三、创新功能:,并及时按键后,才能加分并发出对应数字电路与逻辑设计实验报告音符,增加了游戏难度,使得游戏更好玩。,通过一个拨码开关控制,游戏中的光电是随机出现,或者是按照歌曲《小星星》出现。【功能说明】本实验利用开发板模拟钢琴游戏,总体上实现了30秒倒计时,随机出点下落,按乐曲出点下落,按键及时按下后用数码管显示计分,并使蜂鸣器发声等功能。30秒倒计时:利用开发板的数码管模块进行输出,当接通电源后,游戏的30秒开始倒计时,当计时到达0时,停止出点,游戏结束;可以拨动SW0(reset)从新开始游戏。随机出点下落:利用开发板的点阵输出模块,每隔一秒随机在第一行的任意一列随机出现一个光点,。按乐曲音符出点下落:利用开发板的点阵输出模块,按照乐曲的音符在点阵的第一行的对应位置出现光点,。与随机出点的功能以一个拨码开关SW1,进行切换。按键检测:利用开发板的按键部分,分别表示1—7中音音符,当光点下落到对应列的最后一行时,按下对应音符的按键,可加分,蜂鸣器发出响应音符的响声。加分:利用开发板的数码管输出模块,当按键及时按下后,数码管显示的分数对应加一。发声:利用开发板的蜂鸣器输出模块,当按键及时按下后,蜂鸣器发出该按键对应的音符的响声。【系统设计】,可将本系统分为五个模块:点阵模块:这个部分是本系统比较重要的部分,主要控制点阵输出模块,每隔一秒在点阵的第一行输出一个光点,;同时在该模块中还应判断按键是否及时按下,输出加分信号。30秒计时以及计分模块:这个部分主要是对数码管显示的控制,进行30秒的倒计时并显示,同时根据输入的分数,显示当前的分数。分数和时间分别使用2个数码管,本模块肩负着对数码管资源合理分配的责任。出点模块:这个部分主要是实现随机产生即将出点的列号(即相应的音符),或者按照《小星星》这首歌曲的音符产生音符,将该音符值传给点阵模块,控制下一秒的出点。发声模块:这个模块主要实现,按照点阵模块传入的分频基准值,对时钟分频,并输出给蜂鸣器,从而发出对应音符的声响。顶层模块:这个模块是以上几个模块的顶层控制,实现将系统的输入输出,以及分模块之间的输入输出联系起来的功能,pnoent集合以上几个模块。整体思路是分模块实现不同的子功能,在不同的模块对开发板的不同资源进行控制,最后以顶层模块集合不同模块,以实现总体的功能。点阵控制,按键检测模块蜂鸣器发声模块随机、按乐曲出点模块计分、、系统硬件结构框图计分ModeReset计时12345672、模块划分图顶层模块顶层模块点阵模块计分计时模块发声模块出点模块数字电路与逻辑设计实验报告3、模块之间信息传递关系Input:button,reset,mode,clkOutput:Figure,cat,col,row,out_clk,Clk,reset,scoreFigure,Cat,stopClk,reset,button,yinfuCol,row,score,freq,Clk,freq,callOut_clkYinfuClk,mode,reset,stop,call每隔一秒出点,,蜂鸣器发声,光点消失NO数字电路与逻辑设计实验报告4、ASM图启动YES判断是否倒计时到0结束判断光点是否到最后一行NOYES判断按键是否及时按下YESNO30秒计时结束或SW0=’1’SW0=’1’thenSW0=’0’30秒计时结束或SW0=’1’=’1’SW0=’0’按乐曲出点,游戏开始SW1=’1’