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.

[参考译文] TLV320AIC3262:TLV320AIC3262中的音频削波

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1345632/tlv320aic3262-audio-frequency-clipping-in-tlv320aic3262

器件型号:TLV320AIC3262
主题中讨论的其他器件: AM5728

您好!

我们正在使用音频编解码器 TLV320AIC3262连接基于 AM5728的视频 IP 电话产品上的音频器件。 在我们的实验板中、我们支持免提模式和手机模式。 在免提模式下、当我们使用"arecord "录制音频时、可以看到音频信号、直到频率为20kHz。

在手机模式下、当我们使用"arecord"录制音频时、音频信号 频率限制为4kHz。

VoIP 电话有两个用于听筒和免提模式的麦克风。 这两个麦克风器件相同。

查询

1) 1) 1)为何在手持终端模式下信号的频率限制为4kHz?

2) 2)我们正在使用宽带编解码器、并希望音频信号处于宽带 频率范围内。

3) 3)我们可以检查 audeocodec 器件中的哪些寄存器值以解决频率限制问题?

下面是使用手机和免提麦克风录制的音频的频谱。

a)免提音频录制频谱

b)手机音频录制频谱

下面是用于为免提模式和手机模式设置寄存器值的音频脚本。

a)免提脚本

#!/bin/bash
#sw reset
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x7f 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x01 0x01

#power config
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x01
#/usr/sbin/i2cset -f -y 3 0x18 0x01 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x7a 0x01

#clock initialize
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x04 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x0b 0x88
#/usr/sbin/i2cset -f -y 3 0x18 0x0c 0x82
#/usr/sbin/i2cset -f -y 3 0x18 0x0d 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x0e 0x80

#ASI config
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x04
#/usr/sbin/i2cset -f -y 3 0x18 0x01 0x20
#/usr/sbin/i2cset -f -y 3 0x18 0x0a 0x00

#signal processing
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x3c 0x01
#/usr/sbin/i2cset -f -y 3 0x18 0x3d 0x01

#op channel
/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x3f 0xc0
#/usr/sbin/i2cset -f -y 3 0x18 0x40 0x00 
/usr/sbin/i2cset -f -y 3 0x18 0x40 0x02  # CHANGE : Primary DAC Master Volume Configuration : Right channel controlled by left channel 
/usr/sbin/i2cset -f -y 3 0x18 0x00 0x01
/usr/sbin/i2cset -f -y 3 0x18 0x03 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x04 0x00

#HANDSET-OFF
/usr/sbin/i2cset -f -y 3 0x18 0x08 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x24 0x7f
/usr/sbin/i2cset -f -y 3 0x18 0x25 0x7f
/usr/sbin/i2cset -f -y 3 0x18 0x26 0x7f
/usr/sbin/i2cset -f -y 3 0x18 0x28 0x39 #Power-Down RECM & RECP
/usr/sbin/i2cset -f -y 3 0x18 0x29 0xb9 #RECM & RECP Volume Control
/usr/sbin/i2cset -f -y 3 0x18 0x2a 0x08 

#HEADSET-OFF                            
/usr/sbin/i2cset -f -y 3 0x18 0x1f 0xb9 
/usr/sbin/i2cset -f -y 3 0x18 0x20 0xb9 
/usr/sbin/i2cset -f -y 3 0x18 0x1b 0x33 

#SPEAKER-ON
/usr/sbin/i2cset -f -y 3 0x18 0x16 0xc3
#/usr/sbin/i2cset -f -y 3 0x18 0x2e 0x00 #Route LOL to SPK-Left @ 0dB
/usr/sbin/i2cset -f -y 3 0x18 0x2e 0x12 #CHANGE : Route LOL to SPK-Left @ -9dB
#/usr/sbin/i2cset -f -y 3 0x18 0x2f 0x00 # Route LOR to SPK-Right @ 0dB
/usr/sbin/i2cset -f -y 3 0x18 0x2f 0x80 #CHANGE : Control by LOL gain
#/usr/sbin/i2cset -f -y 3 0x18 0x30 0x10 #Set Speaker Gain @6DB
/usr/sbin/i2cset -f -y 3 0x18 0x30 0x30 #CHANGE : Set Speaker Gain @18DB
#/usr/sbin/i2cset -f -y 3 0x18 0x2d 0x03 # Power-UP Stereo Speaker
/usr/sbin/i2cset -f -y 3 0x18 0x2d 0x06 # CHANGE : Power-UP mono Speaker

