基于labview的音乐播放器设计_第1页
基于labview的音乐播放器设计_第2页
基于labview的音乐播放器设计_第3页
基于labview的音乐播放器设计_第4页
基于labview的音乐播放器设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、成绩:虚拟仪器技术及应用 课 程设计题目: 基于LabVIEW的音乐播放器程序设计学 期: 20132014学年第一学期指导教师:姓名:学号:年级、专业:1程序设计背景 32程序设计思路 32.1程序整体设计思路 32.2程序流程设计 33程序介绍 43.1程序各部分模块结构 43.1.1文件路径判断 43.1.2声音文件的读取和打开以及采样配置输出 53.1.3当前播放曲目显示的实现 63.1.4曲目播放进度条的显示实现 63.1.5音量大小控制 63.1.6旋律图显示的实现 错误!未定义书签。3.1.7播放器控制部分的实现 错误!未定义书签。3.2程序整体结构 74程序改进 85存在的一些

2、问题 96结论 9基于LabVIEW的MP3程序设计1程序设计背景MP3是利用人耳对高频声音信号不敏感的特性,将时域波形信号转换成频域信号,并划分成多个频段,对不同的频段使用不同的压缩率,对高频加大压缩比(甚至忽略信号)对低频信号使用小压缩比,保证信号不失真。MP3的工作原理:从内存中取出并读取存储器上的信号t到解码芯片对信号进行解码t通过数模转换器将解出来的数字信号转换成模拟信号t再把转换后的模拟音频放大t低通滤波后到耳机输出口,输出后就是我们所听到的音乐了。经过几年的发展MP3已经走进了千家万户,使用者也遍布各个年龄段和各个文化阶层。从最初的简单 MP3播放器,到现在的手机,平板等便携设备

3、自带的MP3播放器,MP3播放器已经走向大众,并演化为人们生活不可缺少的一部分,车上会有车载MP3电脑手机平板上的MP3也是必不可少,总之,已经人们时时刻刻都已经在享受着MP3带来的快乐。2程序设计思路2.1程序整体设计思路该虚拟仪器一MP3播放器,主要用于播放已存储计算机磁盘中的音乐文件。它是将播放器的系统装入计算机,以通用的计算机硬件及操作系统为依托,实现音乐功能的。VI程序设计里,默认容易识别的格式为 WAX格式,所以在设计MP3时采取调用的方法, 本系统主要 利用labview 的ActiveX, 属性节点,调用节点, Event structure 等控制实现的。 MP3音 乐播放器

4、界面包括播放歌曲名字,播放路径以及停止按钮。2.2程序流程设计程序流程设计:设定路径,判定路径是否有效t无效报错;有效,执行下一阶段程序t调用媒体播放器,编写歌名显示和文件路径显示,设置停止功能按钮t程序结束。本程序主要涉及到一下控件或结构的使用:(1) 事件结构:包括一个或多个子程序框图或事件分支,结构执行时,仅有一个子程序框图或分支在执行。事件结构可等待直至事件发生,并执行相应条件分支,处理该事件。连线事件结构边框左上角的“超时”接线端,指定事件结构等待事件发生的时间,以毫秒为单位。默认值为-1,即永不超时。(2) ActiveX 容器:用于在 VI的前面板上嵌入 ActiveX对象。基于

5、 Windows的应用程序可通过此方式在前面板上显示并与LabVIEW控件交互。可在ActiveX容器中放置两种类型的ActiveX对象。用户可自行创建新的 ActiveX控件或文档。也可插入现有的 ActiveX 控件或 文档。框图中的 MEDIA PLAYER就是现有的控件。(3) 属性节点:可自动调整为用户所引用的对象的类。LabVIEW的属性节点可访问ActiveX 属性。框图中的IWMPPLAYEF和IWMPCONTRO均为所引用的对像的类。(4) 路径控件:用于输入或返回文件或目录的地址。(5) 字符串/数组/路径转换:使路径转换为字符串,以操作平台的标准格式描述路径。字符是当前平

6、台上通过标准格式路径表示的路径描述符。字符串的数据类型结构与路径一致。3程序介绍3.1程序各部分模块结构3.1.1文件路径判断在前面板新建银色里新建一个文件路径输入控件,文件路径控件,创建一个条件判断文件路径的有效性,在条件结构执行中,若路径为真,即有效,则进行程序下一步;路径为假 则报错,报错利用建议错误处理器完成。完成此小模块后的程序图如图3-1所示:图3-1文件路径及条件结构对路径的判断9'03.1.2媒体播放器调用的实现添加属性节点调整为所引用对象的类:在程序框图中右键单击出“函数”选板,点击“互联接口”,选择 ActiveX 属性节点一选择类一 ActiveX IWMPPLA

7、YER4左键单击属性栏,即可选择相应的属性一 URL。若不止一个属性,则下拉属性栏,在按照相同的方法选择相应2 Ytwhipp冏訥 g_!URLccntrofs>的属性一controls 。其结果如右图:。IWMPCONTROLS创建及参数设定方法基本和IWMPPLAYER4 致,这里就不在重复,其结果如:左下图:plyO用ActiveX容器插入MEDIAPLAYER在前面板上右键单击打开控件,按照控件一经典经典容器 一ActiveX容器一插入ActiveX对象一WindowsMediaPlayer的步骤即可实现。其结果在前面板上有显示。用ActiveX 容器插入文件路径输入控件:按(4

8、)的步骤打开控件后,按照控件一经典 经典容器一ActiveX容器一替换一文本输入控件一文件路径输入控件操作完成即可。其结果在前面板上也有显示。完成后在程序框图接线,结果如图3-2所示:WindowsMediaPlayer 5 *!WMPPIayer4 S卜URLcontrolsS-+ IWMPControls Splay图3-2媒体播放器调用的实现3.1.3当前播放曲目显示的实现利用拆分路径控件拆分出“文件名称”和连接字符串连接“正在播放”常量,可实现对当前播放曲目的显示, 在前面板添加一个字符串显示控件即可显示出当前播放曲目。控件连线的实现如图3-3所示:|正在搔底:q营戒列表图3-3正在播

