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.

[参考译文] TLV320AIC3007:具有 i2c/I2S 的 tlv320aIC3007接口面临错误:t lv320aic3x-codec 0-0018:无法同步寄存器0x33-0x36。 -121.

Guru**** 2511985 points
Other Parts Discussed in Thread: TLV320AIC3007

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/925505/tlv320aic3007-tlv320aic3007-interface-with-i2c-i2s-facing-error-t-lv320aic3x-codec-0-0018-unable-to-sync-registers-0x33-0x36--121

器件型号:TLV320AIC3007

您好,

感谢 您的响应,我 将 tlv320aic3007(i2c/I2S)连接到我的 soc (a5d27)。当我使用 aplay 命令播放声音时,我会遇到以下错误。请查看以下详细信息。

错误:

aplay Sample_BeeMoved_48kHz16bit.m4a -v
播放原始数据'SCALE_BeeMoved_48kHz16bit.m4a':无符号8位、速率
8000 Hz、单声道
tlv320aic3x-codec 0-0018:无法同步寄存器0x33-0x36。 -121.
插头 PCM:路由转换 PCM (sformat=S16_LE)
  转换表:
    0 <- 0
    1 <- 0
其设置为:
  流:      播放
  访问      :rw_interleaved
  格式      :U8.
  子格式   :标准
  频道    :1.
  价格:        8000
  精确比率  :8000 (8000/1)
  msbits      :8.
  Buffer_size :4000
  Period_size :1000
  Period_Time :125000
  tstamp_mode :无
  tstamp_type :单调
  Period_step :1.
  AVAIL_MIN   :1000
  Period_event:0
  START_THRESHOLD :4000
  STOP_THRESHOLD  :4000
  Silence_threshold:0
  Silence_size:0
  边界    :2097152000
从设备:硬件 PCM 卡0 "多音频"设备0子设备0
其设置为:
  流:      播放
  访问      :MMAP_Interleaved
  格式      :S16_LE
  子格式   :标准
  频道    :2.
  价格:        8000
  精确比率  :8000 (8000/1)
  msbits      :16.
  Buffer_size :4000
  Period_size :1000
  Period_Time :125000
  tstamp_mode :无
  tstamp_type :单调
  Period_step :1.
  AVAIL_MIN   :1000
  Period_event:0
  START_THRESHOLD :4000
  STOP_THRESHOLD  :4000
  Silence_threshold:0
  Silence_size:0
  边界    :2097152000
  appl_ptr    :0
  HW_PTR      :0

 

请查看以下 devicetree 配置并让我知道问题。

 tlv320_MCLK:振荡器{
                    兼容="固定时钟";
                    #clock-cells =<0>;
                    时钟频率=<19200000>;
                    clock-output-names ="tlv320-MCLK";
                       };

                       i2c0:I2C@f8028000{
                               DMA =<0>、<0>;
                               pinctrl-names ="default";
                               pinctrl-0 =<&pinctrl_i2c0_default>;
                               状态="正常";

               tlv320aic3007tlv320aic3007@18{
                                               #sound-di-cells =<0>;
                                               兼容="ti、tlv320aic3007"
                                               reg =<0x18>;
                                               AVDD-SUPPLY =<_vddin_3V3>;
                                               IOVdd-supply =<_vddin_3V3>;
                                               DRVDD-SUPPLY =<_vddin_3V3>;
                                               DVDD 电源=<&VCC_1v8_reg>;
                                               状态="正常";
                                               };

               };

