XXX211122班李济汉1021073720号简易电子琴演奏器(.docVIP

XXX211122班李济汉1021073720号简易电子琴演奏器(.doc

  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文档。上传文档
查看更多
数字电路与逻辑设计实验报告 PAGE PAGE 8 2012年数字电路与逻辑设计实验报告 题目: 简易电子琴演奏器 学 院:信息与通信工程学院 班 级:2010211122 姓 名:李济汉 学 号班内序号:20 指导教师:袁东明 老师 一、实验任务要求 1、基本要求: 用8×8点阵显示“1 2 3 4 5 6 7”七个音符构成的电子琴键盘。其中点阵的第一列用一个LED点亮表示音符“1”,第二列用二个LED点亮表示音符“2”,依此类推。 用BTN1~BTN7七个按键模拟电子琴手动演奏时的“1 2 3 4 5 6 7”七个音符。当某个按键按下时,数码管显示相应的音符,点阵上与之对应的音符显示列全灭,同时蜂鸣器演奏相应的声音;当按键弹开时数码管显示的音符灭掉,点阵显示恢复,蜂鸣器停止声音的输出。下图所示为按下BTN3按键时点阵的显示情况。 由拨码开关切换选择高、中、低音,并用数码管进行相应的显示。 通过按键BTN0进行复位,控制点阵显示初始状态。 2、提高要求: 可通过一个拨码开关进行手动/自动演奏的切换,并与点阵显示配合增加自动演奏乐曲的功能。 增加手动演奏的音符存储、播放功能。 3、创新功能: 实现了升降音。 实现了多首歌曲的播放选择与切换。 实现了歌曲暂停以及录音清空。 二、功能说明 本实验利用开发板模拟电子琴演奏,总体上实现了通过按键弹奏电子琴,发音并输出音符与键盘的状态,另一方面实现了自动选择播放歌曲、暂停、复位、录音与录音播放的新功能。 ①发音:利用开发板的扬声器模块进行输出,在手动弹奏、自动播放、录音播放等状态下发出不同音调的音符以及不同的歌曲。 ②音符显示:利用开发板的数码管模块进行输出,在不同按键情况下输出该按键对应的音调值,如弹奏高音1时,输出“H1”。 ③键盘显示:利用开发板的点阵模块进行输出,在不同按键情况下将该按键对应的点阵列不显示,以此模仿琴键的按下,当按键抬起时,键盘又恢复原状。 ④自动播放:利用编程逻辑综合协调以上三个模块,首先通过按键选择歌曲(本实验存储了3首原创歌曲),然后播放相应的歌曲,并显示音符与键盘状态。当暂停开关被置位时,歌曲播放暂停,当此开关恢复原位时,从暂停点继续播放歌曲。当在播放歌曲时按下复位键,歌曲停止播放,等待重新选择歌曲。 ⑤录音:当录音开关打开时,使表示处于录音状态的LED灯点亮,同时记录此段时间内按键的状态变化,将这些状态变化转化为数组里的值进行存储。 ⑥录音播放:当录音播放开关打开时,使表示处于录音播放状态的LED灯点亮,同时输出记录在录音数组里的音符值,利用扬声器、数码管与点阵进行综合输出。 三、系统设计 1、设计思路 本系统分为四大模块:主调用模块、状态切换模块、输出控制模块(控制音阶音调以及显示)、输出模块(发音)。 模块设计逐层深入,主调用模块为接口层,负责综合各个分模块component,使得分模块间以及分模块与外部输入输出间建立联系。 状态切换模块为核心控制层,它是最为重要的一层,通过从接口层获得不同信号,控制着状态机不同状态的切换。此处设置了五个状态:手动播放状态、自动播放状态、录音状态、录音播放状态、复位状态。 输出控制模块为辅助控制层,它主要实现了输出的同步,通过接收状态机的状态信息,进而将信号统一传送至输出接口,使得点阵、数码管显示以及不同音调的分频发音同时进行。 输出模块为单独提取出来的发音模块,由于本实验中每个模块都需要发音的实现,因此将其单独作为一个模块,便于输出控制层对其的控制。在此,输出控制层只需将已配置好的音调信号传送给发音模块,便可实现不同音调的发声。因此,发音模块的内部实现了分频以及输出防抖。 整体思路以状态转移为基础,在不同状态下传给输出控制不同信号,进而产生不同输出。模块之间存在松耦合,即可以下一层的功能调用需要上一层的信号输入,但具体逻辑实现上并不会相互影响。 2、系统总体框图 (1)系统结构框图 电子琴键盘按下按键 电子琴键盘 按下按键 复位 音符显示 控制音阶 H N L 扬声器发音 (2)模块划分图 主调用模块 主调用模块 输出控制模块 输出模块 状态切换模块 (3)模块之间信息传递关系 分频器 分频器 输出控制模块 主调用模块 input 状态切换模块 clk switch reco rst output 输出模块 button figures cats speak (4)ASM图 开始 开始 选择播放模式 音符显示 选择音阶高低 结束 选择歌曲 播放音乐 是 否(自动播放) 是否手动播放? 有无按键输入? 等待按键 键盘显示 播放声音 WaitSoundAutoPlayManual Wait Sound AutoP

文档评论(0)

小教资源库 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档