9、放曲目的显示实现3.1.4事件结构的设置事件结构的设置:首先按照函数编程结构事件结构的步骤找出事件结构,然后起参数设定过程如下:右键单击事件结构即可出现编辑事件对话框,然后取消左下角的锁定前面板,将事件源修改为“停止”,事件修改为“值改变”。再锁定前面板,即可得到 下面的对话框。点击确定保存即可。操作界面设置如果3-4所示:0'1¥lt":值遐詡毎孚嘴B由由-国逋 塔粧 拓畫停止4.+ 圖価牛X aa除« |1FI:主;£書養布屈瓷件中眩値改变剰锚处理井不誉岂训躍筑幡翡柞.必硕读取氓轴件 摂嶷洁弐疽后才誉正嗨若岌直生4钺怎前匱後(迁迪处理址曲阪的

10、用户撞咋)旦至却才令支完成祸走确 _幫助图3-4事件结构的参数设定对话框完成后再事件结构中添加停止按钮,用以停止程序的运行。3.1.5路径及其转化实现路径至字符串转换的查找:在程序框图中按照:函数一一编程一一字符串一一字符串/数组/路径转换一一路径至字符串转换的步骤即可找到路径至字符串转换函数。3.2程序整体结构加上一个文件路径不正确的报错,整理改对本章前面所述的各部分模块程序进行整合, 进后得到如图3-5所示的整体程序结构图:图3-5整体程序框图前面板界面经过调整设计后如图3-6所示:图3-6前面板示意图4程序改进最初笔者不理解属性节点调用的方法,花费大量时间编写了播放 WAX格式的播放器,

11、颇为复杂,在老师的提醒和同学的帮助下,我又一次查阅资料完成了 MP3播放器的程序,此程序不再仅限于WAV格式的播放,对MP3格式也能很容易的实现播放。5存在的一些问题(1) 文件路径报错设置中应用了“声音文件信息”控件,由于不能识别WAX以外的格 式,所以播放 WAV格式以外的声音文件也会报错,但不影响正常播放。(2)快进、快退、上一曲,下一曲功能未能实现。文件的播放只能针对单一文件,未能实现播放列表功能。6结论本来觉得这次课程设计也许好多人都设计不出,老师会放松些,但刚过去一天就听说有同学已经设计的差不多了,这给我施加了不小的压力,看来必须要自己动手了。尽管这个设计要求并不多, 当真正是自己

12、一步一步设计出的,当看到自己一步一步的成果,心里的那个喜呵呵真的要自己体会才知道。我想说:没有什么做不到的,不要畏惧,要 敢尝试。当然,能够完成此课程设计, 功劳不能归功于我一人, 非常感谢老师的教导和指点还有 同学的帮忙,才让我能够在有限的时间内完成课程设计。因为说真的刚开始打算设计时不是很自信,由于从来没有弄过类似的课程设计,感觉自己没有能力完成因为关于此课程设计的课程学的不怎么好,但最终还是做出来了, 我真的感觉不可思议,所以我觉得和做任何事情 都一样要有勇气尝试。其实我在设计时更多的是模仿了相关的资料和方法。通过这门课不仅学到了基本的知识更重要领悟到了新的思维方法,我觉得这是自己最大的

13、收获。从这次的课程设计使我领悟到了一些做课程设计的技巧也是步骤:1. 设计性课程设计最重要的是要有一条清晰设计思路,在设计前,老师已为我们准备好了参考格式或资料,相当于已经给了设计路, 关键就是靠自己深入的思考各个步骤怎么设计 的对每个步骤都要做到分析、思考设计,再去执行,再将所有的部分组装在一起,就可完成该设计2. 此次课程设计要多练习多思考弄懂每个实验的设计思路,并且能够设计自己的东西这样你会感到其乐无穷3. 在以后的实验设计当中还应注意培养自己独立思考设计思路的能力不要怕难4. 许多事情只有在自己亲手做了之后才会感觉到,其实它并不是你想象中的那样难或简单要善于专心深入的思考问题,所学知识

14、要常用。对于学完这一门课程来说,使我懂得了一个道理:也许只有用自己所学的知识做出一个可以实际运行的东西之后才能确实体到自己的学习是有价值的,但在如今的教育制度和社会背景下,叛逆的人也许在抱怨:“为什么想学的东西学不到,不想学的偏要学”。我觉得多的人已经麻木 “因为学校开了课,所以我得学, 因为别人都在考,所以我也得考”。至于为什么要学,为什么要考,考了有什么用? ?自 己也不知道,知识是拿来学的,不是用来考的。技术是拿来用的,不是学了以后就丢在一边的。对于老师的教学来说, 也许最重要的不是怎么把知识灌输给学生,而是要让学生明白为什么要学,怎么让学生有兴趣去学。所以非常感谢老师这次给我们这课程设计,给了我挑战自己的机会,做什么事都应该大胆的尝试,怕就怕被自己吓倒!

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论