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.

[参考译文] Tida-01454:从 CMB 获取8个信道

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

https://e2e.ti.com/support/tools/simulation-hardware-system-design-tools-group/sim-hw-system-design/f/simulation-hardware-system-design-tools-forum/1081216/tida-01454-getting-8-channels-from-cmb

部件号:Tida-01454
《线程》中讨论的其他部分: BeagleBonePCM1864Beagle

大家好,我想将 TIDA-01454 CMB 的8个信道记录到 BeagleBone AI 中。 由于 CMB 使用两个 PCM1864构建,同时也是 Beagle 主板,因此我按照 本指南(https://www.ti.com/lit/an/sprac97/sprac97.pdf) 对 oder 进行了一些更改,以使其与 BeagleBone AI 兼容。 我成功地录制了 CMB 拥有的8个麦克风中的4个(我只需轻触麦克风检查该麦克风是否正常工作)的音频。 工作 中的麦克风是 MIC1,MIC4,MIC5和 MIC8,尽管我要说噪音很大。

CMB 有4个数据输出引脚,因此我假设每个引脚传输2个信道,因此这是我的 DTS 文件:

&mcasp1 { 

    #sound-dai-cells = <0>; 

    pinctrl-names = "default"; 

    pinctrl-0 = <&mcasp1_pins>; 

    status = "okay"; 

    op-mode = <0>; /* MCASP_IIS_MODE */ 

    tdm-slots = <2>; 

    num-serializer = <4>; 

    serial-dir = < /* 1 TX 2 RX 0 unused */ 

        2 2 0 0 0 0 0 0 0 0 2 2

      >; 

    rx-num-evt = <4>; 

    tx-num-evt = <4>; 

};

串行目录就是这样,因为我使用 McAfee SP1_axr0,McAfee SP1_axr1,McAfee SP1_10和 McAfee SP1_axr11,因为它们是 Beaglbone AI 中提供的。 这是我对 CMB 的配置:

uint8_t U1_PCM1864_CONFIG[][2] = { 

{0x00, 0x00}, // Change to Page 0 

{0x01, 0x40}, // PGA CH1_L to 32dB 

{0x02, 0x40}, // PGA CH1_R to 32dB 

{0x03, 0x40}, // PGA CH2_L to 32dB 

{0x04, 0x40}, // PGA CH2_R to 32dB 

{0x05, 0x86}, // Enable SMOOTH PGA Change; Independent Link PGA; 

{0x06, 0x41}, // Polarity: Normal, Channel: VINL1[SE] 

{0x07, 0x41}, // Polarity: Normal, Channel: VINR1[SE] 

{0x08, 0x44}, // Polarity: Normal, Channel: VINL3[SE] 

{0x09, 0x44}, // Polarity: Normal, Channel: VINR3[SE] 

{0x0A, 0x00}, // Secondary ADC Input: No Selection 

{0x0B, 0x44}, // RX WLEN: 24bit; TX WLEN: 24 bit; FMT: I2S format 

{0x10, 0x03}, // GPIO0_FUNC - SCK Out; GPIO0_POL - Normal 

{0x11, 0x50}, // GPIO3_FUNC - DOUT2; GPIO3_POL - Normal 

{0x12, 0x04}, // GPIO0_DIR - GPIO0 - Output 

{0x13, 0x40}, // GPIO3_DIR � GPIO3 - Output 

{0x20, 0x11}  // MST_MODE: Master; CLKDET_EN: Disable 

}; 

  

uint8_t U2_PCM1864_CONFIG[][2] = { 

{0x00, 0x00}, // Change to Page 0 

{0x01, 0x40}, // PGA CH1_L to 32dB 

{0x02, 0x40}, // PGA CH1_R to 32dB 

{0x03, 0x40}, // PGA CH2_L to 32dB 

{0x04, 0x40}, // PGA CH2_R to 32dB 

{0x05, 0x86}, // Enable SMOOTH PGA Change; Independent Link PGA; 

{0x06, 0x41}, // Polarity: Normal, Channel: VINL1[SE] 

{0x07, 0x41}, // Polarity: Normal, Channel: VINR1[SE] 

{0x08, 0x44}, // Polarity: Normal, Channel: VINL3[SE] 

{0x09, 0x44}, // Polarity: Normal, Channel: VINR3[SE] 

{0x0A, 0x00}, // Secondary ADC Input: No Selection 

{0x0B, 0x44}, // RX WLEN: 24bit; TX WLEN: 24 bit; FMT: I2S format 

{0x10, 0x00}, // GPIO0_FUNC – GPIO0; GPIO0_POL - Normal 

{0x11, 0x50}, // GPIO3_FUNC - DOUT2; GPIO3_POL - Normal 

{0x12, 0x00}, // GPIO0_DIR - GPIO0 - Input 

{0x13, 0x40}, // GPIO3_DIR � GPIO3 - Output 

{0x20, 0x01}  // MST_MODE: Slave; CLKDET_EN: Enable 

};

那么,我没有什么可以获得这8个频道?

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

    很抱歉,我不熟悉养骨,也不熟悉 TIDA 01454  

    但是,这两个芯片中的第二个和第三个 MIC 似乎都不起作用。

    您的系统是否从引脚18 DOUT1A 和引脚19 DOUT2A 获取数据? 。 DOUT1A 上有2路输出,DOUT2A 上有2路输出。

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

    你好,Sanjay,

    感谢您的回答。 我将   J5中的针脚 Data1-miniDSP,DATA2-miniDSP,DATA3-miniDSP 和 DATA4-miniDSP 连接到了我的 BeagleBone 中的针脚:

    P9.18b                               173 fast rx       0 mcasp 0 d0       mcasp@48460000 (mcasp1_pins)
    P9.17b                               174 fast rx       0 mcasp 0 d1       mcasp@48460000 (mcasp1_pins)
    P9.30                                183 fast rx       0 mcasp 0 d10      mcasp@48460000 (mcasp1_pins)
    P9.28                                184 fast rx       0 mcasp 0 d11      mcasp@48460000 (mcasp1_pins)

    所有的麦克风都工作正常(我使用外部 DAC 检查),问题是我无法从所有麦克风接收数据。 我只得到一半的数据。

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

    当您说您检查了外部 DAC 时,您的人到底是什么? 您能详细解释一下。

    我认为您可以在一个范围内查看 DOUT1A 和 LRCK。当 LRCK 既高又低时,您是否看到 DOUT 上的数据发生变化。 这意味着将有2个麦克风输出。 看着 DOUT2,将会再出现2个麦克风

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

    我的意思是我将  Data1-miniDSP,LRCLK 和 BCLK 转换为 I2S DAC,我可以听到 MIC1和 MIC2。 所以我可以保证输出正在出现。 我的问题是,当将输出连接到 BeagleBone 并进行记录时,我只能为每个被测设备获得这两个通道中的一个。 在8个中,总共有4个。  

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

    可以了。 检查带有 I2S DAC 的 DATA3-miniDSP? 这也提供了2个 MIC 通道。

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

    好的,我检查了所有这些,只是为了以防:

    数据1正在提供 MIC1和 MIC2

    数据2正在提供 MIC5和 MIC6

    数据3提供了 MIC3和 MIC4

    数据4提供了 MIC7和 MIC8

    每个输出都正常。 我认为问题可能出在 DTS/ALSA/Driver 上。

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

    是的,IC 看起来很好

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

    你知道这可能是什么吗?

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

    我很抱歉我不是司机领域的专家,也无法在那里提供帮助。

     IC 似乎正在为所有信道正确传输数字输出。