#adc config                  
/usr/sbin/i2cset -f -y 3 0x18 0x00 0x01
/usr/sbin/i2cset -f -y 3 0x18 0x08 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x33 0x04 #MIC BIAS CHANGE
/usr/sbin/i2cset -f -y 3 0x18 0x33 0x05  # CHANGE : MIC BIAS TO 2.4V
#/usr/sbin/i2cset -f -y 3 0x18 0x34 0x08  # IN3L TO LPGA-P 20K
#/usr/sbin/i2cset -f -y 3 0x18 0x36 0x80  # CM1 TO LPGA-M 20K
#/usr/sbin/i2cset -f -y 3 0x18 0x37 0x08  # IN3R TO RPGA-P 20K
#/usr/sbin/i2cset -f -y 3 0x18 0x39 0x80  # CM1 TO RPGA-M 20K
/usr/sbin/i2cset -f -y 3 0x18 0x34 0x04  # CHANGE: IN3L TO LPGA-P 10K
/usr/sbin/i2cset -f -y 3 0x18 0x36 0x04  # CHANGE: IN3R TO LPGA-M 10K
/usr/sbin/i2cset -f -y 3 0x18 0x37 0x04  # CHANGE: IN3R TO RPGA-P 10K
/usr/sbin/i2cset -f -y 3 0x18 0x39 0x04  # CHANGE: IN3L TO RPGA-M 10K
                             
#/usr/sbin/i2cset -f -y 3 0x18 0x3b 0x3c
#/usr/sbin/i2cset -f -y 3 0x18 0x3c 0x3c
/usr/sbin/i2cset -f -y 3 0x18 0x3b 0x48 # CHANGE : MIC GAIN SET TO 36 db
/usr/sbin/i2cset -f -y 3 0x18 0x3c 0x48 # CHANGE : MIC GAIN SET TO 36 db
/usr/sbin/i2cset -f -y 3 0x18 0x3d 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x51 0xc0
/usr/sbin/i2cset -f -y 3 0x18 0x52 0x00

#enable headphone detection
/usr/sbin/i2cset -f -a -y 3 0x18 0x00 0x00
/usr/sbin/i2cset -f -a -y 3 0x18 0x43 0x80
/usr/sbin/i2cset -f -a -y 3 0x18 0x30 0x80
/usr/sbin/i2cset -f -a -y 3 0x18 0x33 0xc0
/usr/sbin/i2cset -f -a -y 3 0x18 0x00 0x04
/usr/sbin/i2cset -f -a -y 3 0x18 0x56 0x16
/usr/sbin/i2cset -f -a -y 3 0x18 0x00 0x00

#CHANGe : Enable AGC                                                                                                                                                                                                 
/usr/sbin/i2cset -f -a -y 3 0x18 0x00 0x00                                                                                                                                                                  
/usr/sbin/i2cset -f -a -y 3 0x18 0x56 0x82  #Left AGC control registr Gain -5.5db and hysteresis 1db                                                                                                                                                                   
/usr/sbin/i2cset -f -a -y 3 0x18 0x5e 0x82  #Right AGC control registr Gain -5.5db and hysteresis 1db                                                                                                                                
/usr/sbin/i2cset -f -a -y 3 0x18 0x57 0xb2  #Left noise control hysteresis 4db threshold is -78db :: 2023-08-02
/usr/sbin/i2cset -f -a -y 3 0x18 0x5f 0xb2  # Right noise control hysteresis 4db threshold is -78db
#/usr/sbin/i2cset -f -a -y 3 0x18 0x57 0xAE  #Left noise control hysteresis 4db threshold is -74db
#/usr/sbin/i2cset -f -a -y 3 0x18 0x5f 0xAE  # Right noise control hysteresis 4db threshold is -74db
/usr/sbin/i2cset -f -a -y 3 0x18 0x58 0x5a #Left AGC gain max 45db :: 2023-08-02
/usr/sbin/i2cset -f -a -y 3 0x18 0x60 0x5a  #Right AGC gain max 45db
#/usr/sbin/i2cset -f -a -y 3 0x18 0x58 0x54  #Left AGC gain max 42db
#/usr/sbin/i2cset -f -a -y 3 0x18 0x60 0x54  #Right AGC gain max 42db
/usr/sbin/i2cset -f -a -y 3 0x18 0x59 0x00 #attack time
/usr/sbin/i2cset -f -a -y 3 0x18 0x61 0x00 #attack time
/usr/sbin/i2cset -f -a -y 3 0x18 0x5a 0x32 #decay time
/usr/sbin/i2cset -f -a -y 3 0x18 0x62 0x32 #decay time

