基于DDK的TLV320AIC23型编解码器的驱动设计.doc

基于DDK的TLV320AIC23型编解码器的驱动设计.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于DDK的TLV320AIC23型编解码器的驱动设计

基于DDK的TLV320AIC23型编解码器的驱动设计 1 引言 tlv320aic23是ti公司推出的一款高性能立体声音频编解码器,内置耳机输出放大器,支持mic和line in二选一的输入方式,输入和输出都具有可编程的增益调节功能。tlv320aic23的模/数转换器(adc)和数/模转换器(dac)集成在芯片内部,采用先进的σ-δ过采样技术,可以在8khz至96khz的采样率下提供16bit、20bit、24bit和32bit的采样数据。adc和dac的输出信噪比分别可达90db和100db。同时,tlv320aic23还具有很低的功耗(回放模式为23mw,节电模式为15μw)。上述优点使得tlv320aic23成为一款非常理想的音频编解码器,与ti的dsp系列相配合更是相得益彰。 dsp/bios driver developer’s kit(ddk)是ti为简化驱动程序开发为tms320系列dsp及其evm板等提供的驱动程序开发套件。该套件为tms320系列各种外围器件提供完整的标准化驱动程序模型,使得驱动程序可以很方便地移植到其他应用中,大大提高驱动程序开发的效率。ddk是对每种tms320系列dsp都提供的芯片支持库(clip support library-csl)的补充,csl提供对外围器件寄存器配置及初始化等的低级控制,ddk完全通过csl对外围器件进行控制。简单的说,ddk建立在csl上层,所以用ddk来开发驱动程序将更为快捷且可移植性更好。 ddk为开发驱动程序定义了标准模型和一系列的api。为简化程序设计,标准模型又被分为二个层次,其中高层称为class driver,低层称为mini-driver。class driver与器件相对独立,完成诸如缓冲区管理和请求同步等功能,同时扮演着与api和mini-driver二者接口的角色。mini-driver完成特定的器件初始化和控制功能,它符合iom(i/o mini-driver)的接口标准。ddk的这种分层结构使得驱动开发人员仅需了解单一的mini-driver api就可以完成整体外围器件的驱动设计,而且这一过程比设计整个驱动程序要简单得多,因为class driver控制了缓冲区管理和同步等。ddk提供3种class driver,分别为sio/dio、pip/pio和gio,它们都可以和任何mini-driver结合使用。 2 tlv320aic23的驱动设计基础 ddk的标准模型结构如图1所示,高层的应用和低层驱动相互没有直接的关联,开发中只需通过class driver控制mini-driver。 下面以dm642 evm板为例,说明基于ddk的tlv320aic23的驱动程序设计方法。 首先,需要使用配置工具建立驱动程序的入口。在dsp/bios config下的cdb文件中,依次选择input/outputdevice drivers→user→defined drivers,在这些例程中一般已经添加了udevcodec,如果需要的话,用户可以自行添加或编辑。右键单击选择properties选项来编辑其属性,其属性应设置如下: 正确配置驱动程序入口后,就要按照需要设置相关的参数,下面具体讨论tlv320aic23参数的设置。 tlv320aic23的参数结构体原型如下:typedef struct 在一般应用中,上述结构体的大多数参数无需更改,需要修改的主要是aic23config,他是tlv320aic23控制寄存器值,需要通过它来控制tlv320aic23的工作模式、输入输出选择、采样率等重要参数。 除了复位寄存器外,tlv320aic23共有9个控制寄存器,每个寄存器控制字长为9bit,地址位为7bit,共有16bit。地址位为高7位而控制字在低9位。具体如下: register 0:左声道输入音量控制,缺省值为0x0017 register 1:右声道输入音量控制,缺省值为0x0017 register 2:左声道输入音量控制,缺省值为0x01f9 register 3:右声道输入音量控制,缺省值为0x01f9 register 4:模拟音频通道设置,缺省值为0x0011 register 5:数字音频通道设置,缺省值为0x0000 register 6:节电模式控制,缺省值为0x0000 register 7:数字音频接口格式控制,缺省值为0x0043 register 8:采样率控制,缺省为48khz,对dm642 evm板,缺省值为0x0002register 9:数字音频接口激活开关,缺省值为0x0001 通常情况下需要修改的寄存器包括4号和8号寄存器,即选择是mic输入还是由line i

文档评论(0)

docindpp + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档