一、实验任务要求1、基本要求:用8×8点阵显示“1234567”七个音符构成的电子琴键盘
其中点阵的第一列用一个LED点亮表示音符“1”,第二列用二个LED点亮表示音符“2”,依此类推
用BTN1~BTN7七个按键模拟电子琴手动演奏时的“1234567”七个音符
当某个按键按下时,数码管显示相应的音符,点阵上与之对应的音符显示列全灭,同时蜂鸣器演奏相应的声音;当按键弹开时数码管显示的音符灭掉,点阵显示恢复,蜂鸣器停止声音的输出
下图所示为按下BTN3按键时点阵的显示情况
由拨码开关切换选择高、中、低音,并用数码管进行相应的显示
通过按键BTN0进行复位,控制点阵显示初始状态
2、提高要求:可通过一个拨码开关进行手动/自动演奏的切换,并与点阵显示配合增加自动演奏乐曲的功能
增加手动演奏的音符存储、播放功能
3、创新功能:实现了升降音
实现了多首歌曲的播放选择与切换
实现了歌曲暂停以及录音清空
二、功能说明本实验利用开发板模拟电子琴演奏,总体上实现了通过按键弹奏电子琴,发音并输出音符与键盘的状态,另一方面实现了自动选择播放歌曲、暂停、复位、录音与录音播放的新功能
①发音:利用开发板的扬声器模块进行输出,在手动弹奏、自动播放、录音播放等状态下发出不同音调的音符以及不同的歌曲
②音符显示:利用开发板的数码管模块进行输出,在不同按键情况下输出该按键对应的音调值,如弹奏高音1时,输出“H1”
③键盘显示:利用开发板的点阵模块进行输出,在不同按键情况下将该按键对应的点阵列不显示,以此模仿琴键的按下,当按键抬起时,键盘又恢复原状
④自动播放:利用编程逻辑综合协调以上三个模块,首先通过按键选择歌曲(本实验存储了3首原创歌曲),然后播放相应的歌曲,并显示音符与键盘状态
当暂停开关被置位时,歌曲播放暂停,当此开关恢复原位时,从暂停点继续播放歌曲
当在播放歌曲时按下复位键,歌曲停止播放,等待重新选