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.

[参考译文] ADS8166:ADS8166

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1312345/ads8166-ads8166

器件型号:ADS8166

您好!

我正在系统中实施 ADSB166、但从寄存器读取数据时遇到问题。 到目前为止、我们正在检查我们是否正确写入寄存器、以及我们可以在之后读取它、但由于某些原因、当我们执行读取操作时、MISO 线路返回不合逻辑的值(我假设它们是测量值)。  
代码执行以下操作:

-首先发送一个24位帧写入 REG_ACCESS 寄存器 REG_ACCESS_BITS = 1010 1010b。

-第二,我们从同一个寄存器读取一个24位的帧与读命令,它应该返回 1010 1010 1010 0000 0000 0000 0000,但我们接收到前面提到的值。

请查看所附的接收信号:

全球交易:

写入命令:

读取命令:


我还添加了原理图、以防连接错误:

感谢您的帮助  

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

    您好、Victor:

    感谢您的发帖。

    必须使用正常的 WR_REG 命令帧写入寄存器00h 中的 REG_ACCESS_BITS。 这意味着您必须使用寄存器写入命令将数据值"1010 1010b"写入地址00h、如下所示:

    WR_REG 11位地址  8位数据

       0000 1  000 0000 0000  1010 = 0x0800AA

    在第二帧中、必须使用以下命令发送 RD_REG 命令帧:

    RD_REG  11位地址  8位数据

       0001 0   000 0000 0000 0000 0000  = 0x100000

    在第三个帧中、您可以将 SDI 保持为低电平并发送至少8个 SCLK (即 NOP 命令)。 请求的寄存器数据将在 SDO 上的前8位中输出:

    此致、

    瑞安

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

    您好、Ryan、非常感谢您的答复。

    如果我没有弄错、所附的屏幕截图遵循您所述的行为在第三帧中我无法在前8位中看到请求的寄存器数据、您知道我们可能会出什么问题吗? 或者、您是否需要更多有关我们如何做到这一点的信息?  
    谢谢你。

    此致、

    Víctor  

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

    您好、Victor:

    抱歉、在最后一次回复之前、我无法正确加载图像。 逻辑分析仪捕获的 SDI 外观是否正确。 对于 SDO、似乎有一些干扰发生得比一个 SCLK 周期快得多。

    在您的原理图中、我注意到 REFBY2在接地短路。 默认情况下、内部 REFB2缓冲器已通电、您必须写入器件以将其关闭。 如果可能、我建议暂时移除此连接。 此引脚可以保持悬空。

    此致、

    瑞安

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

    您好、Ryan、  

    感谢您的答复、我们能够根据 SDO 规范修改时序、现在通信是正确的。

    此致、

    Víctor  

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

    您好 Victor -很高兴听到您解决了这个问题! 如果您需要进一步的帮助、请告诉我们。

    此致、

    瑞安