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.

[参考译文] ADS7138-Q1:读取模拟输入

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1462375/ads7138-q1-reading-analog-inputs

器件型号:ADS7138-Q1
主题中讨论的其他器件:ADS7138、BP-ADS7128

工具与软件:

嗨、团队:

我们正在开发一个使用 ADS7138QRTERQ1的设计。 ‘一直在尝试读取模拟输入、但它始终返回"00"。

我们可以通过读取返回默认‘81"的系统状态寄存器"00"与器件成功通信。

我们的设计采用 AN0输入来监控~2.7VDC 电压 、另一个仅使用电压电平输入以及 NTC。 但是、我们只是尝试准备了一个电压输入。

控制器设置为 手动模式以读取 ADC 通道‘0"并读取寄存器地址0x60 MAX_CH0_LSB。

因此:

  • 设置为 ADC 通道‘0":
  • I2C w 4 14 081100
  • 读取 MAX_CH0_LSB:
  • I2C w 4 14 1060.
  • I2C r 4 14 1.

返回值:

  • 00

我们尝试了 MAX_CHx_LSB/MSB、min、recent。

LSB/MSB‘MAX 和 Recent 返回"00"

‘LSB/MSB 返回"FF"

我们验证了模拟输入引脚上的电压。

‘还‘将"81 "写入地址"00"来重置"棕色"‘。

 

我们一直在尝试读取除"00"之外的任何值、但没有成功。 是否缺少 ADC 开始读取前所需的配置设置?

您是否有任何问题或建议、团队可以利用这些问题或建议来推进工作?

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

    大家好、Dajon:

    GENERAL_CFG 寄存器中的 STATS_EN 位需要设置为高电平、才能使 MAX、MIN 和 RECOVER 寄存器开始更新。 执行此操作后、他们应该会获得正确的数据。 如果他们在这方面需要任何进一步的帮助、请告诉我。

    此致、
    Joel

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

    您好、Joel:

    我将 GENERAL_CFG 寄存器中的 STATS_EN 设置为1、但读取 MAX 或 RECTENT 仍返回"00"。

    I 执行的序列为:

    I2C w 4 14 080120

    I2C w 4 14 10a2

    I2C r 4 14 1.

    00

    是否需要设置转换以进行任何读数? 我尚未重新配置转换、目前主要尝试获取除"00"以外的任何输出值、这种方式我知道我正在读取模拟输入。

    我需要配置的任何其他配置?

    谢谢!

    Titngai

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

    尊敬的 Titngai:

    是、必须先启动转换、然后才使用值更新寄存器。 在手动和自动序列模式下、转换控制从 SCL 的第9个下降沿开始。 有关如何使用器件开始转换的信息、请参阅产品说明书的第8.4.2节。

    您能帮助说明一下您希望此行中的器件会有什么吗?

    [报价 userid="398961" url="~/support/data-converters-group/data-converters/f/data-converters-forum/1462375/ads7138-q1-reading-analogue-inputs/5612501 #5612501"]

    I2C r 4 14 1.

    [报价]

    此致、
    Joel

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

    您好、Joel:

    I2C r 4 14 1线是  I2C w 4 14 10a2之后的下半部分、如  单次读取的数据表(8.5.1.1)所述。

    I2C w 4 14 10a2

    I2C r 4 14 1.

    这意味着从 A2寄存器读取1个字节。

    我希望从通道1最近寄存器中获得1个字节、其中存储了先前的通道1 (AN1)模拟输入数据。 我们的模拟输入1 (AN1)就是1.65V 电压输入。

    我们将在第8.4.4节中尝试"自主模式"、该模式应该在没有启动的情况下启动转换、但当前得到的结果不同、该结果未返回任何值。

    您是否能够 在手动模式或自主模式下共享一个采样 i2c 序列来读取模拟输入? 例如、3.3V 基准输入和2V 模拟输入。

    谢谢!

    Titngai

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

    尊敬的 Titngai:

    您是否有能够将捕获结果导出为文件的逻辑分析仪? 我最好确定您使用实用程序编写的行实际上正在执行您期望执行的操作。

    我将为您处理一个 I2C 序列示例。

    此致、
    Joel  

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

    您好、Joel:

    很好的信息。 我们拥有 Total Phase Beagle。 我将尝试捕获通信。

    谢谢!

    Titngai

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

    尊敬的 Titngai:

    在下面、该器件配置为手动模式转换。

    在这张图中、我已使用 ADS7138启动了转换读取。  

    在第一个帧中、控制器设置对 ADS7138 (7位 I2C 地址0x10)的读取、然后器件进行确认。 接下来的4个帧是2次数据转换、因为每次转换都通过2个 I2C 帧进行编码。 控制器都会确认来自器件的每个帧。  

    当控制器想要停止转换过程时、它会向器件提供 NACK、如下所示。 之后、器件将停止提供转换数据。

     '

    这是否有助于直观地呈现您在开始和结束数据收集时的预期?

    此致、
    Joel  

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

    您好、Joel:

    请将您在"启动转换读取"中 键入的内容发送给我们、我想看看我们输入命令的方式是否有错误。  谢谢!

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

    Christopher、您好!

    这是通过 BP-ADS7128评估模块获取的、该源代码不可公开共享。  我不熟悉您使用的 I2C 实用程序、因此我无法确定它的含义。  

    也许您可以尝试用您的控制程序重新创建这些相同的捕获? 如果不生成相同的结果、请分享您键入的命令以及生成的 I2C 波形的逻辑捕获或示波器捕获。 举几个例子、我应该能够确定控制程序的工作原理。

    此致、
    Joel