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.

[参考译文] ADS1248:ADS1248的寄存器写入和读取值是不同的。 此外、返回垃圾 ADC 值。

Guru**** 2462170 points
Other Parts Discussed in Thread: ADS1248, ADS124S08

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1382583/ads1248-ads1248-register-write-and-read-value-is-differed-and-also-return-garbage-adc-value

器件型号:ADS1248
Thread 中讨论的其他器件: ADS124S08

工具与软件:

 您好!

  我们正在使用24位 ADC 芯片 ADS1248通过 SPI 通信与 STM32控制器连接。 我们 没有得到正确的输出 ADC 值。 当 始终重复读取 ADC 值获取垃圾值时、我已经调整了电位计。

在这种情况下 、我们需要检查 STM 和 ADS1248之间的握手是否已完成。 于是、编写了简单代码来 检查 ADS1248与 STM 之间的通信。 因此、我们选择一个寄存器来写入某个值、然后再次读取该特定寄存器来比较两个值是否相同。 但我们得到不同的值、两者是不同的。

此处附上了原理图文档和示例源代码。

请核实并帮助我们解决此问题。

比较

SPI 配置

我的源代码

e2e.ti.com/.../4274.ADS1248.zip

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

    尊敬的 Narasimman M:

    您是否能够确保控制器在 SCLK 的下降沿捕获数据? 我不确定"CPHA = 1边沿"是否意味着什么、但这可能意味着第一个边沿、例如上升? 不同的控制器具有不同的命名规则、因此只需确保在下降沿捕获数据

    如果不起作用、您能否发送显示 WREG 和 RREG 数据通信的逻辑分析仪图? 请包括 CS、SCLK、DOUT、DIN、DRDY、 启动和复位。 谢谢。

    -Bryan

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

    尊敬的 Bryan:

     是的、回答正确。 非常感谢您的贡献。 我们错误地 选择 CPHA = 1边沿、这意味着控制器在上升沿捕获数据。  对于 STM32控制器设置中的误解、我们深表歉意。 实际上 CPHA = 2是正确的、这意味着 控制器在 下降 沿捕获数据。 完成此设置后、我们确认 STM 与 ADS1248之间的握手已完成。

           我还有一个疑问、如果我使用差分模式、在示例中、8个通道将按以下 (0、1)、(2、3)、(4、5)、(6、7)进行配对。 这些对之间是否需要延迟以进行采样?

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

    尊敬的 Narasimman M:

    ADS1248具有完全灵活的多路复用器、因此您不必为差分测量选择相邻的多路复用器对。 我复制了下面的寄存器映射来演示这一点。 例如、您可以选择 MUXP = AIN3和 MUXN = AIN7、反之亦然、或者任何其他可能的组合

    切换多路复用通道时、可能需要添加延迟以实现输入信号的模拟稳定。 您必须根据系统设计确定延迟程度。

    几年前、我们发布了 ADS124S08、这是 ADS1248的下一代产品。 ADS124S08具有内置的可编程延迟特性、能够自动等待选定的延迟时间、然后再开始转换。 如果可能、我会将 ADS124S08用于此项目、但肯定适用于新项目

    -Bryan