b)手机脚本

#!/bin/bash

#sw reset
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x7f 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x01 0x01

#power config
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x01
#/usr/sbin/i2cset -f -y 3 0x18 0x01 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x7a 0x01

#clock initialize
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x04 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x0b 0x88
#/usr/sbin/i2cset -f -y 3 0x18 0x0c 0x82
#/usr/sbin/i2cset -f -y 3 0x18 0x0d 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x0e 0x80

#ASI config
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x04
#/usr/sbin/i2cset -f -y 3 0x18 0x01 0x20
#/usr/sbin/i2cset -f -y 3 0x18 0x0a 0x00

#signal processing
#/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x3c 0x01
#/usr/sbin/i2cset -f -y 3 0x18 0x3d 0x01

#op channel
/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x3f 0xc0
/usr/sbin/i2cset -f -y 3 0x18 0x40 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x00 0x01
/usr/sbin/i2cset -f -y 3 0x18 0x03 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x04 0x00

#SPEAKER-OFF
/usr/sbin/i2cset -f -y 3 0x18 0x2e 0x7f #Not-Route LOL to SPK-Left @ 0dB  
/usr/sbin/i2cset -f -y 3 0x18 0x2f 0x7f #Not-Route LOR to SPK-Right @ 0dB 
/usr/sbin/i2cset -f -y 3 0x18 0x30 0x00 #Mute Left & Right Speaker
/usr/sbin/i2cset -f -y 3 0x18 0x2d 0x00 #Power-Down Stereo Speaker

#HEADSET-OFF
/usr/sbin/i2cset -f -y 3 0x18 0x1f 0xb9
/usr/sbin/i2cset -f -y 3 0x18 0x20 0xb9
/usr/sbin/i2cset -f -y 3 0x18 0x1b 0x33

#HANDSET-ON
/usr/sbin/i2cset -f -y 3 0x18 0x00 0x01
/usr/sbin/i2cset -f -y 3 0x18 0x08 0x03 
/usr/sbin/i2cset -f -y 3 0x18 0x16 0xa2
/usr/sbin/i2cset -f -y 3 0x18 0x24 0x00 
/usr/sbin/i2cset -f -y 3 0x18 0x25 0x80
/usr/sbin/i2cset -f -y 3 0x18 0x26 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x28 0xc6 #Power-UP RECM & RECP @ 6dB
/usr/sbin/i2cset -f -y 3 0x18 0x29 0x86 #RECM & RECP Volume Control
/usr/sbin/i2cset -f -y 3 0x18 0x2a 0x04 

#adc config                  
/usr/sbin/i2cset -f -y 3 0x18 0x00 0x01
/usr/sbin/i2cset -f -y 3 0x18 0x08 0x00
#/usr/sbin/i2cset -f -y 3 0x18 0x33 0x04 #MIC Bias Power UP
/usr/sbin/i2cset -f -y 3 0x18 0x33 0x05 #CHANGE: MIC BIAS 2.4V
#/usr/sbin/i2cset -f -y 3 0x18 0x34 0x20 #IN2L TO LPGA-P, RIN = 20K
#/usr/sbin/i2cset -f -y 3 0x18 0x36 0x80 #CM1 TO LPGA-M, RIN = 20K, Internal to Left MIC PGA
#/usr/sbin/i2cset -f -y 3 0x18 0x37 0x20 #IN2R Selected, RIN = 20K
#/usr/sbin/i2cset -f -y 3 0x18 0x39 0x80 #CM1 Selected, RIN = 20K, Internal to Right MIC PGA
/usr/sbin/i2cset -f -y 3 0x18 0x34 0x10 #CHANGE: IN2L TO LPGA-P, RIN = 10K
/usr/sbin/i2cset -f -y 3 0x18 0x36 0x40 #CHANGE: CM1 TO LPGA-M, RIN = 10K, Internal to Left MIC PGA
/usr/sbin/i2cset -f -y 3 0x18 0x37 0x01 #CHANGE: IN2L TO RPGA-P, RIN = 10K
/usr/sbin/i2cset -f -y 3 0x18 0x39 0x40 #CHANGE: CM1 Selected, RIN = 10K, Internal to Right MIC PGA
                             
