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.

[参考译文] TLV320AIC3254:基本环回脚本-在 EV 板上工作、但在我们的设计中不工作

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1460892/tlv320aic3254-basic-loopback-script--working-on-the-ev-board-but-not-in-our-design

器件型号:TLV320AIC3254

工具与软件:

您好!

请参阅相关问题。

我们通过将 ADC_MOD_CLK 路由到 CLKOUT 来检查时钟、并使用示波器观察到信号-看起来正常(MCLK = 24MHz;N=4;M=1;OSR=125;SamplingRate=48K)。

我有一个将 IN1_L 输出到 HPL 的基本环回配置脚本。 当我在 EV 板上执行脚本时、它可以正常工作、并且我可以在耳机上听到自己的声音(即使使用不同的 MCLK、并且时钟分频器没有变化)、但当我在设计中尝试相同的脚本时、它无法正常工作。 我尝试使用示波器观察输出信号、除了随机噪声之外没有其他东西。

这是脚本:

# SW reset
w 30 00 00
w 30 01 01
#CLK, ADC and DAC configs
w 30 00 00
w 30 12 84
w 30 13 81
w 30 0B 84
w 30 0C 81
w 30 14 7d
w 30 0d 7d
w 30 3D 01
w 30 53 14
w 30 3C 08
w 30 41 00
# Power, Mic, Gain configs
w 30 00 01
w 30 01 08
w 30 02 00
w 30 3D 00
w 30 47 32
w 30 7B 01
w 30 33 40
w 30 34 40
w 30 36 40
w 30 3b 3C
w 30 3C 00
w 30 14 25
w 30 0C 08
w 30 0E 08
w 30 09 3C
w 30 10 00
w 30 12 00
# Volume configs
w 30 00 00
w 30 3F D6
w 30 41 30
w 30 40 00
w 30 51 C0
w 30 52 00
# Loopback config
w 30 00 00
w 30 1d 10

这是硬件设计:

能不能指出我们做错了什么? 我们是否可以尝试任何基本的验证测试?

谢谢!

