功率电感生产厂家
联系我们
热门搜索
点击排行
推荐阅读
猜猜你喜欢的
技术知识 您所在的位置: 首页 > 技术知识

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

来源:    作者:    发布时间:2014-12-16 10:43:50    浏览量:

  Register0:左声道输入音量控制,缺省值为 0x0017

  Register1:右声道输入音量控制,缺省值为 0x0017

  Register 2:左声道输出音量控制。缺省值为Ox01F9

  Register 3:右声道输出音量控制,缺省值为Ox01F9

  Register 4:模拟音频通道设置.缺省值为Ox0011

  Register一体电感 5:数字音频通道设置。缺省值为0x0000

  Register 6:节电模式控制.缺省值为0x0000

  Register 7:数字音频接口格式控制,缺省值为0x0043

  Register 8:采样率控制,缺省为48kHz,对D贴片电感M642EVM板.缺省值为Ox0002

  插件电感Register 9:数字音频接口激活开关.缺省值为0x0001

  通常情况下需要修改的寄存器包括4号和8号寄存器.即选择是由mic输入还是由line in输入和根据需要选择采样率。这2个寄存器的详细配置如下:

  4号寄存器配置见表1,其中,D2位。INSEL(In-put select for ADC)是输入选择,“O”为line in;“l”为mic.D1位MICM(Microphone mute)是mic静音开关.为“l”表示静音。DO位MICB(Microphone b共模电感器oost)如设置为“1”将为mic输入提供20dB的增益。8号寄存器配置见表2,其中,采样率控制位为D5~D2的SR[3:O]。对于DM642 EVM板,设置方式见表3。

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

可见.需要通过4号寄存器的D2来选择输入,同时考虑Dl和DO对mic的控制;采样率的控制通过设置8号寄存器的SR[3:0]来实现。

  3 TLV320AIC23的驱动配置方法

  很多初学者在运行DM642 EVM的echo或其他音频例程时,最容易碰到的问题是通过line in输入时有输出.而通过mic输入时没有输出,更不要说改变采样率了。即使参考资料编辑aic23-h和emvdm642_edma_aic23.h修改Dcfauh参数仍然无法解决。

  出现这样的问题时。首先要了解TLV320AIC23的模拟音频输入为mic和line in二选一的,其次要知道如何能够正确配置TLV320AIC23的参数使之满足特定应用的需要。如果仔细分析echo例程和其他音频例程的话,可以发现只有在echo例程中包含了aie23.h和emvdm642_edma_aie23.h 2个头文件。其实在echo例程中.所包含的这2个头文件和TLV320AIC23的初始化语句实际并未使用。如果屏蔽掉对这2个头文件的包含以及TLV320AIC23的初始化语句,会发现编译后仍然能够正常运行。实际上echo例程中的TLV320AIC23初始化语句只是提供了对Ⅱ,V320AIC23进行配置的一种方法而并未直接使用。该方法在DDK包的emvdm642部分共模电感参数说明文件中也已提及。

  由于在echo例程中初始化驱动程序人口和其他的音频例程一样使用了默认参数,而默认参数是通过调用DDK包中的evmdm642_edma_aic23.164库获得的.该库不变则配置也不变,于是就会出现上述问题。

  在明确了以上原理后.通过实践证明,本文提供的以下三种配置方法可以适应各种应用。

  方法一

  既然默认参数是通过调用evmdm642_edlna_a-ic23.164库获得的.那么自然可以通过修改该库来达到修改参数的目的。TI提供的DDK包中包含了各种库的源代码.这使得修改库文件成为可能。本文用到的库生成工程是tiddksrc\audio\evmdm642目录下的evmdm642_edma_mc23_64.pjt,只需要打开该工程.修改其中aic23.h中的默认参数,重新编译就能生成新的库文件。这样,所有的音频例程都会默认按修改过的参数运行。

 这种方法适合TLV320AIC23参数配置相对固定的应用场合。配置完全通过调用evmdm642_ed_ma_aic23.164库初始化时进行.不用在应用工程文件中添加任何附加代码.使得工程文件更简洁.可移植性更高。

  方法二

  自定义符合标准结构EVMDM642_EDMA_A.IC23一DevParams的结构体,例如:

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

  然后将“_myParms”作为Device params ptr在指定人口指针时替代默认的0x0。这就符合TI推荐的方法,在echo例程中的相关代码也说明了这种方法。

  这种方法能够适应几乎任何使用情况,初始化参数自定义非常明确,代码易读性较高。但是不建议像echo例程中那样直接包含默认参数的头文件.最好参照该头文件定义自己的结构体。

  • 基于OMAP-L138的数字示波器微处理器硬件设计 引言随着通信技术的迅猛发展,电信号越来越复杂化和瞬态化,开发人员对测量领域必不可少的工具 数字示波器的性能提出了越来越高的要求。最大限度提高实时采样率和波形捕获能力成为了国内外众多数字示波器生产厂商

  • 多相 DC/DC 转换器在整个负载范围内提供了高效概述近年来,随着因特网服务需求量的显著增长,全球数据中心的电力消耗已经成为一个重要的问题。数据中心可编排网页、实现社会网络和流媒体服务、提供音乐和视频下载、提供互联网访问以及运行仿真。另外,它们还为银

  • 基于虚拟现实的三维户型展示系统摘要:通过3D Studio MAX结合Cosmo World、VrmlPad和Java语言制作虚拟场景,嵌入网页来展示小区户型及其周边环境,在二维导航图中实现视点跳转、实时导航,在虚拟环境中进行交互

  •