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.

[参考译文] ADS1241:自校准

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1208458/ads1241-self-calibration

器件型号:ADS1241

您好、专家!

我们需要您为我们的客户提供帮助、我将在下面发布他们的咨询。

每次自校准(SELFCAL 命令)在偏移校准系数和满量程寄存器中给出了非常不同的值(即使是最高有效字节)。

供参考:

  • ADC 由3.3V 线性稳压器供电。
  • Raspberry PI 通过 SPI 以1MHz 频率控制 ADC。
  • 连接了一个4.9152MHz 晶体和一个1V 基准、
  • POL、!DSYNC、!PDWN、BUFEN 和!RESET 信号都被上拉(每个信号)。
  • ADC 设置为 ACR.单极、ACR.speed=1、ACR.BUFEN=1和 ACR.DR=2、所有其他的默认值(包括 Setup)。

通信是稳定的、未校准值读取接近预期值(在+/-1%的范围内)-尝试校准以获得更好的结果。

此致、

Jonathan

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

    尊敬的 Jonathan Navor:

    您能否解释一下 SELFCAL 命令的含义、它提供了完全不同的值? 您是否认为要运行 SELFCAL、然后从偏移和增益校准寄存器中读取值、再运行 SELFCAL、这时偏移值和增益值与第一个 SELFCAL 命令有很大不同?

    在执行 SELFCAL 命令之后、您要从 ADC 读取哪些十六进制值? 您能否提供您经过多次校准后正在接收的数据的示例

    -Bryan

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

    尊敬的 Jonathan Navor:

    我们看到有一篇文章提供了某些 OCR / FSR 数据。 但是,现在它似乎已被删除。

    因此很明显、如果您按顺序读取偏移和增益校准寄存器、例如 OCR0 (reg 7)--> ocr1 (reg 8)--> ocr2 (reg 9)、实际校准系数是相反的顺序(LSB 到 MSB)。 因此、如果接收到的 OCR 值为0x0B0000、这实际上是一个0x00 0B 的偏移值。 这是一个十进制的非常小的数字、正是您对 ADC 偏移的预期值。

    同样、如果 接收到的 FSR 值为0xEC6555、这实际上是0x55 65 EC 的 FSR 值、这与默认值(0x55 55 59)非常相似

    此外还要注意、即使选择了单极位、OCR 和 FSR 寄存器中的值都将以双极二进制补码格式存储。 ADC 在内部执行转换

    -Bryan

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

    您好、Bryan:

    让我代表客户发帖/回复。 它在下面。

    谢谢您 Bryan。 我首先解释寄存器 MSByte、被 SPI 数据欺骗(使用了相同的函数)。 更正了错误、FSR 在校准后获得的值约为0x555555 (接近默认值)、约为预期值(0xFFFFFF)的三分之一、而 ADC 在输入=Vref 时提供的数据实际上接近0xFFFFFF。 仍然不知道如何获得校准过程的优势...
    此致、
    Jonathan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Jonathan Navor:

    为什么 FSR 的值为0xFFFFFF? 在双极模式下该位为-1、在单极模式下该位为最大代码(16777216)。 期望 FSR 值类似于默认值(0x555559)。 然后、采用实际代码的比率并将其除以默认值(均以十进制表示)、这样得到的值应接近1。 然后、ADC 按此比率缩放 ADC 代码、以计入 ADC 增益误差。

    例如,FSC 寄存器的默认值为0x555559,而客户收到的值之一是 0x5565FA。 这两个值分别为十进制的5592409和5599148。

    如果将这些数字除以、则得到5599148/5592409 = 1.00121。 这是增益比例因子。 换句话说、ADC 转换一个未校准的 ADC 代码、减去 OCR 寄存器中的值、然后将该值乘以增益比例因子、如1.00121。 然后、输出数据是校准后的结果。

    最后、满量程范围从+VREF 扩展到-VREF。 如果您施加等于 VREF 的输入信号、并且处于单极模式、则输出代码应为0xFFFFFF。 因此、接收到的结果是合理的

    -Bryan