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.

[参考译文] ADS8638:输出寄存器值问题

Guru**** 2516510 points
Other Parts Discussed in Thread: ADS8638

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/770295/ads8638-issue-for-output-register-value

器件型号:ADS8638

通过0V~5V 输入和12位分辨率测试 ADS8638。

预期值为0V:0x000和5V:0xFFF、但结果为0V:0x800和5V:0xBE2。 (我认为这些值是在±10V 范围条件下接收的)

请告诉我需要修改点。

测试条件低于;

・DVDD 和 AVDD:5V、HVDD:-5V、Vref:2.5V (REF5025A)

・模拟输入:0V~5V

来自 FPGA 的 μ・控制信号、如下所示

・SCLK:12.5MHz

・ADC 设置(通过数据表表表11~12)

①Power 电源:打开

μ ②AL:低电平至高电平

③Dummy 写入×2周期(12.5MHz:T=80ns、80ns×20CLK×2=3.2us)

    DIN 设置为0x08

μ ④Aux 配置(06h):写入0x08・・・DIN:设置为0x08

μ ⑤Auto Ch-Sel (0Ch):写入0xFC・・・DIN:设置为0xFC (使用 CH0~5)

μ ⑥Auto 寄存器(05h):写入0x8C・・・DIN:设置为0x8C

转换范围设置为0V~5V、并进行正常 AD 转换

⑦Write Ω 至0x00×6、ADC 读取6ch

此致、

Satoshi

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

    您好 Satoshi、

    欢迎访问 E2E 论坛。

    首先、看起来您在上升沿读取数据、我们的数据表建议在 SCLK 的下降沿读取或启动数据、其次、建议 HVDD 和 HVSS 采用+/-10V 来实现 ADS8635数据表中的指定性能、 请参阅电气特性表的测试条件。 最后、您的命令不正确、例如、您提到了"Auto register (05h):write to 0x8C・・・DIN:set to 0x8C"、如果您要对 AUTO 寄存器(0x05 address)进行编程、则正确的命令为0x0A0C、请检查表9中的 Write 命令。

    更正后、我建议您仅使用手动模式并连续转换一个通道上的模拟信号(例如、通道0)、然后 您可以在检查后切换到不同的通道并获取正确的数据代码。 这将是一种识别任何潜在问题的简单方法。

    此致

    戴尔

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

    戴尔-桑

    感谢您的回复、

    我确认了3个要点,你说,这是没有问题的。

    随附最新的时序图;

    关于检查手动模式的想法、也没有问题。

    请告诉我下面的其他问题;

    ①About 自动模式对于 CH0~CH5、第一个周期仅输出 CH0~CH4、之后的周期为 CH0~CH5、这是否正常运行?

    ②Captured 波形附在下方;CH1:DVDD、CH2:Ref、CH3:AVDD、CH4:AL_PD

     DVDD 和 AL_PD 在 REF 和 AVDD 之前启动、是否有可能出现问题?

    ③About "Auto register (05h):写入0x8C"、我认为该寄存器是一次性复位、对吗?

    ④If 还有其他原因、请告诉我。

    此致、

    Satoshi

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

    Satosi-San、您好!

    由于您的测试中有许多错误、我仍然建议您 使用手动模式并连续转换一个通道上的模拟信号(例如、通道0)、然后您可以在检查后切换到不同的通道和自动模式、并获取正确的数据代码。 这将是一种识别任何潜在问题的简单方法。

    您正在上升沿读取数据、请在下面的时序中看到黑线。

    写入内部寄存器时、请确保命令正确、例如、发送命令为0x0A8C 程序自动寄存器(0x05地址)。

    返回到您的问题:

    1、这应该是不正确的、请注意数据表中的 Auto-MD Ch-Sel 示例错误、对此寄存器的01000110命令将选择通道2、5、6、而不是命令01100100。

    2、在被拉至高电平之前、AL_PD 上存在低电平、这将导致断电模式。 器 件上电后、在对寄存器进行编程以更改引脚功能之前、AL_PD 是一个默认输入功能、用于控制是否断电。 我建议使用电阻器将该引脚上拉至 DVDD。

       我不确定 为什么在定序期间 AVDD (粉色)从高电平变为低电平。

    3、自动寄存器只需编程一次、我不注意这个位、您尝试复位序列计数器。

    4.正如建议的那样,只 需使用手动模式 来转换一个通道信号并确保 数据和时序正确,然后切换到自动模式和其他配置。

    此致

    戴尔

      

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

    请让我确认您的答案1和2;

    ①When 0Ch 地址设置 ch0~ch5选择、05h 地址可以通过位1~3设置范围选择。
    这种想法是否正确?
    如果正确、我认为上述操作与以下结果冲突【其他信息】。
    数据表上是否有任何拼写错误?

    【其他信息】
    ・对 AUTO 寄存器进行读写操作没有问题
    ・当10h~13h 地址设置范围选择时、设置为清除(0V~5V)。

    ②About Ω 上拉1kΩ 引脚、上拉电阻值为1 Ω。
    1kΩ 值是否足够?

    此致、
    Satoshi
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好,Satosi-San,
    0Ch 地址设置 ch0~ch5选择、这是正确的、05h 地址(自动扫描模式寄存器)可以设置范围、但只能用于下一帧。 所有通道的正常范围将通过配置寄存器(地址10h 至13h、第0页)确定。 请在数据表中查看这两个寄存器的说明。
    2、可以使用该电阻器或更高的电阻器、但电阻小于10千欧姆。
    此致
    戴尔