This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux/TLV320AIC3104:TLV320AIC3104麦克风输入配置失败

Guru**** 1955920 points
Other Parts Discussed in Thread: TLV320AIC3104, TLV320AIC3104-Q1
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/758362/linux-tlv320aic3104-tlv320aic3104-mic-input-config-failed

部件号:TLV320AIC3104

工具/软件:Linux

【芯片型号】:
TLV320AIC3104
【平台】:
Qualcomm MDM9607
【问题描述】:
初始计划:
MIC1左通道输入,RIGHT _LOP/M输出
此解决方案没有问题。

当前修改的计划:
使用了两个通道,即左侧MIC1输入到RIGHT _LOP/M输出,另一个通道是左侧_LOP/M输出的右侧MIC1输入。
两个信道需要根据需要在两个信道之间切换。

从理论上讲,以下四条线路可以控制单个输入的方向,但配置随后不会完全生效。


输入1有两个输入方向,线路1连接到左ADC,线路4连接到右ADC。
输入2有两个输入方向,线路2连接到右ADC,线路3连接到左ADC。
根据我们的需要,一条路径为input1,线路4连接到右ADC,输入2输入路径完全断开。
另一条路径为input2 line 3连接到左ADC,输入1输入路径完全断开。
问题就出现在这里。 当输入1线路4连接到右ADC且所有输入2输入通道均已断开连接时,输入2操作寄存器配置无效,输入1和输入2的声音输入同时从输出通道广播; 使用input2 line 3接收左ADC时,所有断开输入2输入路径,断开输入2操作寄存器配置均不会生效,输入1和输入2输入声音同时从输出通道广播;
下面是我们的寄存器配置:

初始化配置:

Input1通道选择配置:e2e.ti.com/.../TLV320AIC3104_2D00_Q1_5F00_issue.docx

Input2通道选择配置

