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.

[参考译文] BOOSTXL-ADS1219:由于硬件设置错误导致的驱动程序错误?

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1079095/boostxl-ads1219-driver-errors-due-to-hardware-setup-error

部件号:BOOSTXL-ADS1219
“线程: ADS1219测试”中讨论的其它部件

大家好,

我正在尝试将 MicroPython 驱动程序移植到 Circuit Python,但在试图通过 I2C 向设备写入数据时,会出现同样的奇怪的输入/输出错误。

所需的步骤非常简单-我在电路 Python 中多次这样做,这就是我感到困惑的原因。

我想知道我是否错过了硬件方面的一些关键设置。



下面是一个基于文本的基本原理图,说明了如何连接这些设备:

Adafruit Feather Sense (nrf52840)=>发送 SDA 和 SCL,连接 VDD (3.3V)和 GND =>连接到 Breadboard

实验电路板=>有两个在 VDD 和 I2C (SDA,SCL)之间的上拉电阻器,输出 I2C,VDD,GND => BOOSTXL-ADS1219

(我在下面附上一张照片)


想知道我是否错过了导致这些错误的东西-合理地确定我的代码是否正确。

非常感谢!

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

    在发送重置命令后,我不再认为这是硬件错误,但我非常困惑。

    在伪代码中,我要做的是:

    1)在 i2c 上写入0x80 (写入命令)和0x60 (重置命令)。 这是有效的(伪代码):I2C.writeto (0x80,0x60)
    2)尝试在 i2c 上写入0x80 (写入命令)和0x20 (读取配置 REG)命令。 这不起作用(伪代码):I2C.writeto (0x80,0x20)

    有人能帮助我了解我在这里错过的内容吗?

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

    你好 Sean,

    欢迎参加 E2E 论坛! 有几个考虑因素。  首先,您似乎正在从图片中为 AVDD 选择5V,但您没有将5V 连接到 LaunchPad。  尝试使用3.3V。

    其次,确保使用的是正确的命令集。  例如,reset 命令是0x06,而不是0x60。  此外,要读取配置寄存器,还需要命令和数据读取。  ADS1219数据表对此进行了说明(参见图37)。  因此,在命令 write (0x80,0x20)后,似乎缺少 I2C 读取(0x81,<read byte>)。

    此致,

    鲍勃·B

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

    嗨,Bob,

    非常感谢您的回复。 我还没有能够测试这一点,但我有机会会再回来。

    自撰写本文以来,我还发现 xL-ads1219似乎有两个 i2c 地址:0x40和0x51。 当我拔下 XL 广告时,两者都消失了。

    有什么指导?

    再次感谢!

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

    嗨,Bob,

    我从昨天起就开始工作了——写信感谢您的帮助,并在其他人遇到类似问题时更新机票。

    问题确实是电源电平跳线(JP2):默认值为5V,但(如您所注意到的)我使用的是3.3V。 移动跳线立即解决了问题。

    令我困惑的是 D2 LED (指示3.3V)亮起-这让我相信我不需要调整跳线。 我确信我们都使用了不太准确的丝网标签。 在这里没有对 TI 说任何坏话,而是解释我的困惑。

    另一个问题是 I2C 地址0x51的外观,这是意料之外的。 不重要,但可能值得深入研究。 如果有任何关于这方面的指导,我将不胜感激。

    总而言之,我非常感谢他们的帮助;我没有想到他们会这么迅速和准确地提供帮助。

    再次感谢!


    (PS 我为 reset 命令键入的十六进制值为 typo -感谢您的注意,希望它对其他人有帮助。)

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

    你好 Sean,

    BOOSTXL-1219的用户指南(请参阅 TI.com 上的链接: https://www.ti.com/tool/BOOSTXL-ADS1219 )。  尽管用户指南针对 GUI,但也有硬件信息和主板示意图。  原理图显示,实际上有两个 I2C 设备。  第一个是 ADS1219,第二个是 EEPROM,用于识别主板上的设备型号。  GUI 使用 EEPROM,正常操作中不需要该 EEPROM。

    此致,

    鲍勃·B