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.

[参考译文] TMS320F28377S:ADC 校准修整寄存器

Guru**** 2466550 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1458817/tms320f28377s-adc-calibration-trim-registers

器件型号:TMS320F28377S
Thread 中讨论的其他器件:C2000WARE

工具与软件:

ADC 修整寄存器(ADCINLTRIM1至 ADCINLTRIM6 )在 TMS320F2837xs 微控制器技术参考手册中被描述为 ADC 线性修整位0 - 191 。  

在 C2000Ware AdcSetMode()(参见 BLOW)中、第124行至第128行的注释指出这是一种权变措施。 ADCINLTRIM1、 ADCINLTRIM2、 ADCINLTRIM4和 ADCINLTRIM5的低16位会被忽略。 是否有相关文档?  修整值意味着什么? 修整值如何应用于 ADC 增益?

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

    Lucy、您好!

    修整值用于调整 ADC 的增益、失调电压和线性度、确保 ADC 模块根据数据表中的规格运行。  这些寄存器并不意味着用户可以更改、因为这样做会导致线性问题。

    引导 ROM 负责调用校准函数、因此自动设置修整值、无需任何用户操作。 但是、如果修整因模块复位或因任何原因被更改、用户将需要手动调用校准函数。

    此致、

    Masoud

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

    感谢您的答复。 参考手册中也提到了这个问题。

    但我不确定缺少了什么、当我通过仿真器检查调整寄存器时、它们全部读取为零。  

     在运行  C2000Ware AdcSetMode()后、才会填充这些项目。 对此有什么线索吗?

    谢谢

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

    是的,这些寄存器可以被重置,我们必须再次调用 AdcSetMode()。

    此致、

    Masoud

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

    我没有特意复位这些寄存器。 它们是如何复位的? 或者它们始终通过处理器默认进行复位?

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

    不、它不会自动复位。 在一些示例中、模块可能会在初始化时复位。

    此致、

    Masoud

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

    如果我确实需要调用  AdcSetMode (),那么这将回到我的原始问题,关于12位 ADC 分辨率的权变措施。 我们可以信任该变通办法吗? 有勘误表或描述它的东西。  

    谢谢

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

    请告诉我您是指哪一个示例、我会 在我这边看一下。

    此致、

    Masoud

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

    我不使用任何示例。 只是我注意到 TRIM 寄存器为零、然后我添加了  AdcSetMode()。 您是否能够连接仿真器并检查修整寄存器是否为任何代码的零? 非常感谢。