#/usr/sbin/i2cset -f -y 3 0x18 0x3b 0x3c #Left  MIC PGA is enabled, at 30dB
#/usr/sbin/i2cset -f -y 3 0x18 0x3c 0x3c #Right MIC PGA is enabled, at 30dB
/usr/sbin/i2cset -f -y 3 0x18 0x3b 0x12 #CHANGE: Left  MIC PGA is enabled, at 9dB
/usr/sbin/i2cset -f -y 3 0x18 0x3c 0x12 #CHANGE: Right MIC PGA is enabled, at 9dB
/usr/sbin/i2cset -f -y 3 0x18 0x3d 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x00 0x00
/usr/sbin/i2cset -f -y 3 0x18 0x51 0xc0 #Left & Right ADC power UP, not configured for Digital Microphon, Volume changes by 1 step
/usr/sbin/i2cset -f -y 3 0x18 0x52 0x00 #Left & Right ADC Un-Mute , at 0dB

#enable headphone detection
/usr/sbin/i2cset -f -a -y 3 0x18 0x00 0x00
/usr/sbin/i2cset -f -a -y 3 0x18 0x43 0x80
/usr/sbin/i2cset -f -a -y 3 0x18 0x30 0x80
/usr/sbin/i2cset -f -a -y 3 0x18 0x33 0xc0
/usr/sbin/i2cset -f -a -y 3 0x18 0x00 0x04
/usr/sbin/i2cset -f -a -y 3 0x18 0x56 0x16
/usr/sbin/i2cset -f -a -y 3 0x18 0x00 0x00

#CHANGE: EnableAGC                                                                                                                                                                                                 
/usr/sbin/i2cset -f -a -y 3 0x18 0x00 0x00                                                                                                                                             
/usr/sbin/i2cset -f -a -y 3 0x18 0x56 0x82  #Left AGC control registr Gain -5.5db and hysteresis 1db                                                                                                                                                                   
/usr/sbin/i2cset -f -a -y 3 0x18 0x5e 0x82  #Right AGC control registr Gain -5.5db and hysteresis 1db                                                                                                                               
/usr/sbin/i2cset -f -a -y 3 0x18 0x57 0xae  #Left noise control hysteresis 4db 
/usr/sbin/i2cset -f -a -y 3 0x18 0x5f 0xae  #Right noise control hysteresis 4db
/usr/sbin/i2cset -f -a -y 3 0x18 0x58 0x2e  #Left AGC gain max 23dB
/usr/sbin/i2cset -f -a -y 3 0x18 0x60 0x2e  #Right AGC gain max 23dB
/usr/sbin/i2cset -f -a -y 3 0x18 0x59 0x00 #attack time
/usr/sbin/i2cset -f -a -y 3 0x18 0x61 0x00 #attack time             
/usr/sbin/i2cset -f -a -y 3 0x18 0x5a 0x32 #decay time                
/usr/sbin/i2cset -f -a -y 3 0x18 0x62 0x32 #decay time

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

    您好!

    看看这两个脚本之间的差异、我只能看到不同的模拟块设置。  

    这告诉我、采样率是在编解码器之外配置的。

    某种程度上,当手机被选择时,它切换到语音频带8kHz,当选择免提时,它的音频频带可能是44.1kHz.  

    您可以检查 WCLK 以查看采样率进行确认。

    此致。

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

    您好!

    音频编解码器在我们的产品中配置为从模式。 它从 SOC (AM5728)获取时钟。

    我们检查了 WCLK,在免提模式下它是44KHz,在听筒模式下它是11KHz。

    我们如何在 SOC 中配置 WCLK?

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

    您好!

    您可以 通过使用器件型号创建主题来与 AM5728团队进行核实。

    基本上、要获得相同的频率响应、您需要将两个采样都设置为44.1kHz。

    您可以参阅 AM5728数据表、了解如何配置时钟或提交线程以获取其支持。

    我现在将关闭该主题。

    此致。