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/TLV320ADC3101:TLV320ADC3101:关于 i2c 从 ID (address)、我们能否在此编解码器 IC 上使用基于 Linux 的 i2c 工具?

Guru**** 2473270 points
Other Parts Discussed in Thread: TLV320ADC3101

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/807691/linux-tlv320adc3101-tlv320adc3101-about-the-i2c-slave-id-address-and-can-we-use-linux-based-i2c-tools-on-this-codec-ic

器件型号:TLV320ADC3101

工具/软件:Linux

尊敬的 TI 支持:

我们现在尝试启动 TLV320ADC3101编解码器、并有以下问题:

(1)关于 i2c 从设备 ID

如您所知、 TLV320ADC3101中的寄存器通过 i2c 总线进行配置(读取/写入)。

在访问它之前、我们需要知道从器件 ID (或器件 ID、从器件地址等)

请参阅 http://www.ti.com/lit/ds/symlink/tlv320adc3101.pdf 第42页

可能 的 I2C 从设备地址应为0x18、0x19、0x1a 和0x1b。

您能否确认我的判断是否正确?

(2)关于使用 Linux i2c 工具检测和访问 TLV320ADC3101编解码器 IC

Linux 内核提供了一种称为 i2c-tools:的有用工具

https://git.kernel.org/pub/scm/utils/i2c-tools/i2c-tools.git/

我不知道您以前是否使用过它。

但是、如果您已经使用了该工具、您能帮助确认我是否可以使用它来检测器件、通过该工具读取/写入寄存器。

例如:(假设编解码器 IC 连接在 i2c-0总线中)

--> i2cdetect -r -y 0:应扫描地址范围为0x18~0x1b 的器件

--> i2cdump -y 0 0x18:将转储寄存器映射(假设 i2c 从地址为0x18)

--> i2cset -f -y 0 0x18 0x12 0x5:将寄存器偏移量0x12处的值设置为0x5

->i2cget -y 1 0x50 0x12:将获得寄存器偏移0x12处的值

谢谢!

B.R.

维克多

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

    维克多

    地址如您所述、位于数据表中。  设置地址的方法是使用 I2C_ADR0和 I2C_ADR1。  请参阅以下内容:

    2. 我个人没有使用过这种方法, 但我不明白为什么它不起作用, 它似乎与我们看到其他人使用的方法非常相似。  

    此致、

    -Steve Wilson

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

    感谢您的回复。
    与硬件人员一起检查后、我们有两个编解码器 IC、其中的 I2C_ADR1/I2C_ADR0为:
    1/1
    1/0

    它们的 i2c 从器件地址分别为0x1a 和0x1b、对吧?


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

    是的、正确。

    此致、
    -Steve Wilson