1 / 14
文档名称:

MP3音乐播放器.doc

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

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

分享

预览

MP3音乐播放器.doc

上传人:文库旗舰店 2019/10/11 文件大小:161 KB

下载得到文件列表

MP3音乐播放器.doc

文档介绍

文档介绍:MP3音乐播放器61006106 许凯凯一、课题介绍 MP3是一种大家十分熟悉的娱乐工具,其功能在现今生活中逐渐增多,除了可以听音乐外还可以看电子书、看视频、玩游戏等等。随着MP3的能力越来越强、制作工艺越来越精良、价格越来越便宜,它在人们生活中也将出现得越来越频繁。本课题模拟实现了MP3的基本功能,主要实现:1)循环播放系统内预存曲目2)选择“下一曲”、“上一曲”:按下按键后将会播放相应曲目3)快进、快退、暂停:类似于一般的MP3,快进可以使音乐快速前进,到达当前曲目的末尾后会进入下一首歌曲;快退可以使音乐快速后退,当退至当前曲目的开始时会停留住;暂停可以使播放停止。与所有音乐播放器相同的是在这三种情况下音乐播放器都不会播放音乐出来。4)播放模式选择:系统内贮存有“普通”、“流行”、“古典”、“摇滚”等模式可供选择,以数字编号代替,选择后相应数字显示在数码管上。5)播放列表:可以建立自己的播放列表,建立后MP3将会循环播放选中的几首歌曲。如只选择一首歌曲,则可以实现重复播放的功能。该系统的指标为存放的歌曲数目。该系统的规模为8首歌。二、具体实施方案本系统模仿MP3音乐播放器控制器,并将音乐曲目的编号显示在数码管上,并且为便于观察,将每首歌的时间显示出来(将音乐数定为9,并且时间限制在一分钟内)。显示用到4个数码管,其中第一个晶体管显示歌曲的编号,第二个晶体管显示模式编号,后两个显示管显示每一首音乐剩余的时间。通过VHDL语言编程完成系统的核心,再将器件、键盘和晶体管连接起来,使按键产生不同的显示效果。可将不同数字对应的音乐储存起来,按不同数字键时有将数字编号显示出来同时开始播放歌曲,并且时间开始递增显示。播放模式也是将所有模式储存起来供用户选择。按“下一曲”或“上一曲”后可通过当前显示的数字计算出相应的数字并将信息显示出来。“快进”和“暂停”可通过控制频率实现,快进可将频率加快,暂停则可将频率输入消去。“快退”可将计数器递减改为递增。一般情况下,歌曲曲目编号按顺序递增,可用一个计数器实现。创建播放列表后,选择的歌曲曲目将被记录下来,并用一个新序列对应选择出的歌曲,播放时将按这个序列循环播放。所有的歌曲都存在一个rom中,播放时从中读取曲谱至发声模块分频产生不同的频率驱动喇叭发出不同的声音。为实现同步,计时模块与之频率为1:4(存放的音乐为44拍)。下一首三、面板图:显示时间曲目显示模式显示上一首开始播放创建列表暂停快退快进复位创建列表确定模式选择复位键置0时复位,置1时系统工作;快进置1时播放器快进,置0时正常播放;快退置1时播放器快退,置0时正常播放;按下“下一首”按钮,播放下一首音乐;按下“上一首”按钮,播放上一首音乐;A键为选择模式键,按下A键后再按数字键即为选择的模式编号,显示在第一个数码管上;B键为创建列表键,按下B键再按下几个数字键(0~7)即为创建的列表中曲目,选择完后按下C键确定,播放时曲目显示在第二个数码管上;F键为播放键,按下后开始播放音乐(如不创建列表、不选择模式可直接按F键播放);播放时时间显示在后两位数码管上,其中第三个为时间十位,第四个为个位。四、系统结构图:总的系统框图存储器控制器同步/消抖On\off 同步/消抖back晶体管显示同步/消抖next同步/消抖list同步/消抖replay同步/消抖计数器enter同步/消抖mode同步/消抖stop同步/消抖speed同步/消抖backpedal同步/消抖0、1、2、3、45、6、7、8、9顶层结构图spksinputercuvolshowtimeshownumbershowtimefenpin各个模块的功能描述:fenpin:分频模块将输入的100hz信号分成两个频率clk1和clk4,分别控制显示时间的模块showtime和输出分频预置数的模块vol,当speed(快进)和backpedal(快退)都为低电平时,clk1为1hz,clk4为4hz,当speed(快进)和backpedal(快退)有一个为高电平时,,clk4为10hz。因为选取的音乐都为44拍,所以clk4与clk1的比例为4:1,即每秒输出4个音符。输入为100hz与stop信号相与的结果,即stop为低电平时时钟为零,分频预置数和计时停止。input:键盘扫描模块。每次按键后将按键信息保存并将信息传送到cu模块cu:该模块分析键盘扫描模块送进来的信息,判断出按键的信息并根据按键的不同做出相应的处理,用状态机编写。按下A键后进入选择模式状态,将接下来按的数字键数字送至showtime模块;按下B键后进入创建列表状态,将接下来按的所有数字键依次存储在、listout数组中,多余8次的数字按键无效。按下C键后进入列表确认状态,将按下的数字即创建的列表信息送至