嵌入式Linux系统下基于UDA1341芯片的音频驱动程序设计.pdf
上传人:qw****27 上传时间:2024-09-12 格式:PDF 页数:4 大小:414KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

嵌入式Linux系统下基于UDA1341芯片的音频驱动程序设计.pdf

嵌入式Linux系统下基于UDA1341芯片的音频驱动程序设计.pdf

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第29卷第4期计算机应用与软件Vol.29No.42012年4月ComputerApplicationsandSoftwareApr.2012嵌入式LinuX系统下基于UDA1341芯片的音频驱动程序设计霍燃高丽萍陈庆奎(上海理工大学光电信息与计算机工程学院上海200093)摘要论述嵌入式Linux系统基于UDA1341芯片的音频驱动程序设计方法。该方法以UDA1341音频芯片及IIS(Inter-ICSound)总线为硬件架构,以OSS(OpenSoundSystem)模型为软件基础,可以方便地扩充到其他应用平台。以实验证明了该方法的有效性。关键词嵌入式LinuxUDA1341IIS总线OSS模型音频驱动中图分类号TP368.1文献标识码AAUDIODRIVERPROGRAMMINGBASEDONUDA1341FOREMBEDDEDLINUXSYSTEMHuoRanGaoLipingChenQingkui(SchoolofOptical-ElectricalandCoMputerEngineering,UniversityofShanghaiforScienceandTechnology,Shanghai200093,China)AbstractThepaperdiscussesanaudiodriverprogrammingdesignapproachbasedonUDA1341chipforembeddedLinuxsystem.ThismethodmakesuseofUDA1341audiochipandIISbusasthehardwarearchitectureandOSSmodelasthesoftwarefoundation.Itcanbeextendedtootherapplicationplatformsconveniently.Theeffectivenessoftheapproachisverifiedwithexperiment.KeyworDsEmbeddedLinuxUDA1341IISbusOSSmodelAudiodriver协议。通过该协议嵌入式处理器(如S3C2410)就可以与外部的0引言音频芯片(UDA1341TS)进行数据传输。IIS总线接口通常用5根线来与外部芯片进行连接(如图1所示)。它们是:音频系统是嵌入式系统应用中的一个重要组成部分,广泛I2SDI—串行数据输入线。应用在车载GPS导航、智能手机、DV摄像机、智能家居和公共I2SDO—串行数据输出线。场所的多媒体系统中。与传统的音频系统相比较,嵌入式音频SCLK—串行数据提供位时钟。系统具有操作简单,成本低廉,能有效地控制功耗并大幅提高产LRCLK—切换左右声道数据帧。品可靠性等特点。但要实现这些功能,系统开发和设计的难度MCLK—同步时钟。也相应地增大。嵌入式音频系统包括硬件部分和软件部分。本文所讨论的系统在硬件上使用的基于内部集成电路声音IIS[1]总线的音频系统体系结构。软件部分主要是以开放式声音系统OSS模型[2]为基础实现嵌入式Linux下的各种音频功能的驱动程序。本文以UDA1341TS音频编码解码芯片[3]为例,讨论了音频驱动图1IIS总线连接程序设计方法,而驱动程序的实现主要依赖于音频总线接口、相[4]基于ARM9的三星S3C2410微处理器内置了IIS总线接应硬件的工作原理以及在嵌入式Linux下设备管理方式和驱动口可直接与外音频芯片UDA1341TS的IIS接口相连接。为了使程序的体系结构。引脚个数尽可能少,S3C2410只使用了四条线引与UDA1341TS芯片相连:串行数据输入线(IISDI)、串行数据输出线(IISDO)、1IIS总线收稿日期:2011-06-28。国家自然科学基金项目(60203011);上海总线也常被写作为,是工业和嵌入式领域常采用的IISI2S市教委晨光计划项目(10CG49);上海高校选拔培养优秀青年教师科研专音频总线之一,它是Philips公司提出的串行数字音频总线传输项基金项目(SLG1007)。霍燃,硕士生,主研领域:嵌入式系统开发。第4期霍燃等:嵌入式Linux系统下基于UDA1341芯片的音频驱动程序设计17串行数据位时钟(IISCLK)、左右声道选择(IISLRCK)。具体引而实现对控制信号的传输如图2所示。脚连接方式如图2所示。2.2音频数据的传输CPU与外部芯片进行数据传输的方式有两种:一种是传统的中断方式,另一个是直接存储器存取DMA方式。音频数据的传输可以通过先入先出FIFO的寄存器队列来完成.但是由于S3C2410处理器的