请帮助检查村民的配置是否有问题。 为什么无法关闭lnput?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    我不确定我是否清楚您的问题是什么,您是否可以发布一些图表来显示您想要做什么? 可能是您的注册配置?

    此致,
    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的先生
    请参阅随附的文档,其中的屏幕截图显示了我的解决方案配置problem.TLV320AIC3104-Q1_issue.docx

    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的先生

    请参阅随附的文档,其中的屏幕截图显示了我的解决方案配置问题。

    如上图所示,我们需要配置#1#2#3#4四条路径,#1#4#2路径断开,#3路径打开,或#1#4#2路径断开,#3路径打开,#4打开,#1#2#3路径关闭
    根据芯片手册,应单独配置以下寄存器。 R19 R21 R22 R24
    下面是我们的寄存器配置,两个麦克风仍可同时工作

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    #1#4#2路径已断开,#3路径已连接,或#1#2#3路径已断开,#4路径已连接
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的  先生

    您是否了解我们当前的问题?

    是否有任何更新?

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    我注意到两件事。
    首先:当您使用输入驱动PGA时,您将其配置为差分输入,但当您从PGA断开该输入时,您将其配置为单端输入。如果它是差分输入,则始终将其配置为差分输入。

    第二:您的第二个寄存器配置显示寄存器24的值为0x7C。这应该是0x78,因为3个最小有效位都是保留的。
    请进行这些更改并进行测试。

    此致,
    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的先生
    下面是我使用左侧MIC1进行呼叫的寄存器配置,发现右侧MIC1仍有语音输入
    [ 798.86.9831万 ]写入器寄存器0x0 vulae 0x0
    [ 798.87.4204万 ]刻录机寄存器0x13 vulae 0xFC
    [ 798.87.8088万 ]刻录机寄存器0x15 vulae 0xf8
    [ 798.88.1926万 ]刻录机寄存器0x16 vulae 0xFC
    [ 798.88.6889万 ]刻录机寄存器0x18 vulae 0x80
    [ 798.89.1385万 ]刻录机寄存器0x52 vulae 0x80
    [ 798.89.5312万 ]刻录机寄存器0x5c vulae 0x80
    [ 798.90.0329万 ]刻录机寄存器0x29 vulae 0x50
    [ 798.90.4384万 ]刻录机寄存器0x2b vulae 0x80
    [ 798.90.8057万 ]刻录机寄存器0x2C vulae 0x0
    [ 799.22.003万 ]刻录机寄存器0x56 vulae 0x6b
    [ 799.22.5303万 ]刻录机寄存器0x5d vulae 0x6b
    [ 799.22.961万 ]刻录机寄存器0xF vulae 0x28
    [ 799.23.3014万 ]刻录机寄存器0x10 vulae 0x28
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的先生:
    当我将R19配置为0xf8时,两个麦克风都没有声音输入。
    当我关闭右ADC时,两个麦克风仍有声音输入。
    因此,右ADC的配置无效,可以配置左ADC,但无法完全关闭麦克风的输入。
    此IC在其他用户的此方案中是否存在配置问题?

    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    TLV320AIC3104自2008年以来一直在发布,AIC33是AIC3104所基于的平台,它甚至在2006年之前发布。 在发布时,没有此问题的记录实例。您是否正在使用EVM? 它是全新的还是以前使用过? 如果以前使用过,是否用于任何ESD测试? 或者是否超过了ABSMAX额定值?

    我刚刚在EVM上测试了您的配置,没有任何问题。 如预期,当LINE1R连接到左ADC时,我只听到LINE1R,当line1L连接到右ADC时,我只听到LINE1L。

    您的输入级别是多少? 您需要提供有关测试的更多详细信息。

    此致,
    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 先生:

    此IC是全新的,以前未使用过,也未进行过老化测试。 我的配置是否有任何问题? 输入电平是否为增益或电压?

    您的演示板测试是正常的,可以合理地说它应该支持此功能要求。

    现在我真的有这个问题吗? 下一步如何调查?


    我将提供一个编解码器原理图来帮助检查电路。


    所有初始化配置和信道交换配置均已记录


    还需要我们提供什么信息,请描述具体的一点

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的先生
    mic1L的输入电压为8V
    mic1R没有输入上拉

    请注意。
    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的先生
    mic1R没有输入上拉
    mic1L的输入上拉电压为8V

    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    亲爱的:先生
    任何更新?

    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    提供测试设置的详细说明。 详细解释所有内容。 如何进行连接,如何进行测量,您所做的每个寄存器都将写入AIC3104。 如果可能,请向我们展示您的测试设置。

    我已经测试了您认为您的配置,它对我来说还可以。 要尝试的一件事是读取寄存器19-24以确认它们与您的配置匹配

    此致,
    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    用户,

    等待...麦克风输入摆动为8V?  您当然意识到输入引脚的ABSMAX是AVSS-0.3V至AVDD+0.3V,对吗?

    如果AVDD =3.3V ,则此输入范围为0.3 至3.6V。   如果您将输入电压降低到正确的输入电平范围内,并且该行为仍然不正确, 则可能是您损坏了设备。

    此致,

    -Steve Wilson

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的先生

    请检查我发送的原理图,尽管我们的输入电压为8V,但有一个外设保护电路。 8V是MIC直流电源,编解码器之间有一个直流阻塞电容器。 实际输入信号幅值约为1V。 请帮助检查是否存在问题。
    我读过R19~R24的寄存器,这确实是我写的值。
    ADC静音是正常操作。

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    很贵

    我的步骤如下:

    1.初始化系统引导驱动程序后,将其配置为文档TLV320AIC3104-Q1_issue.docx初始化配置:
    2.系统启动后,当您开始进行呼叫时,首先切换信道并执行寄存器配置,如Input1信道选择配置
    另一个通道交换机寄存器配置称为Input2通道选择配置

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的  先生:

    具体的两个数据通道如下图所示。 绿色箭头部分表示一个通道输入1,对应的输出通道为输出1;红色箭头表示一个数据通道输入2,对应的输出通道为输出2;

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    同样,我已经使用您的配置设置了AIC3104,它工作正常。

    1.您能否运行"input1 channel selection configuration"(输入1通道选择配置),然后读取寄存器15-24?
    2.然后运行"input2 channel selection configuration"(输入2信道选择配置)并再次读取寄存器15-24。

    此致,
    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的先生
    我已经读取了R19到R24寄存器的值,这些值与我写入的值相同。
    我们的原理图电路设计是否存在任何问题?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    C902未填充,正确吗? 那里应该没有电容器。

    关于IN1R输入,此麦克风是单端的吗? 如果是这样,此麦克风的负极端子应直接连接到GND,IN1RM针脚上的C910应连接到GND。

    此致,
    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 先生:

    电容器C902没有贴纸,我们没有使用微偏。

    mic1R是差分输入模式,

    此麦克风的负极端子:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    好的,我建议不要调用该节点"MIC_IN_GND],因为它不是GND。

    我们已经看到您的配置和原理图,它们看起来都很好。 我已经在EVM上测试了您的配置,它工作正常。 TLV320AIC3104也没有任何历史记录和此问题(测试程序仍会清除任何未通过此测试的芯片)

    您是否还测试了多个AIC3104设备? 此设备是否可能已损坏?

    我想查看您的测试设置。 显示测试设置以及输入和输出信号测量值的图片或方框图。
    请尽可能多地显示详细信息。

    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 先生
    mic1R和mic1L都在差分输入中工作  

    我们已更换了四个设备进行测试,所有设备都有相同的问题。

    这是我的测试步骤

    驱动程序初始化寄存器配置
    上一个回复中介绍了信道切换寄存器的详细配置。

    稍后将提供输入和输出信号的测量值

    目前怀疑的是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    请为此设备提供完整的寄存器转储。 阅读第0页上的每一个寄存器,并在此处提供完整的读数。

    此外,如果您能提供我要求的有关您的测试设置的详细信息,那仍会很有帮助。 我想知道你是如何测试的。 我已经多次提到,我已经测试了您的配置,并且它在我的最后工作正常。了解AIC3104故障的历史,并且您还测试了4种不同的设备,这使我相信这不是设备损坏/故障的问题。 所以有些东西是不好的。 您的测试程序有问题,或者您为我提供的配置不完整。

    此外,请提供I2S行的屏幕截图。BCLK,Wclk,DIN和DOUT。

    此致,
    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 先生:

    我不太理解您需要什么"关于您的测试设置",具体来说,步骤是什么,我已经为您绘制了一个结构图。

    以下是所有与编解码器相关的操作流寄存器配置和寄存器转储;

    I2S系列的BCLK,Wclk,DIN和DOUT波形在后面提供。

    初始编码解码器寄存器:
    1)拉出重置GPIO以重置  
    2)写寄存器:
    以下是所有寄存器初始化配置。 其它未配置的寄存器是默认设置的。
     {0x00,0x00},//选择第0页
       {0x2a,0x9C},//PAGE 0 Register42 Driver Power-On Time 800ms, RAME-UP 4ms
       {0x13,0xfc},//R19//IN1LP/IN1LM差分模式和左ADC控制-它应该是差分模式而不是单端模式,否则将创建DC偏移
     {0x15,0x80},//R21//IN1RP/IN1RM差分模式和左ADC控制
     {0x16,0xfc},//R22//IN1RP/IN1RM差分模式和右ADC控制
     {0x18,0xf8},//R24//IN1LP/IN1LM差分模式和右ADC控制
     {0x0F,0x00},//注册15左ADC PGA增益
     {0x10,0x00},//注册16右ADC PGA增益
     {0x07,0x0A},//data path left_dac ->左输入right_dac ->右输入
     {0x25,0xc0},//注册37 L/R_DAC电源
     {0x2b,0x00}//Page 0寄存器43左DAC数字音量控制
     {0x2C, 0x80},//第0页寄存器44右DAC数字音量控制
     //{0x51,0x80},//PGA_L至LEFT LOP/M
     {0x52,0x80},//DAC_L1至LEFT LOP/M寄存器82
     //{0x54,0x80},//PGA_R至LEFT LOP/M
     //{0x55,0x80},//DAC_R1到LEFT LOP/M
     //{0x56,0x80},//第0页寄存器86左侧_LOP/M音量控制A
     //{0x58,0x80},//PGA_L至RIGHT LOP/M
     //{0x59,0x80},//DAC_L1至Rright_LOP/M
     //{0x5B,0x80},//PGA_R至Rright_LOP/M Page 0注册91
     {0x5c,0x80},//DAC_R1到Rright_LOP/M Page 0寄存器92音量控制
     //{0x5d,0x80},//第0页注册93 Right_LOP/M音量控制
     {0x29,0x50},
     
    配置3104交换机到通道1的寄存器:
    [ 2458.619054 ]写入器寄存器0x0 vulae 0x0
    [ 2458.622505 ]刻录机寄存器0x13 vulae 0xFC
    [ 2458.627621 ]刻录机寄存器0x15 vulae 0xf8
    [ 2458.632379 ]刻录机寄存器0x16 vulae 0xFC
    [ 2458.637814 ]刻录机寄存器0x18 vulae 0x80
    [ 2458.641359 ]刻录机寄存器0x52 vulae 0x80
    [ 2458.646045 ]刻录机寄存器0x5c vulae 0x80
    [ 2458.650690 ]刻录机寄存器0x29 vulae 0x50
    [ 2458.654394 ]刻录机寄存器0x2b vulae 0x80
    [ 2458.658821 ]刻录机寄存器0x2C vulae 0x0

    调节音量
    #语音开始时取消静音
     echo 0x56 1 0x6b >${reg_val}
     echo 0x5d 1 0x6b >${reg_val}
     #mic 20dB
     echo 0x0F 1 0x28 >${reg_val}
     echo 0x10 1 0x28 >${reg_val}

    结束语音
      #结束语音前静音
     echo 0x56 1 0x02 >${reg_val}  
     echo 0x5d 1 0x02 >${reg_val}
    转储3104寄存器
    [ 2458.673517 ] ti3104_i2c_read_byte:reg[0x0]= 0x0,ret = 2
    [ 2458.678321 ]读取寄存器0x0值0x0
    [ 2458.990787 ] ti3104_i2c_read_byte:reg[0x1]= 0x0,ret = 2
    [ 2458.996204 ]读取寄存器0x1值0x0
    [ 2459.309479 ] ti3104_i2c_read_byte:reg[0x2]= 0x0,ret = 2
    [ 2459.314431 ]读取寄存器0x2值0x0
    [ 2459.630537 ] ti3104_i2c_read_byte:reg[0x3]= 0x10,ret = 2
    [ 2459.636404 ]读取寄存器0x3值0x10
    [ 2459.950063 ] ti3104_i2c_read_byte:reg[0x4]= 0x4,ret = 2
    [ 2459.957723 ]读取寄存器0x4值0x4
    [ 2460.270873 ] ti3104_i2c_read_byte:reg[0x5]= 0x0,ret = 2
    [ 2460.276337 ]读取寄存器0x5值0x0
    [ 2460.592579 ] ti3104_i2c_read_byte:reg[0x6]= 0x0,ret = 2
    [ 2460.597582 ]读取寄存器0x6值0x0
    [ 2460.909216 ] ti3104_i2c_read_byte:reg[0x7]= 0xA,ret = 2
    [ 2460.915380 ]读取寄存器0x7值0xA
    [ 2461.227896 ] ti3104_i2c_read_byte:reg[0x8]= 0x0,ret = 2
    [ 2461.233386 ]读取寄存器0x8值0x0
    [ 2461.545901 ] ti3104_i2c_read_byte:reg[0x9]= 0x0,ret = 2
    [ 2461.550536 ]读取寄存器0x9值0x0
    [ 2461.863354 ] ti3104_i2c_read_byte:reg[0xA]= 0x0,ret = 2
    [ 2461.868103 ]读取寄存器0xA值0x0
    [ 2462.181133 ] ti3104_i2c_read_byte:reg[0xb]= 0x1,ret = 2
    [ 2462.185946 ]读取寄存器0xb值0x1
    [ 2462.501354 ] ti3104_i2c_read_byte:reg[0xc]= 0x0,ret = 2
    [ 2462.506160 ]读取寄存器0xc值0x0
    [ 2462.818918 ] ti3104_i2c_read_byte:reg[0xd]= 0x0,ret = 2
    [ 2462.823655 ]读取寄存器0xd值0x0
    [ 2463.138653 ] ti3104_i2c_read_byte:reg[0xe]= 0x0,ret = 2
    [ 2463.146259 ]读取寄存器0xe值0x0
    [ 2463.459013 ] ti3104_i2c_read_byte:reg[0xF]= 0x0,ret = 2
    [ 2463.463610 ]读取寄存器0xF值0x0
    [ 2463.776324 ] ti3104_i2c_read_byte:reg[0x10]= 0x0,ret = 2
    [ 2463.781014 ]读取寄存器0x10值0x0
    [ 2464.093923 ] ti3104_i2c_read_byte:reg[0x11]= 0xff,ret = 2
    [ 2464.099078 ]读取寄存器0x11值0xff
    [ 2464.413640 ] ti3104_i2c_read_byte:reg[0x12]= 0xff,ret = 2
    [ 2464.418586 ]读取寄存器0x12值0xff
    [ 2464.732512 ] ti3104_i2c_read_byte:reg[0x13]= 0xFC,ret = 2
    [ 2464.737495 ]读取寄存器0x13值0xFC
    [ 2465.053643 ] ti3104_i2c_read_byte:reg[0x14]= 0x78,ret = 2
    [ 2465.062323 ]读取寄存器0x14值0x78
    [ 2465.378718 ] ti3104_i2c_read_byte:reg[0x15]= 0xf8,ret = 2
    [ 2465.383516 ]读取寄存器0x15值0xf8
    [ 2465.699506 ] ti3104_i2c_read_byte:reg[0x16]= 0xFC,ret = 2
    [ 2465.711839 ]读取寄存器0x16值0xFC
    [ 2466.028947 ] ti3104_i2c_read_byte:reg[0x17]= 0x78,ret = 2
    [ 2466.033785 ]读取寄存器0x17值0x78
    [ 2466.350539 ] ti3104_i2c_read_byte:reg[0x18]= 0x80,ret = 2
    [ 2466.356793 ]读取寄存器0x18值0x80
    [ 2466.668087 ] ti3104_i2c_read_byte:reg[0x19]= 0x6,ret = 2
    [ 2466.673642 ]读取寄存器0x19值0x6
    [ 2466.986489 ] ti3104_i2c_read_byte:reg[0x1a]= 0x0,ret = 2
    [ 2466.991723 ]读取寄存器0x1a值0x0
    [ 2467.303717 ] ti3104_i2c_read_byte:reg[0x1b]= 0xFE,ret = 2
    [ 2467.310412 ]读取寄存器0x1b值0xFE
    [ 2467.623760 ] ti3104_i2c_read_byte:reg[0x1c]= 0x0,ret = 2
    [ 2467.628830 ]读取寄存器0x1c值0x0
    [ 2467.941113 ] ti3104_i2c_read_byte:reg[0x1d]= 0x0,ret = 2
    [ 2467.946099 ]读取寄存器0x1d值0x0
    [ 2468.263809 ] ti3104_i2c_read_byte:reg[0x1E]= 0xFE,ret = 2
    [ 2468.269658 ]读取寄存器0x1E值0xFE
    [ 2468.585553 ] ti3104_i2c_read_byte:reg[0x1f]= 0x0,ret = 2
    [ 2468.590520 ]读取寄存器0x1f值0x0
    [ 2468.904379 ] ti3104_i2c_read_byte:reg[0x20]= 0x0,ret = 2
    [ 2468.911504 ]读取寄存器0x20值0x0
    [ 2469.223437 ] ti3104_i2c_read_byte:reg[0x21]= 0x0,ret = 2
    [ 2469.228225 ]读取寄存器0x21值0x0
    [ 2469.541423 ] ti3104_i2c_read_byte:reg[0x22]= 0x0,ret = 2
    [ 2469.546457 ]读取寄存器0x22值0x0
    [ 2469.859637 ] ti3104_i2c_read_byte:reg[0x23]= 0x0,ret = 2
    [ 2469.864694 ]读取寄存器0x23值0x0
    [ 2470.180078 ] ti3104_i2c_read_byte:reg[0x24]= 0x44,ret = 2
    [ 2470.186055 ]读取寄存器0x24值0x44
    [ 2470.500613 ] ti3104_i2c_read_byte:reg[0x25]= 0xc0,ret = 2
    [ 2470.505985 ]读取寄存器0x25值0xc0
    [ 2470.820652 ] ti3104_i2c_read_byte:reg[0x26]= 0x0,ret = 2
    [ 2470.826085 ]读取寄存器0x26值0x0
    [ 2471.137671 ] ti3104_i2c_read_byte:reg[0x27]= 0x0,ret = 2
    [ 2471.145991 ]读取寄存器0x27值0x0
    [ 2471.458540 ] ti3104_i2c_read_byte:reg[0x28]= 0x0,ret = 2
    [ 2471.463870 ]读取寄存器0x28值0x0
    [ 2471.776769 ] ti3104_i2c_read_byte:reg[0x29]= 0x50,ret = 2
    [ 2471.781606 ]读取寄存器0x29值0x50
    [ 2472.094473 ] ti3104_i2c_read_byte:reg[0x2a]= 0x9C,ret = 2
    [ 2472.100184 ]读取寄存器0x2a值0x9C
    [ 2472.417430 ] ti3104_i2c_read_byte:reg[0x2b]= 0x80,ret = 2
    [ 2472.422978 ]读取寄存器0x2b值0x80
    [ 2472.736714 ] ti3104_i2c_read_byte:reg[0x2C]= 0x0,ret = 2
    [ 2472.742167 ]读取寄存器0x2C值0x0
    [ 2473.053482 ] ti3104_i2c_read_byte:reg[0x2D]= 0x0,ret = 2
    [ 2473.059266 ]读取寄存器0x2D值0x0
    [ 2473.371290 ] ti3104_i2c_read_byte:reg[0x2e]= 0x0,ret = 2
    [ 2473.377576 ]读取寄存器0x2e值0x0
    [ 2473.689043 ] ti3104_i2c_read_byte:reg[0x2F]= 0x0,ret = 2
    [ 2473.693978 ]读取寄存器0x2F值0x0
    [ 2474.006320 ] ti3104_i2c_read_byte:reg[0x30]= 0x0,ret = 2
    [ 2474.011598 ]读取寄存器0x30值0x0
    [ 2474.323657 ] ti3104_i2c_read_byte:reg[0x31]= 0x0,ret = 2
    [ 2474.329066 ]读取寄存器0x31值0x0
    [ 2474.642648 ] ti3104_i2c_read_byte:reg[0x32]= 0x0,ret = 2
    [ 2474.647922 ]读取寄存器0x32值0x0
    [ 2474.959930 ] ti3104_i2c_read_byte:reg[0x33]= 0x4,ret = 2
    [ 2474.965345 ]读取寄存器0x33值0x4
    [ 2475.277705 ] ti3104_i2c_read_byte:reg[0x34]= 0x0,ret = 2
    [ 2475.283465 ]读取寄存器0x34值0x0
    [ 2475.601150 ] ti3104_i2c_read_byte:reg[0x35]= 0x0,ret = 2
    [ 2475.606921 ]读取寄存器0x35值0x0
    [ 2475.919254 ] ti3104_i2c_read_byte:reg[0x36]= 0x0,ret = 2
    [ 2475.924192 ]读取寄存器0x36值0x0
    [ 2476.243791 ] ti3104_i2c_read_byte:reg[0x37]= 0x0,ret = 2
    [ 2476.252314 ]读取寄存器0x37值0x0
    [ 2476.574496 ] ti3104_i2c_read_byte:reg[0x38]= 0x0,ret = 2
    [ 2476.579338 ]读取寄存器0x38值0x0
    [ 2476.891672 ] ti3104_i2c_read_byte:reg[0x39]= 0x0,ret = 2
    [ 2476.896508 ]读取寄存器0x39值0x0
    [ 2477.212306 ] ti3104_i2c_read_byte:reg[0x3a]= 0x4,ret = 2
    [ 2477.216836 ]读取寄存器0x3a值0x4
    [ 2477.531731 ] ti3104_i2c_read_byte:reg[0x3b]= 0x0,ret = 2
    [ 2477.536736 ]读取寄存器0x3b值0x0
    [ 2477.852704 ] ti3104_i2c_read_byte:reg[0x3c]= 0x0,ret = 2
    [ 2477.860460 ]读取寄存器0x3c值0x0
    [ 2478.174382 ] ti3104_i2c_read_byte:reg[0x3D]= 0x0,ret = 2
    [ 2478.179998 ]读取寄存器0x3D值0x0
    [ 2478.491978 ] ti3104_i2c_read_byte:reg[0x3E]= 0x0,ret = 2
    [ 2478.498477 ]读取寄存器0x3e值0x0
    [ 2478.809470 ] ti3104_i2c_read_byte:reg[0x3f]= 0x0,ret = 2
    [ 2478.815034 ]读取寄存器0x3f值0x0
    [ 2479.126605 ] ti3104_i2c_read_byte:reg[0x40]= 0x0,ret = 2
    [ 2479.133015 ]读取寄存器0x40值0x0
    [ 2479.445972 ] ti3104_i2c_read_byte:reg[0x41]= 0x4,ret = 2
    [ 2479.451131 ]读取寄存器0x41值0x4
    [ 2479.763855 ] ti3104_i2c_read_byte:reg[0x42]= 0x0,ret = 2
    [ 2479.768864 ]读取寄存器0x42值0x0
    [ 2480.081524 ] ti3104_i2c_read_byte:reg[0x43]= 0x0,ret = 2
    [ 2480.086495 ]读取寄存器0x43值0x0
    [ 2480.400936 ] ti3104_i2c_read_byte:reg[0x44]= 0x0,ret = 2
    [ 2480.405835 ]读取寄存器0x44值0x0
    [ 2480.718959 ] ti3104_i2c_read_byte:reg[0x45]= 0x0,ret = 2
    [ 2480.723810 ]读取寄存器0x45值0x0
    [ 2481.040268 ] ti3104_i2c_read_byte:reg[0x46]= 0x0,ret = 2
    [ 2481.045568 ]读取寄存器0x46值0x0
    [ 2481.357463 ] ti3104_i2c_read_byte:reg[0x47]= 0x0,ret = 2
    [ 2481.363474 ]读取寄存器0x47值0x0
    [ 2481.678690 ] ti3104_i2c_read_byte:reg[0x48]= 0x4,ret = 2
    [ 2481.683781 ]读取寄存器0x48值0x4
    [ 2481.996391 ] ti3104_i2c_read_byte:reg[0x49]= 0x0,ret = 2
    [ 2482.001242 ]读取寄存器0x49值0x0
    [ 2482.313755 ] ti3104_i2c_read_byte:reg[0x4a]= 0x0,ret = 2
    [ 2482.319081 ]读取寄存器0x4a值0x0
    [ 2482.630767 ] ti3104_i2c_read_byte:reg[0x4b]= 0x0,ret = 2
    [ 2482.635661 ]读取寄存器0x4b值0x0
    [ 2482.948191 ] ti3104_i2c_read_byte:reg[0x4c]= 0x0,ret = 2
    [ 2482.957614 ]读取寄存器0x4c值0x0
    [ 2483.271435 ] ti3104_i2c_read_byte:reg[0x4d]= 0x0,ret = 2
    [ 2483.277315 ]读取寄存器0x4d值0x0
    [ 2483.595747 ] ti3104_i2c_read_byte:reg[0x4e]= 0x0,ret = 2
    [ 2483.600774 ]读取寄存器0x4e值0x0
    [ 2483.913151 ] ti3104_i2c_read_byte:reg[0x4f]= 0x0,ret = 2
    [ 2483.918435 ]读取寄存器0x4f值0x0
    [ 2484.230909 ] ti3104_i2c_read_byte:reg[0x50]= 0x0,ret = 2
    [ 2484.236371 ]读取寄存器0x50值0x0
    [ 2484.550801 ] ti3104_i2c_read_byte:reg[0x51]= 0x0,ret = 2
    [ 2484.556234 ]读取寄存器0x51值0x0
    [ 2484.868602 ] ti3104_i2c_read_byte:reg[0x52]= 0x80,ret = 2
    [ 2484.873493 ]读取寄存器0x52值0x80
    [ 2485.187699 ] ti3104_i2c_read_byte:reg[0x53]= 0x0,ret = 2
    [ 2485.193079 ]读取寄存器0x53值0x0
    [ 2485.505641 ] ti3104_i2c_read_byte:reg[0x54]= 0x0,ret = 2
    [ 2485.510929 ]读取寄存器0x54值0x0
    [ 2485.823030 ] ti3104_i2c_read_byte:reg[0x55]= 0x0,ret = 2
    [ 2485.827899 ]读取寄存器0x55值0x0
    [ 2486.145830 ] ti3104_i2c_read_byte:reg[0x56]= 0x0,ret = 2
    [ 2486.152168 ]读取寄存器0x56值0x0
    [ 2486.466217 ] ti3104_i2c_read_byte:reg[0x57]= 0x0,ret = 2
    [ 2486.470762 ]读取寄存器0x57值0x0
    [ 2486.786410 ] ti3104_i2c_read_byte:reg[0x58]= 0x0,ret = 2
    [ 2486.792080 ]读取寄存器0x58值0x0
    [ 2487.104713 ] ti3104_i2c_read_byte:reg[0x59]= 0x0,ret = 2
    [ 2487.113540 ]读取寄存器0x59值0x0
    [ 2487.427077 ] ti3104_i2c_read_byte:reg[0x5A]= 0x0,ret = 2
    [ 2487.433540 ]读取寄存器0x5a值0x0
    [ 2487.748463 ] ti3104_i2c_read_byte:reg[0x5b]= 0x0,ret = 2
    [ 2487.753802 ]读取寄存器0x5b值0x0
    [ 2488.066891 ] ti3104_i2c_read_byte:reg[0x5c]= 0x80,ret = 2
    [ 2488.075020 ]读取寄存器0x5c值0x80
    [ 2488.389252 ] ti3104_i2c_read_byte:reg[0x5d]= 0x0,ret = 2
    [ 2488.395156 ]读取寄存器0x5d值0x0
    [ 2488.711639 ] ti3104_i2c_read_byte:reg[0x5e]= 0xc0,ret = 2
    [ 2488.717328 ]读取寄存器0x5e值0xc0
    [ 2489.032504 ] ti3104_i2c_read_byte:reg[0x5f]= 0x0,ret = 2
    [ 2489.037510 ]读取寄存器0x5f值0x0
    [ 2489.351708 ] ti3104_i2c_read_byte:reg[0x60]= 0x0,ret = 2
    [ 2489.358380 ]读取寄存器0x60值0x0
    [ 2489.674191 ] ti3104_i2c_read_byte:reg[0x61]= 0x0,ret = 2
    [ 2489.681533 ]读取寄存器0x61值0x0
    [ 2490.000759 ] ti3104_i2c_read_byte:reg[0x62]= 0x0,ret = 2
    [ 2490.005966 ]读取寄存器0x62值0x0
    [ 2490.319835 ] ti3104_i2c_read_byte:reg[0x63]= 0x0,ret = 2
    [ 2490.325083 ]读取寄存器0x63值0x0
    [ 2490.638452 ] ti3104_i2c_read_byte:reg[0x64]= 0x0,ret = 2
    [ 2490.643596 ]读取寄存器0x64值0x0
    [ 2490.957250 ] ti3104_i2c_read_byte:reg[0x65]= 0x0,ret = 2
    [ 2490.963200 ]读取寄存器0x65值0x0
    [ 2491.277432 ] ti3104_i2c_read_byte:reg[0x66]= 0x2,ret = 2
    [ 2491.283342 ]读取寄存器0x66值0x2
    [ 2491.599046 ] ti3104_i2c_read_byte:reg[0x67]= 0x0,ret = 2
    [ 2491.605046 ]读取寄存器0x67值0x0
    [ 2491.916697 ] ti3104_i2c_read_byte:reg[0x68]= 0x0,ret = 2
    [ 2491.921871 ]读取寄存器0x68值0x0
    [ 2492.235401 ] ti3104_i2c_read_byte:reg[0x69]= 0x0,ret = 2
    [ 2492.241328 ]读取寄存器0x69值0x0
    [ 2492.553968 ] ti3104_i2c_read_byte:reg[0x6A]= 0x0,ret = 2
    [ 2492.559147 ]读取寄存器0x6a值0x0
    [ 2492.871664 ] ti3104_i2c_read_byte:reg[0x6b]= 0x0,ret = 2
    [ 2492.876431 ]读取寄存器0x6b值0x0
    [ 2493.189988 ] ti3104_i2c_read_byte:reg[0x6c]= 0x0,ret = 2
    [ 2493.195001 ]读取寄存器0x6c值0x0
    [ 2493.508455 ] ti3104_i2c_read_byte:reg[0x6d]= 0x0,ret = 2
    [ 2493.513242 ]读取寄存器0x6d值0x0

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 先生

    CLK配置为fllows:

    Wclk 48K,BCLK=32*Wclk=1.536M,MCLK=256*Wclk=12.288M

    左侧通道CH1数据输出CH2 wclk.jpg

    左侧频道 CH2 BCLK 1.536Mhz.jpg

    左侧频道 CH2 mclk.jpg

    右侧面板 CH1数据输出CH2 wclk.jpg

    右侧面板 CH1数据输出CH2 BCLK

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    当我要求测试设置时,我问的是您如何将此设备连接到测试设备,您如何驱动输入,如何测量输出。输入电压是多少,输出电压是多少。 你怎么知道mic1L和Mic1R正在混合? 它们的体积是否相等? 或者一个上是否有一些衰减? 详细信息在进行故障排除时很有帮助。 这不是编解码器的正常行为,因此,仅仅提供配置并告诉我它不起作用不足以解决问题。

    寄存器转储确认了您的配置,您告诉我,您在DOUT上有一个MIC1和MIC2混合,对吗?

    这里的问题是,您从不将mic1L发送到左侧ADC,因此从不应将其路由到左侧ADC,而反过来,MIC1R也不会连接到右侧ADC,因此从不应将其路由到左侧ADC。

    事实上,您在两个ADC上都有"两个"信道,这让我质疑您的物理设置。 请说明您实际是如何测试的。 您使用的是信号发生器还是麦克风? 如果您正在使用麦克风,那么麦克风如何相对于彼此定位? 即如何将信号与另一个隔离?

    此致,
    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 先生

        如何连接设备,我想我给您发送了一个特定的原理图和编解码器数据通道指示器,您可能已经理解了。
        编解码器数据路径选择图清楚地表明,我们使用mic1L和mic1R作为输入源,而根本不使用mic2作为输入;寄存器转储是否显示配置混合了MIC1和MIC2? MIC2未使用,也未连接到硬件。 MIC2路径配置的寄存器设置是默认配置。
        mic1L使用有源差动输入模式,输入电压为8V,mic1R使用无源差动输入模式,一些原理图已发送给您,您已确认硬件电路没有问题。

       我之前已将mic1L和mic1R输入绘制到LADC和RDAC的四个通道。 当我使用mic1L到RDAC路径时,我已经根据芯片手册对应的寄存器R19~R24描述了mic1L到LADC路径,mic1R到LADC路径。 mic1R到RDAC的路径被配置为断开连接;因此,mic1R的输入路径将没有输入;否则,当我使用mic1R到LADC路径时,我已根据芯片手册中相应的寄存器R19~R24描述了mic1L。 LADC路径,mic1L到RDAC路径和mic1R到RDAC路径配置为关闭。 因此,mic1L的输入路径将不会有输入;


       但实际上,当我使用mic1L作为麦克风输入时,mic1R也有数据输入给对方;当我使用mic1R作为麦克风输入时,mic1L也有数据输入给对方;
        具体来说,如何判断mic1L和mic1R是混合的,当呼叫时,对方实际上听到了两个麦克风输入的声音;

        如何将两个输入信号彼此隔离非常简单。 当使用mic1L作为输入时,我将断开mic1L输入并对mic1R讲话。 另一方可以听到mic1R输入。
    此时,对方输入的mic1R声音不正常,不是很清楚,需要靠近MIC1R才能有声音。

    以下屏幕截图是在使用mic1L时断开MICL后在I2S上收集的数据。 当使用mic1L时,在MICL断开连接后,在I2S上收集的数据。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    用户,

    是的,我当然有您的部分原理图。 但是,我们所处的位置并不是您的配置不正确(我已在已知硬件上对其进行了测试:EVM),但您仍然遇到问题。  您尝试了4种不同的IC,因此我们知道这不是IC特定的问题。  

    请尝试其他测试:  

    对输入进行初始化

     {0x13,0xfc},//R19//IN1LP/IN1LM差分模式和左ADC控制-它应该是差分模式而不是单端模式,否则将创建DC偏移

    {0x15,0xf8},//R21//IN1RP/IN1RM差分模式和左ADC控制

    {0x16,0xfc},//R22//IN1RP/IN1RM差分模式和右ADC控制

    {0x18,0xf8},//R24//IN1LP/IN1LM差分模式和右ADC控制

    是否有任何渗流?

    我附上了输入的方框图。  AIC3107数据表中有一个类似的图,我可能会在更新AIC3104时添加一个图。 寄存器19,21,22和24控制输入电阻器, 或者在输入断开时切换。

    您看到的是,即使断开输入, 您也可以听到它们。  因此,如果该开关不工作,活动信道将显示静音,或者输入短路, 或者信号在外部混合。  

    此致

    -Steve Wilson

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 先生

     自从您上次提到此问题以来,我已将所有麦克风修改为差分模式,无论当前是否使用麦克风,但问题仍然存在。

    是的,当前的问题是,即使断开输入,他们也能听到输入声音。 因此,控制开关不工作,活动信道无法静音,或者输入短路信号在外部混合。

    我们使用万用表来测量两个麦克风前端的短路,还可以测量过阻抗,而不会出现短路问题。

    虽然在模板上测试时,我们的注册配置可以正常断开连接,但 相同的配置在我的设备上不起作用。

    我不知道这个问题在哪里。


    软件可以配置寄存器,现在已检查寄存器配置是否没有问题。

    在硬件上,检查编解码器外设电路设计,没有发现任何问题。


    同时同步抓取信号的波形。 我不知道以前发送给您的波形是否有任何问题?


    接下来您需要做什么?

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的先生
    事实上,还有一种情况,我不知道这对分析当前的问题是否有帮助。
    当我使用mic1R输入和L_LOP/M输出作为呼叫路径时,mic1R直接连接到计算机的音频输出。 音乐始终播放。 电话挂机后,mic1R输入声音直接输出到R_LOP/M,但声音很小。 非常不清楚,扭曲,需要仔细倾听才能听到; 电话关闭时,实际输出为静音,怀疑是R108的配置问题,从mic1R路由器到LOP/M,实际寄存器是默认配置,将R108重新配置为0x00,LOP/M仍有声音输出,直到重新配置信道切换声音,声音消失。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的先生

    您能否 将 EVM模板发送 给我们进行验证?

    点触蛋白的AIC3107和AIC3104 IC是否是?
     是否可以向我发送AIC3107以进行验证?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的先生

    是否有任何更新?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    我唯一见过的输入和输出之间的泄漏是当输入电压超过建议的电平并接近ABS最大值时,在1.6V的峰值电平下,信号可能会泄漏到输出。 您能否确认信号电平不是那么高?
    您是否遵循了数据表中的布局指南?


    AIC3104和AIC3107不兼容引脚到引脚,它们甚至没有相同的封装。 AIC3104是32引脚QFN,而AIC3107是40引脚QFN或42引脚BGA。

    您要求提供EVM模板...您是否需要设计文件? 或者您的要求是什么? 原理图和布局都在EVM用户指南中。

    如果您可以断开麦克风连接并使用信号发生器,那么您可以看到输入/输出电平关系。

    此致,
    -Steve Wilson
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的先生

    让我们再次测量输入电压是否超过建议电平并接近绝对最大1.6V峰值电平。


    如果输入电压超过建议的电平,此操作是否会损坏编解码器或只是输入业务溢出? 是否会在开机后恢复?


    我们只想使用EVM模板来验证当前硬件设计是否存在问题,直接通过器件的演示版本来查看输入是否正常工作。

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    用户,

    如果超过绝对最大值,则可能是IC损坏。

    EVM可在线获取:
    www.ti.com/.../TLV320AIC3104EVM-K
    此致,
    -Steve Wilson
x 出现错误。请重试或与管理员联系。