成绩评定表学生姓名xxx班级学号11030601xx专业通信工程课程设计题目基于LabVIEW的MP3播放器设计评语组长签字:成绩日期20年月日课程设计任务书学院信息科学与工程专业通信工程学生姓名xx班级学号11030601xx课程设计题目基于LabVIEW的MP3播放器设计实践教学要求与任务:1.学习LabVIEW的虚拟仪器原理、设计方法和实现技巧;2.掌握简单LabVIEW程序的编程实现;3.掌握简单通信系统设计和分析方法;4.采用Labview语言,实现MP3播放器设计。(1)通过检索、查资料、调查研究、确定方案、画出组成系统结构方框图;(2)采用LabVIEW实现MP3播放器设计;(3)系统调试与改进,调整系统参数,分析系统运行结果;(4)写出设计总结报告。工作计划与进度安排:19周(上):学习LabVIEW虚拟仪器原理、设计方法和实现技巧,掌握简单LabVIEW程序的编程实现,掌握简单通信系统设计和分析方法。19周(下):采用LabVIEW语言,实现MP3播放器设计,并对系统进行性能分析。指导教师:201年月日专业负责人:201年月日学院教学副院长:201年月日目录1目的及基本要求................................................12MP3播放器设计原理.............................................12.1MP3播放器原理...............................................................................................................12.2流程图..............................................................................................................................12.3设计步骤..........................................................................................................................13MP3播放器设计和仿真...........................................23.1总体程序设计..................................................................................................................23.2各功能模块详细设计......................................................................................................44结果及性能分析................................................54.1运行结果..........................................................................................................................54.2性能分析..........................................................................................................................6参考文献........................................................711目的及基本要求熟悉LabVIEW开发环境,掌握基于LabVIEW的虚拟仪器原理、设计方法和实现技巧,运用专业课程中的基本理论和实践知识,采用LabVIEW开发工具,实现MP3播放器的设计和仿真。基本要求:基于LabVIEW的MP3播放器设计,主要利用labview的Activex,属性节点,调用节点,Eventstructure等控制实现的,MP3音乐播放器界面包括播放歌曲名字,播放路径以及停止按钮。能熟练运用LabVIEW开发环境完成其他一些项目程序。2MP3播放器的设计原理MP3播放器,主要用于播放已存储计算机磁盘中的音乐文件。它是将播放器的系统装入计算机,以通用的计算机硬件及操作系统为依托,实现音乐功能的。VI程序设计里,默认容易识别的格式为WAV格式,所以在设计MP3时采取调用的方法,本系统主要利用labview的Activex,属性节点,调用节点,Eventstructure等控制实现的。2.1MP3播放器工作原理MP3的工作原理:从内存中取出并读取存储器上的信号→到解码芯片对信号进行解码→通过数模转换器将解出来的数字信号转换成模拟信号→再把转换后的模拟音频放大→低通滤波后到耳机输出口,输出后就是我们所听到的音乐了。2.2流程设计程序流程设计:设定路径,判定路径是否有效→无效报错;有效,执行下一阶段程序→调用媒体播放器,编写歌名显示和文件路径显示,设置停止功能按钮→程序结束。本程序主要涉及到一下控件或结构的使用:(1)事件结构:包括一个或多个子程序框图或事件分支,结构执行时,仅有一2个子程序框图或分支在执行。事件结构可等待直至事件发生,并执行相应条件分支,处理该事件。连线事件结构边框左上角的“超时”接线端,指定事件结构等待事件发生的时间,以毫秒为单位。默认值为–1,即永不超时。(2)ActiveX容器:用于在VI的前面板上嵌入ActiveX对象。基于Windows的应用程序可通过此方式在前面板上显示并与LabVIEW控件交互。可在ActiveX容器中放置两种类型的ActiveX对象。用户可自行创建新的ActiveX控件或文档。也可插入现有的ActiveX控件或文档。框图中的MEDIAPLAYER就是现有的控件。(3)属性节点:可自动调整为用户所引用的对象的类。LabVIEW的属性节点可访问ActiveX属性。框图中的IWMPPLAYER4和IWMPCONTROLS均为所引用的对像的类。(4)路径控件:用于输入或返回文件或目录的地址。(5)字符串/数组/路径转换:使路径转换为字符串,以操作平台的标准格式描述路径。字符是当前平台上通过标准格式路径表示的路径描述符。字符串的数据类型结构与路径一致。2.3设计步骤(1)判定路径是否有效,无效报错,有效,执行下一阶段程序;(2)调用媒体播放器;(3)设置停止功能按钮;(4)程序结束。3MP3播放器设计和仿真3.1总体程序设计VI程序设计里,默认容易识别的格式为WAV格式,所以在设计MP3时采取调用的方法,本系统主要利用labview的Activex,属性节点,调用节点,Eventstructure等控制实现的。MP3音乐播放器界面包括播放歌曲名字,播放路径以及停止按钮。3(1)主程序前面板:图1MP3播放器前面板(2)主程序后面板程序:图2MP3播放器后面板程序43.2各功能模块详细设计(1)文件路径的判断在前面板新建一个文件路径输入控件,文件路径控件,创建一个条件判断文件路径的有效性,在条件结构执行中,若路径为真,即有效,则进行程序下一步;路径为假则报错,报错利用建议错误处理器完成。完成此小模块后的程序图如图所示:图3文件路径及条件结构对路径的判断(2)媒体播放器调用的实现添加属性节点调整为所引用对象的类:在程序框图中右键单击出“函数”选板,点击“互联接口”,选择ActiveX—属性节点—选择类—ActiveX—IWMPPLAYER4,左键单击属性栏,即可选择相应的属性—URL。若不止一个属性,则下拉属性栏,在按照相同的方法选择相应的属性—controls。IWMPCONTROLS的创建及参数设定方法基本和IWMPPLAYER4一致。用ActiveX容器插入MEDIAPLAYER:在前面板上右键单击打开控件,按照控件—经典—经典容器—ActiveX容器—插入ActiveX对象—WindowsMediaPlayer的步骤即可实现。其结果在前面板上有显示。用ActiveX容器插入文件路径输入控件:打开控件后,按照控件—经典—经典容器—ActiveX容器—替换—文本输入控件—文件路径输入控件操作完成即可。其结果在前面板上也有显示。完成后在程序框图接线,结果如图4所示:5图4媒体播放器调用的实现4结果及性能分析4.1运行结果不同播放曲目下的运行结果如图所示:图5MP3播放器运行结果一6图6MP3播放器运行结果二4.2性能分析该虚拟仪器——MP3播放器,主要用于播放已存储计算机磁盘中的音乐文件。它是将播放器的系统装入计算机,以通用的计算机硬件及操作系统为依托,实现音乐功能的。VI程序设计里,默认容易识别的格式为WAV格式,我通过阅资料完成了MP3播放器的程序,此程序不再仅限于WAV格式的播放,对MP3格式也能很容易的实现播放。播放器运行之后,通过选择路径选择所要播放的歌曲,该歌曲为计算机硬盘中所存储的歌曲。选择之后,点击播放,开始播放歌曲,播放过程中可以通过进度条来实现快进、快退,并且可以随时点击停止按钮来停止播放。但是在设计过程中也存在着许多不足,例如:上一曲,下一曲功能未能实现。文件的播放只能针对单一文件,未能实现播放列表功能。整个播放器的设计也需要改进完善。在以后的LabVIEW学习与应用中,我会不断练习,不断改进,进而提高自己的动手实践能力。7参考文献[1]侯国屏.LabVIEW7.1编程与虚拟仪器设计,北京:清华大学出版社,2005[2]石博强.labview6.1编程技术实用教程.中国铁道出版社,2002[3]杨乐平.labview高级程序设计,北京:清华大学出版社,2003[4]何克忠,李伟.计算机控制系统,北京:清华大学出版社,2003