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.

[参考译文] TMS320F28333:ADCOFFTRIM 寄存器-它的预期值有效范围是多少?

Guru**** 2390755 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/749345/tms320f28333-adcofftrim-register---what-is-a-valid-range-of-expected-values-for-it

器件型号:TMS320F28333

我正在使用 TMS32028335并考虑与板载 ADC 校准相关的软件检查。

阅读数据表和相关注释(如 SPRAAD8A 和 SPRAAS1D)后、我现在了解了校准和增益/偏移校正方法背后的基本原理以及正确配置和校准的 ADC 的预期性能。

但是、我们还有一个与 ADCOFFTRIM 寄存器预期值范围相关的剩余问题-是否可以为正常工作和配置的器件限制合理的值范围? 我们将其视为自检例程的一部分、即超出预期范围的值表示器件内部或影响 ADC 运行的外部组件存在一些故障、但在器件文献中查找此类信息确实很困难

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

    您好!

    已将这一问题通知有关专家。

    请注意、这是美国的感恩节周、大多数 TI 工程师都不在。

    请预计下周初收到延迟的回复。

     

    此致、

    Sudhakar

    ------------------------------------------------------

    如果帖子回答了您的问题、请使用 "验证答案" 按钮进行标记。

    其他有用链接:

    C2000入门     C2000闪存常见问题/常见问题      仿真常见问题解答

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

    卡洛斯、

    没有关于 ADCOFFTRIM 值典型范围的官方指南。  但是,您可以通过读取由 ADC_cal()填充的 ADCOFFTRIM 值并根据数据表规格期望用户调整值在+/- 15 LSB 以内来推断完整性检查范围:

    Tommy

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

    嗨、Tommy、

    用户调整是指 ADCOFFTRIM 寄存器中的初始值、对吧?

    然后、写入 ADCOFFTRIM 寄存器的最终值为+-15lsb

    引用 此处定义的进程

    谢谢

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

    我对原始问题的理解是、用户/开发人员将在运行时在系统中执行他们自己的 ADC 偏移调整。 User Trim 将是其自定义运行时间测量的修整值。 初始修整值在制造过程中确定并由引导 ROM 填充。

    根据数据表的偏移误差、我希望用户和引导修整彼此在15 LSB 以内。

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

    好的,所以运行时自定义值将在之后,初始值在引导时从 ADC_cal()调用。

    然后只需要指向 ADC_cal()或在运行时调用它。 自定义用户修整值。

    那么,+-15LSB 不仅仅是用于从 ROM 引导时,请参阅数据表中偏移误差表后的注释3? 如果在运行时被绕过和刚调用、它是否仍然适用?

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

    Calum、

    我不关注您的问题。 让我退一步澄清问题。

    偏移校准的本质是使用 ADC 测量 ADCLO、并计算校正数字值、当添加到 ADCLO 转换结果中时、该数字值会产生0。 当它被写入 ADCOFFTRIM 寄存器时、纠正值有效。

    偏移校准序列在制造环境中执行并存储到 OTP 中、在这里可以通过执行 ADC_cal()来访问它并将其写入 ADCOFFTRIM。 我假设我们将其称为"初始"修整。

    但是、当在最终系统中使用 ADC 所用的相同硬件和软件条件下执行偏移校准时、精度最高。 这就是为什么使用 ADC_cal()中的 ADCOFFTRIM 值时数据表具有+/-15 LSB 偏移误差(而不是0 LSB)的原因。

    记录了偏移校准过程、以便用户可以在自己的系统上执行序列、从而实现优于+/-15 LSB 的精度。 我假设我们将其称为"用户"修整。 只有一个 ADCOFFTRIM 寄存器、因此用户修整在实现时将覆盖初始修整。

    我理解最初的帖子、说用户调整将在系统中计算、并且存在一个问题、即他们是否能够健全地检查用户调整值。 我的建议是 ADC_cal()初始修整应导致用户系统中的偏移误差+/-15 LSB (或更低)。 因此、更精确的用户修整(这将导致接近零的偏移误差)也应在初始修整的+/-15LSB 范围内。

    Tommy

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    上次更新已有一段时间。 我假设问题已经解决。 如果情况并非如此,请拒绝此解决方案并回复此主题。 如果此主题已锁定、请制作一个描述问题当前状态的新主题。

    Tommy