听起来{
  兼容="简单音频卡";
               simple-audio-card、name ="简单音频";
               simple-audio-card、format ="I2S";
               simple-audio-card、bitclock-master =<&dailink_master>;
               simple-audio-card、frame-master =<&dailink_master>;
               位时钟反转=<1>;
       /*     简单音频卡,MCLK-FS =<256>;*/
               simple-audio-card、小工具=
                       "线路"、"线路输入"、
                       "线路"、"线路输出"、
                       "扬声器"、"扬声器";
               简单音频卡,路由=
                       "线路输出"、"LLOUT"、
                       "线路输出"、"RLOUT"、
                       "扬声器"、"SPOP"、
                       "扬声器"、"SPOM"、
                       "LINE1L"、"线路输入"、
                       "LINE1R"、"线路输入";
               状态="正常";

               简单音频卡、CPU{
                       Sound-Dai =<&i2s0>;
                       位时钟反转=<0>;
                                          };

                           };
               dailink_master:simple-audio-card、codec{
                       sound-dai =<&tlv320aic3007 0>;
                       时钟=<&tlv320_MCLK>;
                       系统时钟频率=<12000000>;

               };
               };

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

    您好!

    不可原谅的是、我不熟悉驱动程序和可能的错误。 如果您可以通过 ASI 总线的示波器截图、原理图和寄存器转储发送、我将很高兴查看配置是否有任何问题。  


    此致、

    Aaron

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

    尊敬的 Aaron:

    请查看以下详细信息。

    日志:

    root@rugger-board-a5d2x-SD1:~# aplay demo.wav -v
    播放波'demo.wav':有符号16位小端字节序、速率8000Hz、单声道
    小问题*** 在 aci3x 中设置偏置速度函数****
    (二 SND_SoC_BIAS 待机情况*********
    tlv320aic3x-codec 0-0018:无法同步寄存器0x2b-0x2F。 -121.
    小问题*** 在 aci3x 中设置偏置速度函数****
    ******* Snd_soc_bias 准备情况*********
    小问题*** 启用 PLL ********
    小问题*** 在 aci3x 中设置偏置速度函数****
    ********* Snd_soc_bias 情况*********
    插头 PCM:路由转换 PCM (sformat=S16_LE)
     转换表:
       0 <- 0
       1 <- 0
    其设置为:
     流:      播放
     访问      :rw_interleaved
     格式      :S16_LE
     子格式   :标准
     频道    :1.
     价格:        8000
     精确比率  :8000 (8000/1)
     msbits      :16.
     Buffer_size :4000
     Period_size :1000
     Period_Time :125000
     tstamp_mode :无
     tstamp_type :单调
     Period_step :1.
     AVAIL_MIN   :1000
     Period_event:0
     START_THRESHOLD :4000
     STOP_THRESHOLD  :4000
     Silence_threshold:0
     Silence_size:0
     边界    :2097152000
    从设备:硬件 PCM 卡0 "多音频"设备0子设备0
    其设置为:
     流:      播放
     访问      :MMAP_Interleaved
     格式      :S16_LE
     子格式   :标准
     频道    :2.
     价格:        8000
     精确比率  :8000 (8000/1)
     msbits      :16.
     Buffer_size :4000
     Period_size :1000
     Period_Time :125000
     tstamp_mode :无
     tstamp_type :单调
     Period_step :1.
     AVAIL_MIN   :1000
     Period_event:0
     START_THRESHOLD :4000
     STOP_THRESHOLD  :4000
     Silence_threshold:0
     Silence_size:0
     边界    :2097152000
     appl_ptr    :0
     HW_PTR      :0

    I2C 转储值:

    @加固型电路板 a5d2x-SD1:~# i2cdump -f 0 0x18
    i2cdump:警告! 该程序可能会使您的 I2C 总线混乱
    继续? [Y/N] y
        0 1 2 3 4 5 6 7 8 9 A b c d e f   0123456789abcdef
    00:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    10:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    20:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    30:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    40:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    50:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    60:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    70:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    80:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    90:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    A0:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    B0:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    C0:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    D0:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    E0:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    F0:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX   XXXXXXXXXXXXXXXX
    root@加固型电路板-a5d2x-SD1:~

    原理图


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

    您好!

    我无法从寄存器转储中获取任何信息。 您能否提供寄存器配置、以便我了解器件的配置方式。  

    查看原理图、我想注意两件事:

    1) 我们建议通过0.47uF 电容器将未使用的输入连接到 GND。 如果有多个未使用的输入、它们可以全部连接在一起并通过一个0.47uF 电容器连接到 GND。  

    2) 看起来 DVDD 是通过分压器生成的。 不建议这样做。  电源输入需要来自小于10Ω Ω 的低阻抗源、或者进入电源引脚的瞬态电流会在电源引脚上产生压降、从而导致与 PSRR 相关的误差。 建议将其替换为线性稳压器。  

    此致、

    Aaron

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

    您好!

    请找到我正在使用的随附驱动程序。 请找到随附的原理图。在驱动程序中、提到了寄存器配置。

    e2e.ti.com/.../4527.tlv320aic3x.c

    e2e.ti.com/.../8875.tlv320aic3x.h

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

    尊敬的 Aron:

    感谢您的输入,我们遵循了您的输入。现在我们获得了所有寄存器转储值。但我们仍然没有听到任何声音。当我使用播放命令播放音频 时,屏幕将显示空白,直到提供 Ctrl+C 时才会自动终止

    请查看以下日志。

    root@rugger-board-a5d2x-SD1:~# i2cdump -f -y 0 0x18
         0 1 2 3 4 5 6 7 8 9 A b c d e f 0123456789abcdef
    00:00 00 00 10 04 00 00 00 00 00 00 00 01 00 00 00 80……?… ???
    10:80 ff 78 78 78 78 78 78 78 78 02 00 fe 00 fe 00 ?.xxxxxx?..
    20:00 00 00 20 00 00 00 00 00 00 00 00 80 00 00 00    … ???...
    30:00 00 00 04 00 00 00 00 00 00 00 00 04 00 00 00 00 00 ...? ?。
    40:00 04 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00。。。。 ?。
    50:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    60:00 02 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00……………………………………………
    70:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    80:00 00 10 04 00 00 00 00 00 00 00 00 01 00 00 00 80……?… ???
    90:80 ff 78 78 78 78 78 78 78 02 00 fe 00 fe 00 ?.xxxxxx?..
    A0:00 00 00 20 00 00 00 00 00 00 00 80 00 00 00    … ???...
    B0:00 00 04 00 00 00 00 00 00 00 00 04 00 00 00 00 00 ...? ?。
    C0:00 04 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00。。。。 ?。
    D0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    E0:00 02 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00……………………………………………
    F0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    root@加固型电路板-a5d2x-SD1:~# cd /mnt
    root@rugger-board-a5d2x-SD1:/mnt# aplay -r 44100 CHIKKAHOSAHALLI.MP3
    播放原始数据'CHIKKAHOSAALLI.MP3':无符号8位、速率44100Hz、单声道

     



    ^已通过信号中断中止...
    aplay:PCM_WRITE:2051:WRITE error:interrupted system call
    root@rugger-board-a5d2x-SD1:/mnt# aplay -r 44100 CHIKKAHOSAHALLI.MP3 -v
    播放原始数据'CHIKKAHOSAALLI.MP3':无符号8位、速率44100Hz、单声道
    插头 PCM:路由转换 PCM (sformat=S16_LE)
      转换表:
        0 <- 0
        1 <- 0
    其设置为:
      流:      播放
      访问      :rw_interleaved
      格式      :U8.
      子格式   :标准
      频道    :1.
      价格        :44100
      确切价格  : 44100(44100/1)
      msbits      :8.
      Buffer_size :22052
      Period_size :5513
      Period_Time :125011
      tstamp_mode :无
      tstamp_type :单调
      Period_step :1.
      AVAIL_MIN   :5513
      Period_event:0
      START_THRESHOLD :22052
      STOP_THRESHOLD  :22052
      Silence_threshold:0
      Silence_size:0
      边界    :1445199872
    从设备:硬件 PCM 卡0 "多音频"设备0子设备0
    其设置为:
      流:      播放
      访问      :MMAP_Interleaved
      格式      :S16_LE
      子格式   :标准
      频道    :2.
      价格        :44100
      精确比率  :44100 (44100/1)+--- +
      msbits      : 16|                             
      Buffer_size :22052                                     |无法
    打开/dev/ttyUSB0!  |
      period_size :5513|                             
      Period_Time :125011 +--- +
      tstamp_mode :无
      tstamp_type :单调
      Period_step :1.
      AVAIL_MIN   :5513
      Period_event:0
      START_THRESHOLD :22052
      STOP_THRESHOLD  :22052
      Silence_threshold:0
      Silence_size:0
      边界    :1445199872
      appl_ptr    :0
      HW_PTR      :0

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

    您好!

    感谢您提供信息。 我会看一下、但首先、您能否提供有关您的应用的更多信息? 预期用途是什么? MIC 输入和录制输出? 通过扬声器播放? 您说现在您没有听到任何声音。 这是来自扬声器上的 DAC 输出、还是用于从 ADC 输出进行回放或录制?

    我还想知道所需的采样率。 在其他文章中、我看到采样率不同。 您能否提供预期的 Fs 以及 MCLK、BCLK 和 WCLK 频率? 如果您可以提供示波器、这里的示波器快照会很好。   

    此致、

    Aaron

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

    您好!

    目前我们不使用 MIC、我们已将扬声器连接到编解码器20引脚(RIGHT _LOP)。在这里、编解码器充当主器件、我们在 MCLK 引脚上提供19.2MHz 频率。

    谢谢、

    Prasanth。

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

    您好!

    TI FAE 的一位建议我更改以下寄存器值。您能指导我更改寄存器值吗。请查看以下数据。

    寄存器93 (0x5D)的值应为0x09
    寄存器41 (0x29)的值应为0x10
    寄存器44 (0x2C)的值应为0x00
     
    在执行 aplay 命令后:
     
    root@rugger-board-a5d2x-SD1:~# i2cdump -f -y 0 0x18
        0 1 2 3 4 5 6 7 8 9 A b c d e f   0123456789abcdef
    00:00 00 aa 91 c0 00 0A c0 00 00 01 00 00 00 20   ..???????????...
    10:20 ff 00 78 00 78 78 00 78 02 00 fe 00 00 fe 00    ...xx.xx??..
    20:00 00 00 20 c0 00 40 00 00 00 af 2 f 2 f af   … ?..@..?//?
    30:00 00 00 0f 2f f af 00 00 00 0f 00 00 00 00 00 2f 2f 2f   ……?//?………………
    40:AF 0f 00 00 2f 2f af 0f 04 00 00 00 00 00 00   ?????????。
    50:2F 2f af 00 00 00 0b 00 00 2f 2f af 0b de 0c   //??????//??????
    60:00 02 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00   ……………………………………………
    70:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    
    80:00 00 aa 91 c0 00 0A c0 00 00 01 00 00 00 20   ..??????????...
    90:20 ff 00 78 00 78 78 00 78 02 00 fe 00 00 fe 00    ...xx.xx??..
    A0:00 00 00 20 c0 00 40 00 00 00 af 2f 2f af   … ?..@..?//?
    B0:00 00 00 0f 2f 2f af 00 00 00 00 0f 00 00 00 00 2f 2f 2f   ……?//?……………
    C0:AF 0f 00 00 2f 2f af 0f 04 00 00 00 00 00 00   ?????????。
    D0:2F f af 00 00 00 0b 00 00 2f 2f af 0b de 0c   //?????//???????
    E0:00 02 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00   ……………………………………………
    F0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    

    在执行 aplay 命令之前:
     
    root@rugger-board-a5d2x-SD1:~# i2cdump -f -y 0 0x18                                                                                                                      
        0 1 2 3 4 5 6 7 8 9 A b c d e f   0123456789abcdef
    00:00 00 00 10 04 00 00 00 00 00 00 00 01 00 00 00 80   ……?… ???
    10:80 ff 78 78 78 78 78 78 78 78 02 00 fe 00 fe 00   ?.xxxxxx?..
    20:00 00 00 20 00 00 00 00 00 00 00 00 80 00 00 00    … ???...
    30:00 00 00 04 00 00 00 00 00 00 00 00 04 00 00 00 00 00   ...? ?。
    40:00 04 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00   。。。。 ?。
    50:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    
    60:00 02 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00   ……………………………………………
    70:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    
    80:00 00 10 04 00 00 00 00 00 00 00 00 01 00 00 00 80   ……?… ???
    90:80 ff 78 78 78 78 78 78 78 02 00 fe 00 fe 00   ?.xxxxxx?..
    A0:00 00 00 20 00 00 00 00 00 00 00 80 00 00 00    … ???...
    B0:00 00 04 00 00 00 00 00 00 00 00 04 00 00 00 00 00   ...? ?。
    C0:00 04 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00   。。。。 ?。
    D0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    
    E0:00 02 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00   ……………………………………………
    F0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    

     
     
    谢谢、
    Prasanth