基于Android的嵌入式音频系统.docx
- 文档编号:29814769
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:43
- 大小:1.52MB
基于Android的嵌入式音频系统.docx
《基于Android的嵌入式音频系统.docx》由会员分享,可在线阅读,更多相关《基于Android的嵌入式音频系统.docx(43页珍藏版)》请在冰豆网上搜索。
基于Android的嵌入式音频系统
基于Android的嵌入式音频系统
摘要
Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。
本课题设计了一个基于Android的嵌入式音频系统。
该系统主要实现了音频的采集、存储、播放和传输。
采集是通过SD卡中所拥有的声音或者Android自带的麦克风进行声音采集;处理是在音频的采集过程中对音频所采集到的声音编码的方式的规定;存储是对已采集处理完成的音频的保存;播放是实现对音频的开始播放、暂停、继续,重播、停止功能;传输是将播放音频的位置传递给播放器进行播放;传输是指开发板与PC之间的音频文件传送。
系统硬件平台采用飞凌OK6410开发板,软件平台采用android操作系统。
论文对嵌入式系统进行了较详细的介绍,阐述了OK6410开发板的结构和特性,分析了android操作系统的原理,研究了音频系统的应用开发过程,描述了android开发环境建立方法,并设计实现了音频采集、存储、处理、播放和传输的功能。
关键词:
android、嵌入式系统、音频系统、飞凌OK6410
Abstract
ThewordAndroidmeaningreferstothe"robot",AlsoGoogleannouncedonNovember5,2007thattheLinuxplatformbasedonopensourcemobilephoneoperatingsystemname,theplatformbytheoperatingsystem,middleware,userinterfaceandapplicationsoftware,whichisthefirstforthemobileterminaltocreateatrulyopenandcompletemobilesoftware.ThesubjectofadesignbasedontheAndroidembeddedaudiosystem.Thesystemismainlytoachievetheaudiocollection,storage,andbroadcasttransmission.AcquisitionbytheSDcardwithvoiceorAndroidbuilt-inmicrophonesoundcollection;processingisintheaudioduringacquisitionofaudiocollectedvoicecodingrules;storageisonacquisitionandprocessingcompleteaudiopreservation;playistorealizetheaudioplay,pause,continue,thereplay,stopfunction;transmissionistheaudioplayingpositionispassedtotheplayerforplaying;transmissionreferstothedevelopmentboardaudiofiletransferbetweenPCand.ThesystemhardwareplatformbyfillingtheOK6410developmentboard,softwareplatformbasedontheAndroidoperatingsystem.Researchonembeddedsystemindetail,describestheOK6410developmentboardstructureandcharacteristics,analysisoftheAndroidoperatingsystemprinciple,studiestheaudiosystemdevelopmentprocess,describedintheAndroiddevelopmentenvironmenttoestablishmethods,designandrealizetheaudiocollection,storage,processing,andbroadcasttransmissionfunction.
分享到
翻译结果重试
抱歉,系统响应超时,请稍后再试
∙支持中英、中日在线互译
∙支持网页翻译,在输入框输入网页地址即可
∙提供一键清空、复制功能、支持双语对照查看,使您体验更加流畅
KeyWords:
android、Embeddedsystem、Audiosystem、ForlinxOK6410
目录
1.绪论3
1.1当前市场需求分析3
1.2android操作系统简介3
1.3嵌入式音频系统概述4
2.嵌入式音频系统总体设计4
2.1音频嵌入式系统总体设计4
2.2嵌入式系统的概念6
2.2.1嵌入式系统的定义6
2.2.2嵌入式系统的特点6
2.2.3嵌入式系统的历史6
2.2.4嵌入式系统的组成7
3.音频系统的硬件设计7
3.1音频系统硬件设计框架7
3.2OK6410开发板硬件结构8
3.3ARM简介10
3.4S3C6410处理器特性10
3.5WM9714L音频芯片12
4.音频系统软件开发13
4.1音频系统软件开发流程13
4.2android操作系统原理13
4.2.1android定义13
4.2.2android的发展历史13
4.2.3android的应用开发前景14
4.2.4android应用开发工具14
4.3音频系统软件开发方法14
4.3.1创建个人audioplay14
4.3.2播放组件定义16
4.3.3软件布局设计16
4.3.4src文件编程设计16
4.3.5模拟仿真……………………………………………………………………………………16
4.4音频系统相关流程与程序17
5.音频系统集成与测试20
5.1需要的PC环境和软硬件20
5.2集成开发环境下载20
5.3集成开发环境安装20
5.3.1javajdk的安装20
5.3.2eclipse安装20
5.3.3androidsdk安装……………………………………………………………………………21
5.3.4驱动usb安装………………………………………………………………………………21
5.4音频程序加载方法22
5.4,1编译程序步骤………………………………………………………………………………22
5.4.2程序放到开发板方法……………………………………………………………………..22
5.5音频系统测试22
5.5.1模拟器仿真方法22
5.5.2测试结果23
结论25
致谢26
参考文献26
附件…………………………………………………………………………………………………………27
1.绪论
1.1当前市场需求分析
随着计算机技术、电子技术和通信技术的迅猛发展,嵌入式系统已经成为最热门、最有前途的IT应用领域之一,成为通讯和消费产品的共同发展方向。
它广泛应用在人们工作生活的各个方面,几乎包括了所有的电器设备,如电视机顶盒、手机、数码相机、汽车、电梯、空调、微波炉、工业自动化设备和医疗仪器等等。
在嵌入式技术快速发展的同时,嵌入式音频设备已然成为当今人类生活中的热点。
从个人消费级的MP3、MP4、音乐手机、车载音频系统到专业级需求的如百货公司、酒店、机场、播音电台等大型场合的广播系统,嵌入式音频设备正发挥着重要的作用。
当前,嵌入式音频设备正向着播出品质更加专业化、功能更加全面化、操作更加人性化、体积更加小型化、兼容网络化播出的方向发展,并且兼具嵌入式设备可定制性强、功耗低、性价比高的特点。
可见音频系统领域的研究有着非常广阔的前景。
在MP4、手机等消费类电子产品中,人们对于这些个人终端的要求早已不限于单纯通话和简单的文字处理,高质量的音效和实时的音频定制更是当前发展的重要趋势。
1.2android操作系统简介
Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。
目前,最新版本为Android2.4Gingerbread和Android3.0Honeycomb。
Android是基于Linux开放性内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统。
Android早期由原名为"Android"的公司开发,谷歌在2005年收购"Android.Inc"后,继续对Android系统开发运营,它采用了软件堆层(softwarestack,又名软件叠层)的架构,主要分为三部分。
底层Linux内核只提供基本功能,其他的应用软件则由各公司自行开发,部分程序以Java编写。
2011年初数据显示,仅正式上市两年的操作系统Android已经超越称霸十年的塞班系统,使之跃居全球最受欢迎的智能手机平台。
现在,Android系统不但应用于智能手机,也在平板电脑市场急速扩张,在智能MP4方面也有较大发展。
采用Android系统主要厂商包括台湾的HTC,(第一台谷歌的手机G1由HTC生产代工)美国摩托罗拉,SE等,中国大陆厂商如:
魅族(M9),华为、中兴、联想、蓝魔等。
1.3嵌入式音频系统概述
嵌入式音频系统广泛应用在GPS自动导航、PDA、3G手机等嵌入式领域,目前国内在这方面的研究较少。
嵌入式音频系统是传统音频电路的延伸,可以运行操作系统和应用软件,操作更兼简单,产品功能更丰富,降低了成本,提高了性能。
嵌入式音频系统同时具有嵌入式系统和音频系统俩个方面的特点。
音频系统是多媒体应用的一个重要组成部分,受环境噪声和电源噪声的影响较大,对声音的控制比较复杂,所以在设计嵌入式音频系统的时候要充分考虑到所设计产品的工作环境和一些被告知的条件,除了将音频系统成功融入到系统设计中去之外,还要尽可能的表现出最佳的音响效果。
基于Android的嵌入式音频系统,拥有一个比较标准和健全的架构。
从上层应用,javaframework服务AudioMananger,本地服务AudioFlinger,抽象层AlsaHAL,本地库,再调用external的Alsa-lib外部支持库,最后到底层驱动的codec,可谓"五脏俱全"。
现在在嵌入式系统中,音频模块是大多数产品不可或缺的一部分。
本文的主要工作就是研究基于android的嵌入式音频系统。
系统硬件平台采用飞凌OK6410开发板,软件平台采用android操作系统。
对嵌入式系统进行了较详细的介绍,阐述了OK6410开发板的结构和特性,分析了android操作系统的原理,研究了音频系统的应用开发过程,描述了系统集成开发环境的建立方法,并设计实现了音频采集、存储、处理、播放和传输的功能。
2.嵌入式音频系统总体设计
2.1音频嵌入式系统总体设计
1.总体设计流程图如下:
图1.总体设计流程图
系统需求分析:
根据需求,确定音频系统所要完成的任务和所要达到的目标,最后制
设计说明。
体系结构设计:
描述系统对硬件、软件的功能需求,以及包括这两方面的选型等。
软硬件设计:
根据体系结构设计,对软硬件进行详细设计,其中大部分都集中在软件
设计上。
系统集成:
对系统的软件和硬件集成在一起进行综合调试,发现不足时实施改进。
系统测试:
对设计好的系统进行测试,检验系统是否满足设计目标。
2.音频系统体系结构图如下:
图2.系统物理结构流程图
音频编解码器Codec负责处理音频信息,包括ADC,DAC,Mixer,DSP,输入输出以及音量控制等所有与音频相关的功能。
Codec与处理器之间通过I2C总线和数字音频接口DAI进行通信。
I2C总线-实现对Codec寄存器数据的读写。
DAI-实现音频数据在CPU和Codec间的通信。
本设计硬件平台的是基于ARM11内核的S3C6410处理器的OK6410开发板,软件开发平台选择了android操作平台,通过Java编译音频系统程序。
2.2嵌入式系统的概念
嵌入式系统早已广泛应用于各个领域,它是一个广义的概念,从总体上嵌入式系统可以分为硬件和软件俩部分。
硬件一般由高性能的微处理器和外围接口电路组成,软件一般由实时操作系统和其运行的应用软件构成,软件和硬件之间由中间层联系。
嵌入式处理器是嵌入式系统的核心,它的类型很多,对嵌入式系统的研究,不仅需要了解基本概念、基本原理,还需要研究特定类型的微处理器。
2.2.1嵌入式系统的定义
嵌入式系统作为一项正在迅速发展中的、应用范围极为广泛的技术,由于观察和描述的角度不同,对于其定义有多重不同的提法。
从嵌入式系统的基本特点出发,可以将嵌入式系统定义为:
嵌入到对象系统中的专业计算机系统,其中的对象是指嵌入式系统所嵌入的宿主系统。
目前在国内被普遍认同的定义是:
嵌入式系统是以应用为中心、以计算机技术为基础,软硬件均可裁剪,能满足应用系统对功能、可靠性、成本、体积、功耗等指标要求严格的专用计算机系统。
它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成。
2.2.2嵌入式系统的特点
嵌入式系统虽然在定义上有不同的描述,但可以从这些定义中看出,嵌入式系统具有以下几个方面的特点:
1.嵌入式系统是面向用户、面向产品、面向应用的;
2.嵌入式系统功耗低、体积小、专用型强;
3.嵌入式系统有较高的执行速度和高可靠性;
4.嵌入式系统的硬件和软件都必须高效率地设计,系统要精简,操作系统和应用软件集成在一起。
5.对软件代码质量要求很高,应该尽最大可能避免死机的发生。
6.嵌入式系统开发需要专门的开发工具和开发环境,一般采用交叉编译环境。
2.2.3嵌入式系统的历史
嵌入式系统的发展历史悠久,经历了从简单的处理器到单板机、单片机、再到加载了操作系统的开发板这样一个过程。
纵观嵌入式技术的发展,大致经历了以下3个阶段:
第一阶段是以单芯片为核心的可编程控制器形式的系统,同时具有检测、伺服、指示设备相配合的功能。
这种系统大部分用于一些专业性极强的工业控制系统同中,一般没有操作系统的支持,通过汇编语言编程对系统进行直接控制,运行结束后清除内存。
这一阶段系统的主要特点是:
系统结构和功能都相对单一,处理效率较低,存储内容较小,几乎没有用户接口。
这种嵌入式系统使用简便、价格很低,远远不能适应高效的、需要大容量存储介质的现代化工业控制和新兴的信息家电领域的需求。
第二阶段是以嵌入式CPU为基础、以简单操作系统为系统核心的嵌入式系统。
这一阶段系统的主要特点是:
CPU种类繁多,通用性比较弱;系统开销小,效率高;操作系统具有一定的兼容性和扩展性;应用软件较专业,用户界面不够友好;系统主要用来控制系统负载以及应用程序运行。
第三阶段是以嵌入式操作系统为标志的嵌入式系统。
这一阶段系统的主要特点是:
嵌入式操作系统能运行于各种不同类型的微处理器,兼容性好;操作系统内核精小、效率高,并且具有高度的模块化和扩展性;具备文件盒目录管理、设备支持、多任务、网络支持、图形窗口以及用户界面等功能;具有大量的应用程序接口,开发应用程序简单;嵌入式应用软件丰富。
2.2.4嵌入式系统的组成
一个完整的嵌入式系统由硬件和软件俩部分组成,其中硬件系统又可分为嵌入式微处理器、存储器和I/O等嵌入式外部设备俩部分,软件系统又可分为嵌入式操作系统和嵌入式应用程序两部分,如图所示。
嵌入式应用程序
嵌入式软件
嵌入式操作系统
嵌入式硬件
微处理器
外设
图3.嵌入式系统的组成结构
目前基于各种嵌入式处理器的硬件平台已经有了比较成熟的技术,同时嵌入式操作系统屏蔽了底层硬件的复杂性,使得开发者通过操作系统提供的接口函数就可以完成大部分工作,因此大大简化了嵌入式系统的开发过程,使得嵌入式系统开发者可以从设计硬件的开发平台中解脱出来,将主要精力放在实现特定的应用程序上。
3.音频系统的硬件设计
3.1音频系统硬件设计框架
本次设计选用飞凌OK6410开发板为硬件平台。
该开发板采用了基于ARM11内核的三星公司设计研发的S3C6410为处理器,选用了WM9714L音频解码芯片,并使用NandFlash存储器,配置MobileDDR内存。
音频系统的硬件设计框架如下图所示:
图4.音频系统硬件框架
3.2OK6410开发板硬件结构
飞凌OK6410开发板采用“核心板+底板”的结构,核心板尺寸规格为5cm×6cm,底板尺寸为10.5cm×14cm,核心板与底板之间采用4组高质量进口连接器(镍金工艺,接触好、抗氧化),共计320个引脚(80×4),方便客户进行二次开发,进行各种形式的扩展应用。
OK6410开发板的设计严格按照CE、CCC等国内外电子产品认证标准,充分考虑高速信号的完整性等电磁兼容措施,确保OK6410开发板在严酷电磁环境下的可靠运行。
OK6410的软件系统目前支持WinCE6.0、LINUX2.6.28、Android2.1以及uC/OS-II,提供标准板级支持包(BSP)并开放源码,其中包含了所有接口的驱动程序,客户可以直接加载使用。
另外,该板可连接飞凌公司与之相配套使用的串口扩展板、WIFI模块、摄像头模块等。
此外,OK6410开发板上集成了多种高端接口,如复合视频信号、摄像头、USB、SD卡、液晶屏、以太网,并配备温度传感器和红外接收头等。
飞凌OK6410开发板结构如图所示:
图5.OK6410开发板硬件结构
一个复位按键,采用专用芯片进行复位,稳定可靠;
采用8位拨码开关设置系统启动方式;
共4个串口,包括1个五线RS232电平串口(DB9母座)和3个三线TTL电平串口(20pin2.0mm间距插头座);
1个100M网口,采用DM9000AE,带连接和传输指示灯;
1个USBHOST插口,支持USB1.1协议,可插鼠标、U盘等;
1个USBSlave接口,支持USB2.0协议,使用mini-USB插座,可与PC连接;
1个高速SD卡座。
可以实现SDMemory功能和SDIO功能;
1个无线网卡(WIFI),该接口可复用为SD卡接口;
3个3.5MM标准立体声音频插座。
其中包括1个音频输出插座,可与耳机连接;
1个话筒输入插座;1个线路输入插座;
触摸板接口支持4线电阻式触摸板;LCD接口支持3.5寸、4.3寸、5.6寸、5.7寸、7寸、8寸、10寸等TFTLCD,另外独家支持10寸LVDS液晶屏;
1路CVBS输出接口(PAL/NTSC);
1个CMOS摄像头接口,支持ITU-RBT601/6568位模式,使用10*2插针连接器;
内部实时钟,带有后备锂电池座,断电后系统时间不丢失;
1个JTAG接口,使用10×2插针连接器;
1个单线数字式温度传感器(DS18B20);
1个红外接收头;
4个LED;
1个蜂鸣器;
3个‘10×2’插针扩展口。
其中,一个扩展口包括1路GND、1路DA、8路、AD、10路IO、1路SPI;另一个扩展口用来扩展8×8矩阵键盘;第三个扩展口可连接3个TTL电平串口和6路IO(注:
3个串口中,包括1个五线串口和2个三线串口);
3.3ARM简介
随着微电子技术的快速发展,ARM处理器经历了包括ARM7、ARM9在内的多个发展历程,而ARM11的成熟应用必将为嵌入式的发展带来新的活力,使更高端的产品应用成为可能。
与ARM9的5级流水线相比,ARM11拥有一条具有独立的load-store和算术流水的8级流水线,在同样工艺下,ARM11处理器的性能与ARM9相比大约提高了40%。
ARM11执行ARMv6架构的指令,ARMv6指令包含了针对媒体处理的单指令流多数据流(SIMD)扩展,采用特殊的设计,以改善视频处理性能。
为了能够进行快速浮点运算,ARM11增加了向量浮点单元。
所有这些结构上的提高,都是ARM9处理器不可比拟的。
ARM11为便携式和无线应用,提供了从未有过的高超性能,并且使我们主要关心的成本和功耗减到最小。
ARM11的微架构保证了系统性能可以从基本的350-500MHz范围扩展到最终的1GHz以上。
其微架构的高效率表现,允许开发者根据不同的应用来调节时钟频率和电源电压,从而在性能和功耗之间达到最佳的折衷。
例如,一个基于ARM11的微架构的处理器在1.2V工作电压下,使用0.13um工艺实现,其功率将不会超过0.4mW/MHz。
ARM11微处理器是一种高性能、低功耗的‘准64位’微处理器!
对于目前大多数嵌入式应用,一个真正的64位处理器仍然被认为是不必要的,其巨大的功耗和面积让人难以接受。
对此,ARM11选择了一个折中的方案,以较小的代价,部分实现了一个64位微架构。
ARM11只在处理器整数单位和高速缓存之间,以及在整数单位和协处理器之间实现了64位数据总线。
这些64位数据道路允许处理器在一个时钟周期中同时获取两条指令,还允许在一个时钟周期执行多个数据读写指令。
这使得ARM11在执行很多特定序列的代码时能够达到非常高的性能,特别是那些允许数据搬移与数据处理并行处理的代码序列。
3.4S3C6410处理器特性
S3C6410是由Samsung公司推出的一款低功耗、高性价比的RSIC处理器,它基于ARM11内核(ARM1176JZF-S),可广泛应用于移动电话和通用处理等领域。
S3C6410为2.5G和3G通信服务提供了优化的硬件性能,内置强大的硬件加速器:
包括运动视频处理、音频处理、2D加速、显示处理和缩放等;集成了一个MFC(Multi-FormatvideoCodec)支持MPEG4/H.263/H.264编解码和VC1的解码,能够提供实时的视频会议以及NRSC和PAL制式的TV输出;除此之外,该处理器内置一个采用最先进技术的3D加速器,支持OpenGLES1.1/2.0和D3DMAPI,能实现4Mtriangles/s的3D加速;同时,S3C6410包含了优化的外部存储器接口,该接口能满足在高端通信服务中的数据带宽要求。
由于以上突出的性能表现,著名的苹果公司手机IPHONE就是基于S3C6410处理器。
S3C6410处理器架构如图所示:
图6.S3C6410处理器
S3C6410处理器采用ARM1176JZF内核,包含了16位的指令数据cache和16位的指令数据TCM,可达到533MHz的主频,另外这个内核通过AXI/AHB和APB组成64/32位的内部总线和外部模块相连。
RTC:
实时时钟,需外接一个32.768K的时钟,支持时间格式是BCB码格式,年/月/日/时/分/秒。
3个PLL分别对AHB/AXI/APB相连的模块提供时钟,还
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Android 嵌入式 音频系统