Elad

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

    此外,我根据我在论坛上找到的脚本制作了一个脚本,生成~1.5秒的蜂鸣声。

    在 EV 板上它可以工作、但在我的设计中不能工作。

    我注意到在 EV 板的 P0_R71 (蜂鸣发生器启用)中读取 D7时、蜂鸣结束后它会清除、但在我的设计中、该位保持高电平并且没有发出蜂鸣声。  

    我观察到了 DAC_MOD_CLK、它看起来不错。

    这是我使用的脚本:

    ###############################################
    # Software Reset
    ###############################################
    #
    # Select Page 0
    w 30 00 00
    #
    # Initialize the device through software reset
    w 30 01 01
    #
    ###############################################
    
    
    
    ###############################################
    # Clock and Interface Settings
    # ---------------------------------------------
    # MCLK = 24MHz; N=4; M=1; OSR=125; SampleRate = 48KHz
    ###############################################
    #			# reg[ 0][ 18] = 0x81	; NADC powered up, NADC value = 2
    #			# reg[ 0][ 19] = 0x82	; MADC powered up, MADC value = 2
    w 30 12 84
    w 30 13 81
    #            # AOSR = 125
    w 30 14 7d  
    #			# reg[ 0][ 61] = 0x01	; ADC Signal Processing Block PRB_R1
    w 30 3D 01
    #			# reg[ 0][ 83] = 0x14	; Left ADC Volume = 10 dB
    w 30 53 14
    ###############
    #			# reg[ 0][ 11] = 0x81	; NDAC powered up, NDAC value = 2
    #			# reg[ 0][ 12] = 0x82	; MDAC powered up, MDAC value = 2
    w 30 0B 84
    w 30 0C 81
    #            # DOSR = 125
    w 30 0d 7d            
    #			# reg[ 0][ 65] = 0x00	; Left DAC Volume = 0 dB
    w 30 41 00
    ###############
    
    
    
    ###############################################
    # Configure Processing Blocks
    ###############################################
    #
    # Select Page 0
    w 30 00 00
    #
    # PRB_P25 selected
    w 30 3C 19
    #
    # Select Page 44, Enable Adaptive filtering for DAC
    w 30 00 2c
    w 30 01 04
    #
    ###############################################
    
    
    
    ###############################################
    # Configure Power Supplies
    ###############################################
    #
    # Select Page 1
    w 30 00 01
    #
    # Disable weak AVDD in presence of external
    # AVDD supply
    w 30 01 08
    #
    # Enable Master Analog Power Control
    w 30 02 00
    #
    # Set the input power-up time to 3.1ms (for ADC)
    w 30 47 32
    #
    # Set the REF charging time to 40ms
    w 30 7b 01
    #
    ###############################################
    
    
    
    ###############################################
    # Playback Setup
    ###############################################
    #
    # Select Page 1
    w 30 00 01
    #
    # De-pop
    w 30 14 25
    #
    # Route LDAC/RDAC to HPL/HPR
    w 30 0c 08
    w 30 0d 08
    #
    # Route LDAC/RDAC to LOL/LOR
    w 30 0e 08
    w 30 0f 08
    #
    # Power up HPL/HPR and LOL/LOR drivers
    w 30 09 3C
    #
    # Unmute HPL/HPR driver, 0dB Gain
    w 30 10 00
    w 30 11 00
    #
    # Unmute LOL/LOR driver, 0dB Gain
    w 30 12 00
    w 30 13 00
    #
    # Select Page 0
    w 30 00 00
    #
    # DAC => 0dB
    w 30 41 00
    w 30 42 00
    #
    # Power up LDAC/RDAC
    w 30 3f d6
    #
    # Unmute LDAC/RDAC
    w 30 40 00
    #
    ###############################################
    
    
    
    ###############################################
    # Beep Generator Settings
    ###############################################
    #
    # Select Page 0
    w 30 00 00
    #
    w 30 48 3F
    # 1 second beep 44100ksps*1s
    w 30 49 00 AC 44
    #
    # 2kHz at 44.1ksps
    w 30 4C 23
    w 30 4D FB
    w 30 4E 7A
    w 30 4F D7
    #
    # Gain = -7dB in Left and -63dB in right
    w 30 47 8f 
    ###############################################
    
    

    对可能出现的问题有什么想法?

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

    尊敬的 Elad:

    ADC_MOD_CLK 输出为48K * 125 = 6MHz 对吗?  

    为了进行调试、我要再次确认所有时钟频率输入都相同、没有明显的失真、并且评估板和定制板之间的电源都相同。 如果您能够将定制电路板时钟跳转到评估电路板、我也会尝试该操作。

    此致、
    Jeff McPherson

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

    是的、ADC_MOD_CLK 和 DAC_MOD_CLK 是6MHz、振幅为3.3V、类似于我们在 EV 板上观察到的振幅。

    所有的电源都与 EV 板一样(请指出在随附方案中您可能会注意到的任何差异)。

    关于时钟输入、我无法在服装面板上更改时钟频率。 在 EV 板上有没有方法可以这样做?

    您是否知道为何未在服装板上清除蜂鸣器使能位(p0_R71_D7)? 蜂鸣器配置可能会出现什么问题?

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

    尊敬的 Elad:

    如果未清除蜂鸣使能位、则表示蜂鸣功能未执行。 这让我想知道时钟设置情况、因为要使蜂鸣声正常工作、需要运行内部时钟系统(即应用了 I2S 时钟并运行)。

    在评估板上、您可以断开 USB 控制器提供的时钟、并提供您希望从一些外部源生成的时钟。 我会尝试确保评估板上的时钟与您定制板上的时钟相匹配。

    此致、
    Jeff McPherson

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

    尊敬的 Jeff:  

    是否有任何方法可以检查时钟系统是否正常运行? 我们观察到 在6MHz 中运行的 DAC_MOD_CLK 这一事实是否表明时钟设置正确?  DAC 运行是否必须有 I2S 时钟?

    您能指导我断开 USB 控制器时钟源并应用外部源吗?

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

    尊敬的 Elad:

    一项简单的检查是 DAC 是否正确播放来自 I2S 的数据。 这将确认整个流程是正确的。 然后、我们可以进一步探究未激活的蜂鸣声。

    我可以告诉您如何断开时钟。 您能告诉我、您 EVM 上的主板是 USB-MODEVM 还是 AC-MODEVM 吗? 它应该位于板的丝印上。 EVM 板有更新、因此我只需要知道您拥有的板。

    此致、
    Jeff McPherson

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

    尊敬的 Jeff:

    感谢您的帮助。

    我们将 TLV 配置为主器件 I2S 总线并使其发出蜂鸣声。

    我们在模拟输入路径上取得了一些进展、但不断有静态背景噪声进入模拟输入。

    我们一直从 Loopback 模式(将 IN1_L 路由到 HP_L)和 I2S (我们将使用 CPU 从 TLV 读取 I2S 并将其写入.wav 文件)中获取噪声。

    即使关闭了所有模拟输入、也能在耳机中听到噪声;另一方面、当未连接耳机时、I2S 中的噪声输出也能听到。

    附件记录了从 I2S 接口接收的数据。

    e2e.ti.com/.../recording_5F00_test_5F00_pll_5F00_bias_5F00_2.5.wave2e.ti.com/.../recording_5F00_test_5F00_pll_5F00_bias_5F00_2.5.wav

    这是  

    不知道什么原因会导致这种噪声?

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

    尊敬的 Elad:

    我会尝试将模拟输入保持启用状态以将输入接地、然后侦听结果。 对我来说、由于噪声在很多情况下都存在、听起来噪声要么通过模拟输入传入、要么是来自电源的噪声。 我看到您有去耦电容器、但它们是否按照数据表中的布局指南放置在器件上?

    此致、
    Jeff McPherson

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

    尊敬的 Jeff:

    回答 Elad、是的、去耦电容器根据数据表中的指南放置。 此外、我们也没有看到来自电源的噪声。

    我有一些后续问题、因为我们成功地推进到了这一领域的其他领域、但我们仍有一些问题、我们希望获得建议。

    1.我们有一个简单的脚本、使用28.762Mhz 的 PLL、I2S 主器件、将编解码器配置为16kHz fs。  

    我们首先关注系统的输出、当我们播放1k 正弦波记录时、我们听得很清楚、甚至在将模拟输出连接到计算机输入线时看到它(一些超过2250Hz 的噪声、即使发送零数据也会出现):

    但当我们播放一首歌曲时,我们听到它非常扭曲的混合声音。 当我们播放一个方波时,我们只看到峰(变化),而不是全波:



    I2S 中的数据看起来不错、我们是否缺少 TLV 编解码器的一些配置、或者是否存在可能实现该功能的默认过滤? 我们使用 DAC PRB_P4。 该主题提供了原理图:
    e2e.ti.com/.../tlv320aic3254-tlv320aic3254---schematic-check-and-advise

    2、关于第一个问题,我们也想解决这个噪音问题。 当我们向编解码器发送零数据时、我们得到与正弦波相同的图片、但没有1kHz 增量。 这意味着我们有一些噪声来自编解码器或其周围的硬件。 是否有办法消除编解码器中的这些噪声? 如果没有。 我们应该在硬件中检查哪些在如此特定的频率下可能产生此噪声?

    我们在 EV 电路板和硬件中都注意到、BCLK 的每个信号都有一些接地噪声、这可能是相关的吗?

    零点:

    正弦波:

    我们有一个在48kHz 上工作的回送脚本。 但是、当将 PLL 的时钟从 P = 2更改为 P = 6并将 NDAC/mAdc 更改为7和2以将其修改为16kHz 时、它会停止在我们的硬件上工作。 我们还缺少哪些其他自适应?

    ## System Reset	##
    i2cset -f -y 1 0x18 0x00 0x00
    i2cset -f -y 1 0x18 0x01 0x01
    ##########################################
    ##		      CLK config				##
    ## MLCK --> Codec clk in; PLL is ON 	##
    ##  	set BCLK and WCLK as output		##
    ##  set BCLK= 1.5MHz and WCLK=48KHz		##
    ##########################################
    i2cset -f -y 1 0x18 0x04 0x03      # PLL output clk is codec clk in; range low
    i2cset -f -y 1 0x18 0x05 0xa1      # PLL on; p = 2; R = 1;
    i2cset -f -y 1 0x18 0x06 0x07      # PLL J = 7
    i2cset -f -y 1 0x18 0x07 0x06      # PLL D = 1680 = 0x690 so MSB will be 0x06
    i2cset -f -y 1 0x18 0x08 0x90      # PLL D = 1680 = 0x690 so LSB will be 0x90
    i2cset -f -y 1 0x18 0x1b 0xcc      # I2S word is 16 bits; I2S master;
    i2cset -f -y 1 0x18 0x1d 0x03      # loopback off; BDIV_clkin = ADC_MOD_CLK (after N and M dividers before AOSR)
    i2cset -f -y 1 0x18 0x1e 0x84      # N dvider for BCLK = 4 to get 1.536MHz
    ##########################################
    ##		      DAC config				##
    ## 	 NDAC=14; MDAC=1 DOSR=128 PRB_P8	##	
    ##########################################
    i2cset -f -y 1 0x18 0x0b 0x8e
    i2cset -f -y 1 0x18 0x0c 0x81
    i2cset -f -y 1 0x18 0x0d 0x00
    i2cset -f -y 1 0x18 0x0e 0x80
    i2cset -f -y 1 0x18 0x3C 0x08
    
    ##########################################
    ##		      ADC config				##
    ## 	 NADC=14; MADC=1 AOSR=128 PRB_R3	##	
    ##########################################
    i2cset -f -y 1 0x18 0x12 0x8e
    i2cset -f -y 1 0x18 0x13 0x81
    i2cset -f -y 1 0x18 0x14 0x80 
    i2cset -f -y 1 0x18 0x3d 0x03
    
    ##########################################
    ##		   Power supply config			##
    ## 	 Weak connection AVDD-DVDD disabled	##
    ## 	 Analog blocks on; common is 0.9V	##
    ## 	 Ref charging is 40ms				##
    ##########################################
    i2cset -f -y 1 0x18 0x00 0x01
    i2cset -f -y 1 0x18 0x01 0x08
    i2cset -f -y 1 0x18 0x02 0x00
    i2cset -f -y 1 0x18 0x0a 0x00
    i2cset -f -y 1 0x18 0x7b 0x01
    
    ##########################################
    ##		   DAC routing config			##
    ##	 	 Left channel DAC -> HPL		##
    ##	 	 HPL on; 	IN1_L -> HPL		##
    ##	 	 HPL gain = 15dB				##
    ##########################################
    i2cset -f -y 1 0x18 0x00 0x01
    i2cset -f -y 1 0x18 0x0c 0x08
    i2cset -f -y 1 0x18 0x10 0x0f
    i2cset -f -y 1 0x18 0x09 0x20
    
    ##########################################
    ##		   ADC routing config			##
    ##	 	IN1_L -> left PGA with 20K 		##
    ##	 	In power up time = 6.4ms		##
    ##	 	 PGA gain = 0dB; micBIAS ON		##
    ##########################################
    i2cset -f -y 1 0x18 0x00 0x01
    i2cset -f -y 1 0x18 0x47 0x32
    i2cset -f -y 1 0x18 0x3B 0x80       # PGA gain = 0dB
    i2cset -f -y 1 0x18 0x33 0x20       # mic bias ON = 2.5V (CM=0.9V)
    i2cset -f -y 1 0x18 0x34 0x80       # CM is routed to L_MICPGA with 20K resistance
    i2cset -f -y 1 0x18 0x36 0x80       # CM is routed to L_MICPGA with 20K resistance
    
    ##########################################
    ##		      Power up DAC				##
    ##	 	 LDAC unmute; LDAC volume= 0dB	##
    ##########################################
    i2cset -f -y 1 0x18 0x00 0x00
    i2cset -f -y 1 0x18 0x40 0x04       # LDAC unmute
    i2cset -f -y 1 0x18 0x41 0x00       # LDAC volume = 0dB
    i2cset -f -y 1 0x18 0x3f 0x92       # LDAC power up
    
    
    ##########################################
    ##		      Power up ADC				##
    ##	 	 LADC power up; Dmic in = DIN	##
    ##	 	 LADC unmute; LADC volume= 0dB	##
    ##########################################
    i2cset -f -y 1 0x18 0x00 0x00
    i2cset -f -y 1 0x18 0x52 0x08       ## LADC unmute;##
    i2cset -f -y 1 0x18 0x53 0x00      ## volume= 0dB
    i2cset -f -y 1 0x18 0x51 0xa0       ## power up ADC
    
    
    
    
    i2cset -f -y 1 0x18 0x00 0x00
    i2cset -f -y 1 0x18 0x1d 0x13
    
    

    如果可以设置会议来仔细检查我们的设置、那么编解码器存在多个问题。

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

    尊敬的 Ido:

    让我把您的脚本加载到我工作台上的评估板上。 我应该能够同时解决所有这些问题。

    我在 EVM GUI 上使用了 PLL 计算器工具、您设置的值没有通过 GUI 返回、因此 PLL 的限制引起了冲突或数学中的某个问题。 我会切换到 GUI 返回的不同组合、看看它是否起作用。

    关于噪声、由于 Δ-Σ 调制方案的存在、看到一些延迟的音调并不是很正常现象、但这些音调似乎比我预期的要响亮得多。 我会在您的设计附近或周围寻找可能耦合到输入的任何类型的开关电源/开关源。 我怀疑它与 BCLK 切换相关、因为来自数字时钟的电流应该非常低。

    我对您使用的每种设置感到困惑。 第1项显示您有一个16kHz 脚本、但第3项显示您的16kHz 脚本不起作用。 您能在此处确认哪个脚本是最新的、以及您希望在 EVM 上查看哪个脚本吗?

    谢谢!
    Jeff McPherson

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

    尊敬的 Jeff:

    这是我将在电路板上使用的脚本(它使用24MHz 时钟并具有我在上面附上的硬件方案、与 EV 板不同):

    # ## System Reset	##
    i2cset -f -y 1 0x18 0x00 0x00
    i2cset -f -y 1 0x18 0x01 0x01
    
    # ##########################################
    # ##		      CLK config				##
    # ## MLCK --> Codec clk in; PLL is ON 	##
    # ##  	set BCLK and WCLK as output		##
    # ##  set BCLK= 512kHz and WCLK=16KHz	##
    # ## MCLK is 24Mhz, PLL configured to 28.672Mhz ##
    # ##########################################
    i2cset -f -y 1 0x18 0x04 0x03      # PLL output clk is codec clk in; range low
    i2cset -f -y 1 0x18 0x05 0xe1      # PLL on; p = 6; R = 1;
    i2cset -f -y 1 0x18 0x06 0x07      # PLL J = 7
    i2cset -f -y 1 0x18 0x07 0x06      # PLL D = 1680 = 0x690 so MSB will be 0x06
    i2cset -f -y 1 0x18 0x08 0x90      # PLL D = 1680 = 0x690 so LSB will be 0x90
    i2cset -f -y 1 0x18 0x1b 0xcc      # I2S word is 16 bits; I2S master;
    i2cset -f -y 1 0x18 0x1d 0x03      # loopback off; BDIV_clkin = ADC_MOD_CLK (after N and M dividers before AOSR)(2.048Mhz)
    i2cset -f -y 1 0x18 0x1e 0x84      # N dvider for BCLK = 4 to get 512Khz
    
    # ##########################################
    # ##		      DAC config				##
    # ## 	 NDAC=7; MDAC=2 DOSR=128 PRB_P4	##
    # ##########################################
    i2cset -f -y 1 0x18 0x0b 0x87
    i2cset -f -y 1 0x18 0x0c 0x82
    i2cset -f -y 1 0x18 0x3C 0x04
    i2cset -f -y 1 0x18 0x44 0x0F
    
    # ##########################################
    # ##		      ADC config				##
    # ## 	 NADC=7; MADC=2 AOSR=128 PRB_R3	##
    # ##########################################
    i2cset -f -y 1 0x18 0x12 0x87
    i2cset -f -y 1 0x18 0x13 0x82
    i2cset -f -y 1 0x18 0x3d 0x03
    
    # ##########################################
    # ##		   Power supply config			##
    # ## 	 Weak connection AVDD-DVDD disabled	##
    # ## 	 Analog blocks on; common is 0.9V	##
    # ## 	 Ref charging is 40ms				##
    # ##########################################
    i2cset -f -y 1 0x18 0x00 0x01
    i2cset -f -y 1 0x18 0x01 0x08
    i2cset -f -y 1 0x18 0x02 0x00
    i2cset -f -y 1 0x18 0x0a 0x00
    i2cset -f -y 1 0x18 0x7b 0x01
    
    # ##########################################
    # ##		   DAC routing config			##
    # ##	 	 Left channel DAC -> HPL		##
    # ##	 	 HPL on; 	IN1_L -> HPL		##
    # ##	 	 HPL gain = 00dB				##
    # ##########################################
    i2cset -f -y 1 0x18 0x00 0x01
    i2cset -f -y 1 0x18 0x0c 0x08      # Left channel DAC -> HPL;  IN1_L -> Not routed to HPL
    i2cset -f -y 1 0x18 0x10 0x00      # HPL unmuted; HPL gain = 0dB
    i2cset -f -y 1 0x18 0x09 0x20      # HPL on;
    
    # ##########################################
    # ##		   ADC routing config			##
    # ##	 	IN1_L -> left PGA with 20K 		##
    # ##	 	In power up time = 6.4ms		##
    # ##	 	 PGA gain = 0dB; micBIAS ON		##
    # ##########################################
    i2cset -f -y 1 0x18 0x00 0x01
    i2cset -f -y 1 0x18 0x47 0x32
    i2cset -f -y 1 0x18 0x3B 0x80      # PGA gain = 0dB
    i2cset -f -y 1 0x18 0x33 0x48      # mic bias ON = 2.5V (CM=0.9V),
    i2cset -f -y 1 0x18 0x34 0x80      # CM is routed to L_MICPGA with 20K resistance
    i2cset -f -y 1 0x18 0x36 0x80      # CM is routed to L_MICPGA with 20K resistance
    
    # ##########################################
    # ##		      Power up DAC				##
    # ##	 	 LDAC unmute; LDAC volume= 0dB	##
    # ##########################################
    i2cset -f -y 1 0x18 0x00 0x00
    i2cset -f -y 1 0x18 0x40 0x04      # LDAC unmute
    i2cset -f -y 1 0x18 0x41 0x00      # LDAC volume = 0dB 
    i2cset -f -y 1 0x18 0x3f 0x92      # LDAC power up
    
    # ##########################################
    # ##		      Power up ADC				##
    # ##	 	 LADC power up; Dmic in = DIN	##
    # ##	 	 LADC unmute; LADC volume= 8dB	##
    # ##########################################
    i2cset -f -y 1 0x18 0x00 0x00
    i2cset -f -y 1 0x18 0x52 0x08      # LADC unmute;
    i2cset -f -y 1 0x18 0x53 0x10      # volume= 8dB
    i2cset -f -y 1 0x18 0x51 0xa0      # power up ADC
    
    # ## for loopback
    #i2cset -f -y 1 0x18 0x00 0x00
    #i2cset -f -y 1 0x18 0x1d 0x13

    此脚本确实允许我们播放录音和音乐,但硬件回送不起作用(似乎不能从我们的麦克风录制任何内容或听到自己)。

    我不知道 EVM GUI 的情况、我正在使用此论坛中提供的 audio_codec_PLL_calculator Excel 文件。 GUI 可以从哪里下载? 未在此处找到:

    https://www.ti.com/tool/TLV320AIC3254EVM-K#order-start-development

    感谢您的帮助、

    IDO。

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

    您好!

    今天是我们在美国的团队的假期。我们将在周二与您跟进。

    感谢您的耐心等待、
    Jeff McPherson

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

    尊敬的 Ido:

    GUI 可通过您共享的链接在"Order and Start Development"下找到(点击"Open Package")

    现在、我将转换您的脚本以使用 GUI、我将在 EVM 上对其进行实验、并让您知道我找到的内容。

    此致、
    Jeff McPherson

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

    尊敬的 Ido:

    添加,我尝试使用 Excel 计算器与您的设置,有一个违反, MCLK/P 是不够高,因为 D != 0。 这是一个很大的指标、可以指示您的问题来自哪里。 我会使用 GUI 中的计算器并调整您的设置。

    GUI 仅要求提供单个 RC 编号、因此请选择最高的一个(在您的情形中为8)。 您可以根据以下约束再次检查结果:

    此致、
    Jeff McPherson

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

    尊敬的 Jeff:

    谢谢您为计算器提供的建议、我们根据 GUI PLL 计算器配置了 PLL、现在一切都可以正常工作了。

    我们遇到一个新问题、这 可能是一个电气问题 、因此我想再次连接此主题:

    https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1401532/tlv320aic3254-tlv320aic3254---schematic-check-and-advise

    关于同一问题、我们有两个问题-回送模式时会产生很多噪声。

    1) 1)我们正在使用具有4个引脚的耳机- MIC+、MIC-、EARPH-、EARPH+、但我们在使用带有 MIC_IN、GND、 AUDIO_LEFT、AUDIO_RIGHT 的3环辅助电缆时遇到了相同的问题。

    问题是、当我们通过执行以下连接将它们连接到 EV 板时、我们 可以  使用 麦克风获得听力正常但存在很大噪音(听起来像一些电回送)的能力:

    MIC+/MIC_IN (定制耳机/AUX 电缆)连接至 IN1L

    MIC-/GND (定制耳机/AUX 电缆) 连接到 GND

    EARPH-至 GND (使用辅助电缆时、我们也会将 EV 板 J9 GND 连接到辅助 GND、但如果不连接、结果相同)

    EARPH+/AUDIO_LEFT (定制耳机/辅助电缆) 到 HPL。

    但是、当 我们分开麦克风和耳机时、例如使用板载麦克风、将耳机单独连接到 HPL+GND、或者使用两个不同的辅助连接(一个用于麦克风、另一个用于耳机)、问题就会消失、尽管它们共享相同的 GND。

    我们想知道您是否对如何在不使用两个不同麦克风/耳机连接的情况下消除这些噪音有任何建议。 下面提供了此问题的 EV 板代码。 EV 板上或旁边是否需要额外的电路/接地分离?

    与该问题相关的原理图是 EV 电路板的基本配置(不带跳线 W11和 W9的 IN1L、GND 和 HPL)。

    # Software Reset
    w 30 00 00
    w 30 01 01
    
    # PLL Configuration (Updated for MCLK = 12.289 MHz with PLL parameters: M = 3, N = 21, D = 4986, J = 10, R = 1, P = 1)
    # Page 0
    w 30 00 00
    ##############
    # Register 4: PLL Range, Input Clock, CODEC_CLKIN    # Set PLL Range to Low, MCLK as input to PLL, MCLK as CODEC_CLKIN
    w 30 04 03
    # Register 5: PLL Power Up, P and R Values    # Set PLL Power Up, P = 1, R = 1
    w 30 05 91
    # Register 6: PLL Divider J    # Set J = 10
    w 30 06 0A
    # Register 7: PLL Divider D is 0x137A, MSB    # Set D MSB = 13
    w 30 07 13
    # Register 8: PLL Divider D LSB    # Set D LSB = 7A
    w 30 08 7A
    
    # I2S configurations #
    # none, its slave
    
    # DAC Configuration - NDAC=21, MDAC=3, DOSR=128, PRB_P8
    w 30 0B 95
    w 30 0C 83
    w 30 3C 08
    
    # ADC Configuration - NADC=21, MADC=3, AOSR=128, PRB_R3
    w 30 12 95
    w 30 13 83
    w 30 3D 03
    
    # Power Supply Configuration
    # Select Page 1
    w 30 00 01
    # AVDD Weak Connection
    w 30 01 08
    # LDO Configuration
    w 30 02 00
    # Common Mode 0.9V
    w 30 0A 00
    # Power Tune
    w 30 3D 00
    # Quick Charge - Analog inputs power up time is 6.4 ms
    w 30 47 32
    # Reference Power Up
    w 30 7B 01
    
    # DAC Routing Configuration
    # Select Page 1
    w 30 00 01
    # HP Driver Routing/Gain/Powerup(page 1)
    w 30 14 25
    w 30 0E 08 08
    w 30 12 00 00
    # Left channel DAC -> HPL
    w 30 0C 08
    # HPL unmuted, 0dB gain
    w 30 10 00
    # HPL on
    w 30 09 20
    
    # ADC Routing Configuration
    # Select Page 1
    w 30 00 01
    # Quick Charge
    w 30 47 32
    # MicPGA_L Gain 37db
    w 30 3B 3C
    # Mic bias power off
    w 30 33 00
    # IN1L to L_MICPGA positive terminal 20K resistance
    w 30 34 80
    # CM to L_MICPGA negative terminal 20K resistance
    w 30 36 80
    
    # Power up DAC
    # Select Page 0
    w 30 00 00
    # LDAC unmute
    w 30 40 04
    # LDAC volume 24dB
    w 30 41 30
    # LDAC power up
    w 30 3F 92
    
    # Power up ADC
    # Select Page 0
    w 30 00 00
    # Left ADC Unmute
    w 30 52 08
    # ADC Volume 10dB
    w 30 53 14
    # Left ADC Power Up, DIN as Digital Mic Input
    w 30 51 A0
    
    ##        Loopback Configuration      ##
    w 30 00 00
    w 30 1D 10
    

    2)将 MIC+、MIC-、EARPH-和 EARPH+耳机连接到 EV 板时、不会共享接地。 通过连接:
    MIC+至 IN1_L (L_micga 正极)
    mic-至 in2_R (L_micga 负极)
    EARPH-至 GND
    EARPH+至 HPL
    通过使用下面的这种配置(与0x34和0x36寄存器处的第一种配置不同)、我们确实消除了该噪声、并实现了高质量的回送。 但随后会出现新问题-如果麦克风接收到很大的噪声或被物体击中、麦克风将停止工作、直到芯片复位并重新配置。

    # Software Reset
    w 30 00 00
    w 30 01 01
    
    # PLL Configuration (Updated for MCLK = 12.289 MHz with PLL parameters: M = 3, N = 21, D = 4986, J = 10, R = 1, P = 1)
    # Page 0
    w 30 00 00
    ##############
    # Register 4: PLL Range, Input Clock, CODEC_CLKIN    # Set PLL Range to Low, MCLK as input to PLL, MCLK as CODEC_CLKIN
    w 30 04 03
    # Register 5: PLL Power Up, P and R Values    # Set PLL Power Up, P = 1, R = 1
    w 30 05 91
    # Register 6: PLL Divider J    # Set J = 10
    w 30 06 0A
    # Register 7: PLL Divider D is 0x137A, MSB    # Set D MSB = 13
    w 30 07 13
    # Register 8: PLL Divider D LSB    # Set D LSB = 7A
    w 30 08 7A
    
    # I2S configurations #
    # none, its slave
    
    # DAC Configuration - NDAC=21, MDAC=3, DOSR=128, PRB_P8
    w 30 0B 95
    w 30 0C 83
    w 30 3C 08
    
    # ADC Configuration - NADC=21, MADC=3, AOSR=128, PRB_R3
    w 30 12 95
    w 30 13 83
    w 30 3D 03
    
    # Power Supply Configuration
    # Select Page 1
    w 30 00 01
    # AVDD Weak Connection
    w 30 01 08
    # LDO Configuration
    w 30 02 00
    # Common Mode 0.9V
    w 30 0A 00
    # Power Tune
    w 30 3D 00
    # Quick Charge - Analog inputs power up time is 6.4 ms
    w 30 47 32
    # Reference Power Up
    w 30 7B 01
    
    # DAC Routing Configuration
    # Select Page 1
    w 30 00 01
    # HP Driver Routing/Gain/Powerup(page 1)
    w 30 14 25
    w 30 0E 08 08
    w 30 12 00 00
    # Left channel DAC -> HPL
    w 30 0C 08
    # HPL unmuted, 0dB gain
    w 30 10 00
    # HPL on
    w 30 09 20
    
    # ADC Routing Configuration
    # Select Page 1
    w 30 00 01
    # Quick Charge
    w 30 47 32
    # MicPGA_L Gain 37db
    w 30 3B 3C
    # Mic bias power off
    w 30 33 00
    # IN1L is routed to Left MICPGA positive with 20k resistance
    w 30 34 80
    # IN2R is routed to Left MICPGA negative with 20k resistance
    w 30 36 20
    
    # Power up DAC
    # Select Page 0
    w 30 00 00
    # LDAC unmute
    w 30 40 04
    # LDAC volume 24dB
    w 30 41 30
    # LDAC power up
    w 30 3F 92
    
    # Power up ADC
    # Select Page 0
    w 30 00 00
    # Left ADC Unmute
    w 30 52 08
    # ADC Volume 10dB
    w 30 53 14
    # Left ADC Power Up, DIN as Digital Mic Input
    w 30 51 A0
    
    ##        Loopback Configuration      ##
    w 30 00 00
    w 30 1D 10
    

    我们怀疑 L_MICPGA 达到了某种饱和状态、实际上、在将寄存器0x3B 值降低到大约0x10后、这 种现象似乎没有出现、但之后回送的音量对于我们的使用来说太低了。  

    我们想知道是否能得到关于这个问题的一些建议。 我们是否遇到 MICPGA 饱和或其他问题? 如果我们这样做、是否有办法通过寄存器/硬件配置来消除它?

    此致、

    IDO。

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

    尊敬的 Ido:

    我认为这个问题的根源是您的耳机是差分的、但设置的所有内容都是针对单端模式。 SE 模式将更容易受到噪声的影响、尤其是在需要差分信号且可能没有任何措施来调节噪声的传感器上。  

    例如、通过将麦克风和耳机接地、两者有效地短接在一起。 这是一种发生串扰的非常简单的方法。

    关于削波、您所描述的内容似乎合理、但根据我的经验、我尚未看到 ADC 像这样无限期地挂起。 最好大致了解到达输入引脚的电压、以查看是否远远超出满量程值。

    您可以将麦克风增益保持在较低水平、然后提高耳机的数字音量、以弥补回送中的不足。   

    此致、
    Jeff McPherson

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

    尊敬的 Jeff:

    感谢回复、我们尝试在首次设置时使用差分耳机和 SE One (简单辅助耳机)两种耳机。
    您是否将 SE 模式视为我所述的第一个配置? 将 MIC_IN/MIC+布线至正极 MICPGA 端子并将 MIC-/GND 布线至 EV 电路板 GND、同时将 MICPGA  正极端子布线至共模?  
    如果是这样、为什么辅助 SE 耳机在我们将辅助电缆 GND 共享到 EV 板 GND 时会产生相同的噪声? 我们是否在硬件或芯片配置中错过了接地分离的机会?

    关于我所述的第二种配置(MIC+至 MICPGA 正极端子和 MIC-至 MICPGA 负极端子、不与 EARPH 共享 GND)的削波-在这种情况下、合适的电压是多少? 您能想到可能发生这种情况的另一个原因吗? 难道关闭的是 MICPGA 本身而不是 ADC 吗?
    关于升压建议,我们已经将 DAC 的数字音量提高到最大, 所以我们需要另一个解决方案:)

    此致、
    IDO。

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

    尊敬的 Ido:

    您对差分设置的描述(正输入和负输入、而不是正输入和接地输入)、因此我的担心是 MIC 和 EARPH 不仅是接地基准、而是合法输入、这是串扰来自哪里。 根据您在第二种情况下连接麦克风的方式、这似乎是正确的。  

    输入电平非常小。 此电平还会根据您的 PGA 增益进行缩放(如果 PGA 上升、则满量程下降相同的量程)。  

    您可能会根据与输入信号电平相比的增益使 PGA 饱和。 PGA 由模拟电源供电、因此不能超过该电压。

    此致、
    Jeff McPherson