嵌入式远程音乐播放器的设计.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式远程音乐播放器的设计.doc

嵌入式远程音乐播放器的设计   【摘要】 随着嵌入式系统的不断发展和网络的广泛普及,智能家居也逐步走入生活。论文从智能家居的理念出发,以现代网络为桥梁,以智能手机为控制平台,以家居音乐播放器为控制对象,对嵌入式音乐播放器的开发以及远程控制作了详细的分析与论述,并给出系统关键技术的设计思路和设计过程。   【关键词】 安卓系统 嵌入式ARM 远程控制   引言   智能家居控制系统以家居电器及家电设备为主要控制对象,利用综合布线技术、网络通信技术、安全防范技术、自动控制技术、音视频技术将家居生活有关的设施进行高效集成,构建高效的住宅设施与家庭日程事务的控制管理系统,提升家居智能、安全、便利、舒适,并实现环保控制系统平台。其中家居电器控制采用弱电控制强电方式,既安全又智能,可以用遥控、定时等多种智能控制方式实现对在家里饮水机、插座、空调、地暖、投影机、音像设备以及新风系统等进行智能控制,用以避免饮水机在夜晚反复加热影响水质,在外出时断开插排通电,避免电器发热引发安全隐患等等。本系统设计正是在这样的背景下产生,并以家居音频设备为控制对象。整个系统的设计是通过随身携带的智能手机利用无线网络和家庭无线路由对嵌入式ARM为核心的音乐播放器进行远程操控。下文是对整个系统的设计原理和设计过程的详细论述。   一、总体方案设计   整个系统由智能手机、路由器、开发板三个部分组成。智能手机通过连接无线信号实现与开发板的通信,这里由于所使用的mini2440开发板缺少无线网卡的支持,所以路由器充当了无线网卡的作用,负责发射无线信号:   1.1 硬件方案   硬件平台选用友善之臂提供的mini2440开发板,处理器采用基于ARM9内核的Samsung S3C2440。由于S3C2440内部配有64M SDRAM,256M NandFlash,所以完全可以胜任内部的音频解码任务。另外,为了保证系统运行时的稳定性,采用了专业的CPU内核电源芯片和复位芯片。相对来说,手机的选择比较自由,只要是安卓系统的智能手机都可以,在APP测试时,要求手机的安卓操作系统是Android2.3版本或以上。   1.2软件方案   要将硬件设备连接并且工作,关键是软件的开发,因此软件开发环境的选择很重要。整个系统的软件开发主要包括操作系统的裁剪和移植、音频播放程序的开发、Android应用的开发三个部分。音频解码采用软件解码。主要是利用CPU进行音频数据的解码,这需要在Linux操作系统下移植一个开源音频解码库--madplay。采用软件解码虽然增加了CPU的开销,但大大缩短了开发时间,而且不需要考虑解码芯片的选择和驱动问题。   智能手机选用了安卓的操作系统,主要考虑到安卓系统是一种基于Linux的自由及开放源代码的操作系统,且市场占有量较高,2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%,全世界采用这款系统的设备数量已经达到10亿台,2014年第一季度Android平台已占所有移动广告流量来源的42.8%,首度超越iOS(运营收入不及iOS)。   二、软件开发   2.1 操作系统裁剪   操作系统的裁剪是系统设计的重点,一个精简的操作系统不仅可以加快系统的开机时间,还能减小CPU的开销,使系统运行的更加流畅。操作系统由uboot、内核、文件系统组成,需要裁剪的部分包括内核(去掉不必要的配置)以及文件系统   2.2 音频解码数据库的移植   madplay是linux下的开源音乐播放器,利用开源解码库libmad实现音频的编解码,目前该播放器除了不支持网络歌曲的播放外,其余功能都支持,如快进、暂停、继续等。开发人员需要自己开发一个自己的可视化界面或者播放器的管理程序,这样使用起来才方便、快捷。系统设计时需要在开发板的ARM内核上运行madplay可执行文件,所以移植madplay也是本次设计的重要环节。   2.3 音乐播放器设计   播放器的核心代码就是音乐的播放程序,在整个行程序运行时的内部主控流程:   父进程负责接收按键信息或者socket信息。监听部分由select()函数完成,当按键或者socket文件描述符发生变化的时候,父进程首先判断按键或者socket信息,根据不同的信息向子进程或者孙进程发送不同的信号。如,父进程收到的按键信息是“暂停”,调用kill()函数向子进程和孙进程发送SIGSTOP信号就可以暂停音乐的播放。   2.4 Android应用程序设计   Android操作系统下设计控制软件可简可繁,这里的界面的设计由于缺少专业UI的支持,所以设计的比较简单。用到的控件主要有B

文档评论(0)

神话 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:5203223011000000

1亿VIP精品文档

相关文档